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 +++++++++++- src/main/java/com/mzl/flower/mapper/member/MemberGrowthRecordMapper.java | 4 ++++ src/main/java/com/mzl/flower/constant/Constants.java | 7 +++++-- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/mzl/flower/constant/Constants.java b/src/main/java/com/mzl/flower/constant/Constants.java index bdfa1af..91e75bf 100644 --- a/src/main/java/com/mzl/flower/constant/Constants.java +++ b/src/main/java/com/mzl/flower/constant/Constants.java @@ -556,8 +556,11 @@ } } public enum after_sale_type { - barters("换货"), - returns("退货"), + quality("1.质量问题"), + stockout("2.缺货问题"), + broken("3.断头问题"), + category("4.品类不符"), + grade("5.等级不符"), ; after_sale_type(String desc) { diff --git a/src/main/java/com/mzl/flower/mapper/member/MemberGrowthRecordMapper.java b/src/main/java/com/mzl/flower/mapper/member/MemberGrowthRecordMapper.java index 2d04c6d..d09649d 100644 --- a/src/main/java/com/mzl/flower/mapper/member/MemberGrowthRecordMapper.java +++ b/src/main/java/com/mzl/flower/mapper/member/MemberGrowthRecordMapper.java @@ -11,6 +11,7 @@ import org.apache.ibatis.annotations.Select; import org.springframework.stereotype.Repository; +import java.time.LocalDate; import java.util.List; @@ -32,4 +33,7 @@ List<UserGrowthRecordVO> queryUserPage(@Param("dto") UserMemberRecordQueryDTO dto, Page page); + @Select("SELECT * from t_member_growth_record WHERE user_id = #{userId} and deleted = '0' and record_date = #{localDate} and type= 'reduce' and source = 'downgrading'") + List<MemberGrowthRecordVO> selectDowngradingByUserId(@Param("userId") String userId, LocalDate localDate); + } 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