From a1879137642c537dfd08c782ab5b8eb87e9ace07 Mon Sep 17 00:00:00 2001 From: 陶杰 <1378534974@qq.com> Date: 星期五, 30 八月 2024 17:01:46 +0800 Subject: [PATCH] 1.优惠券app领取入口提交 --- src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateCustomerVO.java | 2 src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateAppVO.java | 108 ++++++++++++++++++++++++++++++++++++ src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateAppController.java | 33 ++++++---- src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java | 2 src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml | 16 +++++ 5 files changed, 147 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateAppVO.java b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateAppVO.java new file mode 100644 index 0000000..866f501 --- /dev/null +++ b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateAppVO.java @@ -0,0 +1,108 @@ +package com.mzl.flower.dto.response.coupon; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.mzl.flower.base.AbstractTransDTO; +import com.mzl.flower.base.annotation.DictTrans; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +@Data +public class CouponTemplateAppVO extends AbstractTransDTO { + + + @ApiModelProperty(value = "ID") + private String id; + + /** + * 优惠券名称 + */ + @ApiModelProperty(value = "优惠券名称") + private String couponName; + + /** + * 优惠券描述(使用规则) + */ + @ApiModelProperty(value = "优惠券描述(使用规则)") + private String couponDescription; + + + /** + * 优惠券类型(COUPON_TYPE)满减和无门槛 + */ + @ApiModelProperty(value = "优惠券类型(COUPON_TYPE) ") + @DictTrans(target = "couponDiscountTypeName",codeType = "COUPON_TYPE") + private String couponDiscountType; + + + /** + * 优惠券面值 折扣值(百分比或金额) + */ + @ApiModelProperty(value = "优惠券面值") + private BigDecimal couponDiscountValue; + + /** + * 使用条件,最小订单金额(可选)=》使用条件 + */ + @ApiModelProperty(value = "使用条件") + private BigDecimal minOrderAmount; + + + /** + * 优惠券状态(COUPON_STATUS) + */ + @ApiModelProperty(value = "优惠券状态(COUPON_STATUS)") + @DictTrans(target = "statusName",codeType = "COUPON_STATUS") + private String status; + + + @ApiModelProperty(value = "使用开始时间") + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") + @DateTimeFormat + private LocalDateTime usageStartDate; + + /** + * 使用结束时间 + */ + @ApiModelProperty(value = "使用结束时间") + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") + @DateTimeFormat + private LocalDateTime usageEndDate; + + + /** + * 优惠券类型名称 COUPON_TYPE)满减和无门槛 + */ + @ApiModelProperty(value = "优惠券类型名称 ") + private String couponDiscountTypeName; + + /** + * 状态名称 + */ + @ApiModelProperty(value = "状态名称") + private String statusName; + + + /** + * 领取开始时间 + */ + @ApiModelProperty(value = "领取开始时间") + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") + @DateTimeFormat + private LocalDateTime getStartDate; + + /** + * 领取结束时间 + */ + @ApiModelProperty(value = "领取结束时间") + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") + @DateTimeFormat + private LocalDateTime getEndDate; + + + + +} diff --git a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateCustomerVO.java b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateCustomerVO.java index 96ba5b4..33622c3 100644 --- a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateCustomerVO.java +++ b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplateCustomerVO.java @@ -8,7 +8,7 @@ public class CouponTemplateCustomerVO extends AbstractTransDTO { @ApiModelProperty("用户id") - private String id; + private Long id; @ApiModelProperty("名称") private String name; 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 2f7632c..69eccb0 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 @@ -92,6 +92,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/CouponTemplateAppController.java b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateAppController.java index 7108d92..a2792a8 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 @@ -6,12 +6,13 @@ import com.mzl.flower.base.R; import com.mzl.flower.base.ReturnDataDTO; import com.mzl.flower.dto.request.coupon.QueryActivityEffectCouponDTO; -import com.mzl.flower.dto.request.coupon.QueryCouponDTO; +import com.mzl.flower.dto.response.coupon.CouponTemplateAppVO; import com.mzl.flower.dto.response.coupon.CouponTemplateVO; import com.mzl.flower.enums.CouponCategoryEnum; import com.mzl.flower.enums.CouponGetTypeEnum; import com.mzl.flower.enums.CouponStatusEnum; 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.springframework.beans.factory.annotation.Autowired; @@ -38,34 +39,40 @@ @GetMapping("/home/list") @ApiOperation(value = "查询-首页弹框", notes = "查询-首页弹框") public ResponseEntity<ReturnDataDTO<Page<CouponTemplateVO>>> homeList(QueryActivityEffectCouponDTO dto) { - // TODO 需要查找到领取时间优惠券的开始时间和结束时间内的优惠券 - // 活动优惠券 dto.setCategory(CouponCategoryEnum.ACTIVITY.getStatus()); // 已经发布 dto.setStatus(CouponStatusEnum.ACTIVE.getStatus()); // 首页弹窗 dto.setGetType(CouponGetTypeEnum.HOME.getType()); - - couponTemplateService.getActivityEffectList(dto); - - return returnData(R.SUCCESS.getCode(),null); + return returnData(R.SUCCESS.getCode(), ConverterUtil.transList(couponTemplateService.getActivityEffectList(dto), CouponTemplateAppVO.class)); } @GetMapping("/activy/list") - @ApiOperation(value = "查询-活动", notes = "查询-活动") + @ApiOperation(value = "查询-活动入口", notes = "查询-活动入口") public ResponseEntity<ReturnDataDTO<Page<CouponTemplateVO>>> activyList(QueryActivityEffectCouponDTO dto) { - // TODO + // 活动优惠券 + dto.setCategory(CouponCategoryEnum.ACTIVITY.getStatus()); + // 已经发布 + dto.setStatus(CouponStatusEnum.ACTIVE.getStatus()); + // 活动入口 + dto.setGetType(CouponGetTypeEnum.ACTIVITY.getType()); + return returnData(R.SUCCESS.getCode(), ConverterUtil.transList(couponTemplateService.getActivityEffectList(dto), CouponTemplateAppVO.class)); - return returnData(R.SUCCESS.getCode(),null); } @GetMapping("/center/list") - @ApiOperation(value = "查询-中心", notes = "查询-中心") + @ApiOperation(value = "查询-领券中心", notes = "查询-领券中心") public ResponseEntity<ReturnDataDTO<Page<CouponTemplateVO>>> centerList(QueryActivityEffectCouponDTO dto) { - // TODO + // 活动优惠券 + dto.setCategory(CouponCategoryEnum.ACTIVITY.getStatus()); + // 已经发布 + dto.setStatus(CouponStatusEnum.ACTIVE.getStatus()); + // 首页弹窗 + dto.setGetType(CouponGetTypeEnum.CENTER.getType()); - return returnData(R.SUCCESS.getCode(),null); + return returnData(R.SUCCESS.getCode(), ConverterUtil.transList(couponTemplateService.getActivityEffectList(dto), CouponTemplateAppVO.class)); + } diff --git a/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml b/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml index 5053646..33fe113 100644 --- a/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml +++ b/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml @@ -72,6 +72,22 @@ <!-- app活动优惠券--> <select id="getActivityEffectList" resultType="com.mzl.flower.dto.response.coupon.CouponTemplateVO"> + SELECT * + FROM t_coupon_template t + WHERE t.deleted = FALSE + AND t.get_start_date <= NOW() + AND NOW() <= t.get_end_date + <if test="param.category != null and param.category != ''"> + AND category = #{param.category} + </if> + <if test="param.status != null and param.status != ''"> + AND status = #{param.status} + </if> + <if test="param.getType != null and param.getType != ''"> + AND t.get_type = #{param.getType} + </if> + ORDER BY t.create_time DESC + </select> <select id="getCouponCustomerList" resultType="com.mzl.flower.dto.response.coupon.CouponTemplateCustomerVO"> -- Gitblit v1.9.3