From 2b7ec842c2b0fff4b872084e828edd5c3f5dbaf5 Mon Sep 17 00:00:00 2001
From: 陶杰 <1378534974@qq.com>
Date: 星期六, 21 九月 2024 22:51:21 +0800
Subject: [PATCH] 1.优惠券-活动优惠券-定时任务-领取时间小于当前时间,自动下架 2.优惠券-优惠券使用记录-定时任务-使用时间小于当前时间,自动过期 3.优惠券-积分优惠券-增加已领取数和未领取数

---
 src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplateUserDTO.java  |    7 +--
 src/main/java/com/mzl/flower/service/coupon/CouponRecordService.java              |    1 
 src/main/java/com/mzl/flower/dto/request/coupon/CreateCouponTemplatePointDTO.java |    7 +--
 src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplatePointVO.java       |   14 +++++++
 src/main/java/com/mzl/flower/service/coupon/CouponTemplateService2.java           |    1 
 src/main/java/com/mzl/flower/schedule/ScheduleService.java                        |   26 +++++++++++++
 src/main/java/com/mzl/flower/service/impl/coupon/CouponRecordServiceImpl.java     |    6 +++
 src/main/java/com/mzl/flower/mapper/coupon/CouponRecordMapperCustom.java          |    2 +
 src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java        |    2 +
 src/main/java/com/mzl/flower/service/impl/coupon/CouponTemplateServiceImpl2.java  |    6 +++
 src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml                     |    3 +
 src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml                   |    3 +
 12 files changed, 68 insertions(+), 10 deletions(-)

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 436ce5c..c840bf8 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
@@ -4,10 +4,7 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotEmpty;
-import javax.validation.constraints.NotNull;
+import javax.validation.constraints.*;
 import java.math.BigDecimal;
 
 /**
@@ -71,7 +68,7 @@
      */
     @ApiModelProperty(value = "优惠券面值")
     @NotNull(message = "优惠券面值不能为空")
-    @Min(value = 1,message = "优惠券面值大于0")
+    @DecimalMin(value = "0.01", inclusive = true,message = "优惠券面值大于0")
     @Max(value = 99999999,message = "优惠券面值不能超过99999999")
     private BigDecimal couponDiscountValue;
 
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 1af6f04..9d94b20 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
@@ -4,10 +4,7 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotEmpty;
-import javax.validation.constraints.NotNull;
+import javax.validation.constraints.*;
 import java.math.BigDecimal;
 import java.util.List;
 
@@ -69,7 +66,7 @@
      */
     @ApiModelProperty(value = "优惠券面值")
     @NotNull(message = "优惠券面值不能为空")
-    @Min(value = 1,message = "优惠券面值大于0")
+    @DecimalMin(value = "0.01", inclusive = true,message = "优惠券面值大于0")
     @Max(value = 99999999,message = "优惠券面值不能超过99999999")
     private BigDecimal couponDiscountValue;
 
diff --git a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplatePointVO.java b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplatePointVO.java
index 1e25aea..340e8ff 100644
--- a/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplatePointVO.java
+++ b/src/main/java/com/mzl/flower/dto/response/coupon/CouponTemplatePointVO.java
@@ -132,4 +132,18 @@
     private LocalDateTime createTime;
 
 
+    /**
+     * 已经领取数
+     */
+    @ApiModelProperty(value = "已经领取数")
+    private Integer getNum;
+
+    /**
+     * 未领取数
+     */
+    @ApiModelProperty(value = "未领取数")
+    private Integer unGetNum;
+
+
+
 }
diff --git a/src/main/java/com/mzl/flower/mapper/coupon/CouponRecordMapperCustom.java b/src/main/java/com/mzl/flower/mapper/coupon/CouponRecordMapperCustom.java
index 2cc46fa..b841917 100644
--- a/src/main/java/com/mzl/flower/mapper/coupon/CouponRecordMapperCustom.java
+++ b/src/main/java/com/mzl/flower/mapper/coupon/CouponRecordMapperCustom.java
@@ -34,4 +34,6 @@
     List<CouponRecordVO> getMineCouponRecordList(@Param("param") QueryMineCouponRecordDTO dto);
 
     void checkCouponExpired(@Param("param") QueryMineCouponRecordDTO dto);
+
+    boolean expireCouponRecordAll();
 }
diff --git a/src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java b/src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java
index f8b8327..66fe43f 100644
--- a/src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java
+++ b/src/main/java/com/mzl/flower/mapper/coupon/CouponTemplateMapperCustom.java
@@ -65,4 +65,6 @@
     CouponTemplateVO getHomeActivityEffectAlert(@Param("param") QueryActivityEffectCouponDTO dto);
 
     void expireHomeActivityCouponTemplate();
+
+    int expireActivityCouponTemplateAll();
 }
diff --git a/src/main/java/com/mzl/flower/schedule/ScheduleService.java b/src/main/java/com/mzl/flower/schedule/ScheduleService.java
index 6130515..109e14c 100644
--- a/src/main/java/com/mzl/flower/schedule/ScheduleService.java
+++ b/src/main/java/com/mzl/flower/schedule/ScheduleService.java
@@ -12,6 +12,7 @@
 import com.mzl.flower.mapper.partner.PartnerMapper;
 import com.mzl.flower.mapper.payment.OrderMapper;
 import com.mzl.flower.service.coupon.CouponRecordService;
+import com.mzl.flower.service.coupon.CouponTemplateService2;
 import com.mzl.flower.service.flower.FlowerCategoryService;
 import com.mzl.flower.service.flower.FlowerService;
 import com.mzl.flower.service.menber.impl.GrowthValueDealService;
@@ -70,6 +71,9 @@
 
     @Autowired
     private MemberGrowthRecordMapper memberGrowthRecordMapper;
+
+    @Autowired
+    private CouponTemplateService2 couponTemplateService2;
 
     @Scheduled(cron = "1 0/30 * * * ?")
     public void calculateAvePrice() {
@@ -240,4 +244,26 @@
     }
 
 
+    @Scheduled(cron = "0 0/5 * * * ?")
+    public void expireActivityCouponTemplateAll() {
+        log.info("优惠券模版过期下架开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+
+        // 下架有所的过期的优惠券
+        couponTemplateService2.expireActivityCouponTemplateAll();
+
+        log.info("优惠券模版过期下架开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+    }
+
+    @Scheduled(cron = "0 0/5 * * * ?")
+    public void expireCouponRecordAll() {
+        log.info("优惠券记录过期开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+
+        // 下架有所的过期的优惠券
+        couponRecordService.expireCouponRecordAll();
+
+        log.info("优惠券记录过期开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+    }
+
+
+
 }
diff --git a/src/main/java/com/mzl/flower/service/coupon/CouponRecordService.java b/src/main/java/com/mzl/flower/service/coupon/CouponRecordService.java
index a416242..8298870 100644
--- a/src/main/java/com/mzl/flower/service/coupon/CouponRecordService.java
+++ b/src/main/java/com/mzl/flower/service/coupon/CouponRecordService.java
@@ -120,4 +120,5 @@
     boolean checkUserCouponExists(String couponId, Long customId);
 
 
+    boolean expireCouponRecordAll();
 }
diff --git a/src/main/java/com/mzl/flower/service/coupon/CouponTemplateService2.java b/src/main/java/com/mzl/flower/service/coupon/CouponTemplateService2.java
index b33de57..766eda0 100644
--- a/src/main/java/com/mzl/flower/service/coupon/CouponTemplateService2.java
+++ b/src/main/java/com/mzl/flower/service/coupon/CouponTemplateService2.java
@@ -100,4 +100,5 @@
      */
     CouponTemplateVO getHomeActivityEffectAlert(QueryActivityEffectCouponDTO dto);
 
+    boolean expireActivityCouponTemplateAll();
 }
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 573ebaf..fe493d1 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
@@ -549,4 +549,10 @@
         ;
         return baseMapper.selectCount(queryWrapper)>0;
     }
+
+    @Override
+    public boolean expireCouponRecordAll() {
+
+        return couponRecordMapperCustom.expireCouponRecordAll();
+    }
 }
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 247093e..6e46180 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
@@ -489,6 +489,12 @@
     }
 
     @Override
+    public boolean expireActivityCouponTemplateAll() {
+
+        return couponTemplateMapperCustom.expireActivityCouponTemplateAll()>0;
+    }
+
+    @Override
     public List<CouponTemplateVO> getActivityEffectList(QueryActivityEffectCouponDTO dto) {
 
         return couponTemplateMapperCustom.getActivityEffectList(dto);
diff --git a/src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml b/src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml
index 7970cda..67159fc 100644
--- a/src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml
+++ b/src/main/resources/mapper/coupon/CouponRecordMapperCustom.xml
@@ -39,6 +39,9 @@
             AND customer_id =  #{param.customerId}
         </if>
     </update>
+    <update id="expireCouponRecordAll">
+        update t_coupon_record  set `status`='expired' where `status`='unused' and effective_end &lt; NOW()
+    </update>
 
     <select id="statisCouponTemplateCount" resultType="java.lang.Integer">
         select IFNULL(count(1),0) as cnt from t_coupon_record where deleted=false and category=#{param.category}
diff --git a/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml b/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml
index 7ce2dbb..cf3918e 100644
--- a/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml
+++ b/src/main/resources/mapper/coupon/CouponTemplateMapperCustom.xml
@@ -59,6 +59,9 @@
     <update id="expireHomeActivityCouponTemplate">
         update t_coupon_template set status='expired'  where  category='activity' and get_type='home' and status='active'
     </update>
+    <update id="expireActivityCouponTemplateAll">
+        update t_coupon_template set status='expired'  where category='activity' and  get_end_date &lt; NOW()
+    </update>
 
     <select id="getCouponTemplatePage" resultType="com.mzl.flower.dto.response.coupon.CouponTemplateVO">
         <include refid="QuerySql2"/>

--
Gitblit v1.9.3