From 1e0eca85950e5211555a9c04b1dda84286bfa613 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 11 Sep 2023 16:32:19 +0800
Subject: [PATCH] 优惠卷

---
 src/main/java/cc/mrbird/febs/mall/quartz/WxxcxJob.java               |   20 ++++++++++++++++++++
 src/main/resources/mapper/modules/MallMemberCouponMapper.xml         |    7 +++++++
 src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java |    4 ++++
 3 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java
index 2e73ab9..2a066d0 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java
@@ -3,12 +3,16 @@
 import cc.mrbird.febs.mall.dto.MallMemberCouponDto;
 import cc.mrbird.febs.mall.entity.MallMemberCoupon;
 import cc.mrbird.febs.mall.vo.MallMemberCouponVo;
+import cn.hutool.core.date.DateTime;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 public interface MallMemberCouponMapper extends BaseMapper<MallMemberCoupon> {
 
     IPage<MallMemberCouponVo> selectListInPage(IPage<MallMemberCouponVo> page,  @Param("record") MallMemberCouponDto mallMemberCouponDto);
 
+    List<MallMemberCoupon> selectListByExpireTime(@Param("date")DateTime date);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/quartz/WxxcxJob.java b/src/main/java/cc/mrbird/febs/mall/quartz/WxxcxJob.java
index d731967..0522c4b 100644
--- a/src/main/java/cc/mrbird/febs/mall/quartz/WxxcxJob.java
+++ b/src/main/java/cc/mrbird/febs/mall/quartz/WxxcxJob.java
@@ -4,7 +4,11 @@
 import cc.mrbird.febs.common.utils.HttpCurlUtil;
 import cc.mrbird.febs.common.utils.RedisUtils;
 import cc.mrbird.febs.common.utils.SpringContextHolder;
+import cc.mrbird.febs.mall.entity.MallMemberCoupon;
+import cc.mrbird.febs.mall.mapper.MallMemberCouponMapper;
 import cc.mrbird.febs.pay.util.WechatConfigure;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
@@ -19,6 +23,7 @@
 import javax.annotation.Resource;
 import java.io.IOException;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 @Slf4j
@@ -30,6 +35,8 @@
 
     @Autowired
     private RedisUtils redisUtils;
+    @Autowired
+    private MallMemberCouponMapper mallMemberCouponMapper;
     @Resource
     RestTemplate restTemplate;
 //    @Autowired
@@ -66,4 +73,17 @@
 
     }
 
+    @Scheduled(cron = "0 0 0/1 * * ? ")
+    public void expireCoupon() {
+        List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectListByExpireTime(DateUtil.date());
+        if(CollUtil.isEmpty(mallMemberCoupons)){
+            return;
+        }
+        for(MallMemberCoupon mallMemberCoupon : mallMemberCoupons){
+            mallMemberCoupon.setState(3);
+            mallMemberCouponMapper.updateById(mallMemberCoupon);
+        }
+
+    }
+
 }
diff --git a/src/main/resources/mapper/modules/MallMemberCouponMapper.xml b/src/main/resources/mapper/modules/MallMemberCouponMapper.xml
index 999d7cb..5a87cae 100644
--- a/src/main/resources/mapper/modules/MallMemberCouponMapper.xml
+++ b/src/main/resources/mapper/modules/MallMemberCouponMapper.xml
@@ -22,4 +22,11 @@
         order by a.CREATED_TIME desc
     </select>
 
+    <select id="selectListByExpireTime" resultType="cc.mrbird.febs.mall.entity.MallMemberCoupon">
+        select
+            a.*
+        from mall_member_coupon a
+        where a.expire_time &lt;= #{date}
+    </select>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1