From 5bb359883bda6f15b6a6937a2c17ac9bbc67ab8e Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期日, 22 九月 2024 17:17:24 +0800
Subject: [PATCH] add:会员成长值规则

---
 src/main/java/com/mzl/flower/schedule/ScheduleService.java |   34 ++++++++++++++++++++++++++++++++--
 1 files changed, 32 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/mzl/flower/schedule/ScheduleService.java b/src/main/java/com/mzl/flower/schedule/ScheduleService.java
index f4b6603..6130515 100644
--- a/src/main/java/com/mzl/flower/schedule/ScheduleService.java
+++ b/src/main/java/com/mzl/flower/schedule/ScheduleService.java
@@ -2,13 +2,16 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.mzl.flower.constant.Constants;
+import com.mzl.flower.dto.response.member.MemberGrowthRecordVO;
 import com.mzl.flower.entity.flower.FlowerCategory;
 import com.mzl.flower.entity.partner.Partner;
 import com.mzl.flower.entity.payment.Order;
 import com.mzl.flower.entity.payment.Transfer;
 import com.mzl.flower.mapper.flower.FlowerCategoryMapper;
+import com.mzl.flower.mapper.member.MemberGrowthRecordMapper;
 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.flower.FlowerCategoryService;
 import com.mzl.flower.service.flower.FlowerService;
 import com.mzl.flower.service.menber.impl.GrowthValueDealService;
@@ -62,7 +65,13 @@
     @Autowired
     private GrowthValueDealService growthValueDealService;
 
-    @Scheduled(cron = "1 0/20 * * * ?")
+    @Autowired
+    private CouponRecordService couponRecordService;
+
+    @Autowired
+    private MemberGrowthRecordMapper memberGrowthRecordMapper;
+
+    @Scheduled(cron = "1 0/30 * * * ?")
     public void calculateAvePrice() {
         log.info("均价计算开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
         List<FlowerCategory> cLs = categoryMapper.selectList(new QueryWrapper<FlowerCategory>()
@@ -200,7 +209,12 @@
         if(!CollectionUtils.isEmpty(orderList)){
             orderList.forEach(o->{
                 try {
-                    growthValueDealService.deductionGrowthValue(o);
+                    LocalDateTime now = LocalDateTime.now();
+                    LocalDate nowDate = now.toLocalDate();
+                    List<MemberGrowthRecordVO> memberGrowthRecordVOS = memberGrowthRecordMapper.selectDowngradingByUserId(o.getCreateBy(), nowDate);
+                    if (CollectionUtils.isEmpty(memberGrowthRecordVOS)) {
+                        growthValueDealService.deductionGrowthValue(o);
+                    }
                 } catch (Exception e) {
                     // 记录错误信息,例如将错误信息写入日志
                     log.info("处理订单 " + o.getId() + " 时出错: " + e.getMessage());
@@ -210,4 +224,20 @@
         log.info("成长值扣除结束:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
     }
 
+
+    @Scheduled(cron = "0 30 0 1 * ?")
+    public void grantVipCouponRecordList() {
+        log.info("会员优惠券开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+        couponRecordService.grantVipCouponRecordList();
+        log.info("会员优惠券结束:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+    }
+
+    @Scheduled(cron = "0 30 0 1 * ?")
+    public void expiredCouponRecordLastMon() {
+        log.info("会员优惠券开始:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+        couponRecordService.expiredCouponRecordLastMon();
+        log.info("会员优惠券结束:" + DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
+    }
+
+
 }

--
Gitblit v1.9.3