From 2ffe681346aea0ed43e80bd88c5443333292b8e3 Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期四, 12 九月 2024 18:19:53 +0800
Subject: [PATCH] fix:会员降价逻辑

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

diff --git a/src/main/java/com/mzl/flower/schedule/ScheduleService.java b/src/main/java/com/mzl/flower/schedule/ScheduleService.java
index 22c6210..6130515 100644
--- a/src/main/java/com/mzl/flower/schedule/ScheduleService.java
+++ b/src/main/java/com/mzl/flower/schedule/ScheduleService.java
@@ -2,11 +2,13 @@
 
 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;
@@ -65,6 +67,9 @@
 
     @Autowired
     private CouponRecordService couponRecordService;
+
+    @Autowired
+    private MemberGrowthRecordMapper memberGrowthRecordMapper;
 
     @Scheduled(cron = "1 0/30 * * * ?")
     public void calculateAvePrice() {
@@ -204,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());

--
Gitblit v1.9.3