From 3f5d62a7b4d20f6c63021361e7a48cab02e6cca3 Mon Sep 17 00:00:00 2001
From: 陶杰 <1378534974@qq.com>
Date: 星期二, 03 九月 2024 15:15:23 +0800
Subject: [PATCH] 1.优惠券相关代码提交
---
src/main/java/com/mzl/flower/entity/coupon/CouponRecordDO.java | 5 --
src/main/java/com/mzl/flower/web/v2/coupon/CouponRecordController.java | 7 +++
src/main/resources/mapper/coupon/CouponRecordMapper.xml | 1
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplatePointDTO.java | 4 --
src/main/java/com/mzl/flower/dto/response/coupon/CouponRecordResultVO.java | 7 +++
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java | 1
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplatePointController.java | 1
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateUserDTO.java | 4 --
src/main/java/com/mzl/flower/dto/request/coupon/QueryCouponRecordDTO.java | 3 +
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponRecordAppDTO.java | 21 ++++++++++
src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java | 5 ++
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateActivyController.java | 1
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateAppController.java | 22 ++++++++++-
src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateUserController.java | 1
src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateDTO.java | 7 ---
src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java | 2 +
src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml | 5 ++
17 files changed, 71 insertions(+), 26 deletions(-)
diff --git a/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponRecordAppDTO.java b/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponRecordAppDTO.java
new file mode 100644
index 0000000..e8f6a9d
--- /dev/null
+++ b/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponRecordAppDTO.java
@@ -0,0 +1,21 @@
+package com.mzl.flower.dto.request.coupon;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotEmpty;
+
+@Data
+public class CreateCouponRecordAppDTO {
+
+ /**
+ * 优惠券ID
+ */
+ @ApiModelProperty(value = "优惠券ID")
+ @NotEmpty(message = "优惠券ID不能为空")
+ private String couponId;
+
+ @ApiModelProperty(value = "商户ID",hidden = true)
+ private Long customerId;
+
+}
diff --git a/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateDTO.java b/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateDTO.java
index 972d056..546ea4a 100644
--- a/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateDTO.java
+++ b/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateDTO.java
@@ -2,9 +2,6 @@
import com.fasterxml.jackson.annotation.JsonFormat;
-import com.mzl.flower.base.BaseAutoEntity;
-import com.mzl.flower.base.BaseEntity;
-import com.mzl.flower.base.annotation.DictTrans;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
@@ -13,7 +10,6 @@
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;
-import java.util.List;
@Data
public class CreateCouponTemplateDTO {
@@ -139,9 +135,6 @@
@NotNull(message = "每人限领不能为空")
private Integer getLimit;
-
- @ApiModelProperty(value = "领取后有效类型名称")
- private String usageTimeTypeName;
}
diff --git a/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplatePointDTO.java b/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplatePointDTO.java
index 975ff1a..94472c3 100644
--- a/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplatePointDTO.java
+++ b/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplatePointDTO.java
@@ -87,8 +87,4 @@
- @ApiModelProperty(value = "领取后有效类型名称")
- private String usageTimeTypeName;
-
-
}
diff --git a/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateUserDTO.java b/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateUserDTO.java
index 6f428ff..5d34ca0 100644
--- a/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateUserDTO.java
+++ b/src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateUserDTO.java
@@ -74,8 +74,4 @@
@NotNull(message = "指定的用户列表id不能为空")
private List<Long> pointCostomIdList;
-
- @ApiModelProperty(value = "领取后有效类型名称")
- private String usageTimeTypeName;
-
}
diff --git a/src/main/java/com/mzl/flower/dto/request/coupon/QueryCouponRecordDTO.java b/src/main/java/com/mzl/flower/dto/request/coupon/QueryCouponRecordDTO.java
index 817f790..f745ccc 100644
--- a/src/main/java/com/mzl/flower/dto/request/coupon/QueryCouponRecordDTO.java
+++ b/src/main/java/com/mzl/flower/dto/request/coupon/QueryCouponRecordDTO.java
@@ -35,4 +35,7 @@
@ApiModelProperty(value = "领取用户类型-全部用户,指定用户")
private String getUserType;
+ @ApiModelProperty(value = "优惠券模版ID")
+ private String couponId;
+
}
diff --git a/src/main/java/com/mzl/flower/dto/response/coupon/CouponRecordResultVO.java b/src/main/java/com/mzl/flower/dto/response/coupon/CouponRecordResultVO.java
index 6584d80..13e5857 100644
--- a/src/main/java/com/mzl/flower/dto/response/coupon/CouponRecordResultVO.java
+++ b/src/main/java/com/mzl/flower/dto/response/coupon/CouponRecordResultVO.java
@@ -3,7 +3,6 @@
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mzl.flower.base.AbstractTransDTO;
import com.mzl.flower.base.annotation.DictTrans;
-import com.mzl.flower.entity.coupon.CouponTemplateDO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
@@ -125,5 +124,11 @@
@ApiModelProperty(value = "订单号")
private String orderNo;
+ /**
+ * 优惠券ID
+ */
+ @ApiModelProperty(value = "优惠券ID")
+ private String couponId;
+
}
diff --git a/src/main/java/com/mzl/flower/entity/coupon/CouponRecordDO.java b/src/main/java/com/mzl/flower/entity/coupon/CouponRecordDO.java
index cfc3594..bc19ba0 100644
--- a/src/main/java/com/mzl/flower/entity/coupon/CouponRecordDO.java
+++ b/src/main/java/com/mzl/flower/entity/coupon/CouponRecordDO.java
@@ -100,11 +100,6 @@
private Integer point;
/**
- * 订单号
- */
- private String orderNo;
-
- /**
* 会员等级
*/
private Integer memberId;
diff --git a/src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java b/src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java
index 18e029a..c3020ed 100644
--- a/src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java
+++ b/src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java
@@ -462,8 +462,11 @@
// 查询订单使用的优惠券
final CouponRecordDO couponRecordDO = getCouponByOrderId(orderId);
// TODO
+ couponRecordDO.setStatus(CouponUsedStatusEnum.UNUSED.getType());
+ couponRecordDO.setUsedTime(null);
+ couponRecordDO.setOrderId(null);
- return false;
+ return baseMapper.updateById(couponRecordDO)>0;
}
@Override
diff --git a/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java b/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java
index a1c8bef..ce2b9af 100644
--- a/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java
+++ b/src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java
@@ -132,6 +132,8 @@
final List<CouponTemplateCustomerDO> couponCustomList = dto.getPointCostomIdList().stream().map(customId -> {
CouponTemplateCustomerDO customReDO = new CouponTemplateCustomerDO();
+ // 解决本地不加ID不报错,线上报错问题
+ customReDO.setId(IdUtil.simpleUUID());
customReDO.setCouponId(couponTemplateDO.getId());
customReDO.setCustomId(customId);
return customReDO;
diff --git a/src/main/java/com/mzl/flower/web/v2/coupon/CouponRecordController.java b/src/main/java/com/mzl/flower/web/v2/coupon/CouponRecordController.java
index e7cdb4f..4c03990 100644
--- a/src/main/java/com/mzl/flower/web/v2/coupon/CouponRecordController.java
+++ b/src/main/java/com/mzl/flower/web/v2/coupon/CouponRecordController.java
@@ -10,11 +10,13 @@
import com.mzl.flower.dto.request.coupon.QueryCouponRecordDTO;
import com.mzl.flower.dto.response.coupon.CouponRecordResultVO;
import com.mzl.flower.dto.response.coupon.CouponRecordVO;
+import com.mzl.flower.dto.response.customer.CustomerDTO;
import com.mzl.flower.entity.coupon.CouponRecordDO;
import com.mzl.flower.entity.coupon.CouponTemplateDO;
import com.mzl.flower.enums.CouponStatusEnum;
import com.mzl.flower.service.coupon.CouponRecordService;
import com.mzl.flower.service.coupon.CouponTemplateService2;
+import com.mzl.flower.service.customer.CustomerService;
import com.mzl.flower.utils.ConverterUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -41,6 +43,8 @@
@Autowired
private CouponTemplateService2 couponTemplateService;
+ private CustomerService customerService;
+
@PostMapping("")
@@ -59,6 +63,9 @@
throw new ValidationException("优惠券已下架");
}
+ // 根据当前获取获取商户的ID
+ final CustomerDTO currentCustomer = customerService.getCurrentCustomer();
+ dto.setCustomerId(currentCustomer.getId());
couponRecordService.createCouponRecord(dto);
return returnData(R.SUCCESS.getCode(), null);
diff --git a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateActivyController.java b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateActivyController.java
index 9b7109e..e14979b 100644
--- a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateActivyController.java
+++ b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateActivyController.java
@@ -78,6 +78,7 @@
}
CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO();
+ BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO);
BeanUtils.copyProperties(dto, couponTemplateBO);
// 设置成积分优惠券
diff --git a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateAppController.java b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateAppController.java
index 7658080..547b8af 100644
--- a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateAppController.java
+++ b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateAppController.java
@@ -7,22 +7,26 @@
import com.mzl.flower.base.ReturnDataDTO;
import com.mzl.flower.config.exception.ValidationException;
import com.mzl.flower.config.security.SecurityUtils;
+import com.mzl.flower.dto.request.coupon.CreateCouponRecordAppDTO;
import com.mzl.flower.dto.request.coupon.CreateCouponRecordDTO;
import com.mzl.flower.dto.request.coupon.QueryActivityEffectCouponDTO;
import com.mzl.flower.dto.request.coupon.QueryMineCouponRecordDTO;
import com.mzl.flower.dto.response.coupon.CouponTemplateAppVO;
import com.mzl.flower.dto.response.coupon.CouponTemplateVO;
+import com.mzl.flower.dto.response.customer.CustomerDTO;
import com.mzl.flower.entity.coupon.CouponTemplateDO;
import com.mzl.flower.enums.CouponCategoryEnum;
import com.mzl.flower.enums.CouponGetTypeEnum;
import com.mzl.flower.enums.CouponStatusEnum;
import com.mzl.flower.enums.CouponUsedStatusEnum;
+import com.mzl.flower.mapper.customer.CustomerMapper;
import com.mzl.flower.service.coupon.CouponRecordService;
import com.mzl.flower.service.coupon.CouponTemplateService2;
import com.mzl.flower.utils.ConverterUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
@@ -44,6 +48,10 @@
@Autowired
CouponRecordService couponRecordService;
+
+
+ @Autowired
+ CustomerMapper customerMapper;
@GetMapping("/home/list")
@ApiOperation(value = "查询-首页弹框", notes = "查询-首页弹框")
@@ -117,7 +125,7 @@
@PostMapping("/receive")
@ApiOperation(value = "优惠券领取", notes = "优惠券领取")
- public ResponseEntity<ReturnDataDTO> create(@Validated @RequestBody CreateCouponRecordDTO dto) {
+ public ResponseEntity<ReturnDataDTO> create(@Validated @RequestBody CreateCouponRecordAppDTO dto) {
final CouponTemplateDO couponTemplateDO = couponTemplateService.getById(dto.getCouponId());
if(null==couponTemplateDO){
@@ -131,8 +139,18 @@
throw new ValidationException("优惠券已下架");
}
+ // 根据当前获取获取商户的ID
+ CustomerDTO currentCustomer = customerMapper.getCurrentCustomer(SecurityUtils.getUserId());
+ if(null==currentCustomer){
+ throw new ValidationException("当前登录的用户记录不存在");
+ }
+ // 设置当前用户为登录用户
+ dto.setCustomerId(currentCustomer.getId());
- couponRecordService.createCouponRecord(dto);
+ CreateCouponRecordDTO dtoTrans=new CreateCouponRecordDTO();
+ BeanUtils.copyProperties(dto,dtoTrans);
+
+ couponRecordService.createCouponRecord(dtoTrans);
return returnData(R.SUCCESS.getCode(), null);
}
diff --git a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplatePointController.java b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplatePointController.java
index 9817a86..50a553a 100644
--- a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplatePointController.java
+++ b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplatePointController.java
@@ -76,6 +76,7 @@
}
CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO();
+ BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO);
BeanUtils.copyProperties(dto, couponTemplateBO);
// 设置成积分优惠券
diff --git a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateUserController.java b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateUserController.java
index 5b9f19d..13d7bd7 100644
--- a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateUserController.java
+++ b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateUserController.java
@@ -94,6 +94,7 @@
}
CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO();
+ BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO);
BeanUtils.copyProperties(dto, couponTemplateBO);
// 设置成指定用户
diff --git a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java
index be32580..762b64a 100644
--- a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java
+++ b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java
@@ -75,6 +75,7 @@
}
CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO();
+ BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO);
BeanUtils.copyProperties(dto, couponTemplateBO);
// 设置成积分优惠券
diff --git a/src/main/resources/mapper/coupon/CouponRecordMapper.xml b/src/main/resources/mapper/coupon/CouponRecordMapper.xml
index d020e58..a5fe497 100644
--- a/src/main/resources/mapper/coupon/CouponRecordMapper.xml
+++ b/src/main/resources/mapper/coupon/CouponRecordMapper.xml
@@ -25,7 +25,6 @@
<result column="coupon_name" property="couponName" />
<result column="point" property="point" />
- <result column="order_no" property="orderNo" />
</resultMap>
diff --git a/src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml b/src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml
index 820cc2d..4b1c2e9 100644
--- a/src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml
+++ b/src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml
@@ -28,7 +28,6 @@
<result column="get_user_type" property="getUserType" />
<result column="point" property="point" />
- <result column="order_no" property="orderNo" />
</resultMap>
<update id="checkCouponExpired">
@@ -116,6 +115,10 @@
AND (t.customerName like concat('%', #{param.keyword},'%')
or t.user_id like concat('%', #{param.keyword},'%') )
</if>
+ <if test="param.couponId != null and param.couponId != ''">
+ and t.coupon_id = #{param.couponId}
+ </if>
+
order by t.create_time desc
</sql>
--
Gitblit v1.9.3