From fffe6675611e2ba6a34f2b8c01be447f63f60c6c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 24 Sep 2025 14:53:29 +0800 Subject: [PATCH] =?UTF-8?q?##=20=E7=9B=B4=E6=8E=A8=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E6=92=A4=E5=8D=95=E5=A4=84=E7=90=86=E7=AD=89=E7=BA=A7=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AcRepurCouponsRuleConfigServiceImpl.java | 89 +++++++++++-------- 1 file changed, 52 insertions(+), 37 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java index 0f216ef3..96e58b72 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java @@ -703,8 +703,6 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl 0) { - startTime = monthFirst; - } - // 当月最后一天 - Date monthLast = DateUtils.getLastDayOfMonth(nowDate); - if (monthLast.compareTo(endTime) < 0) { - endTime = monthLast; - } - List recomOrderList = iAcRecomUpgradeRecordService.listRecomOrder(pkMember, upgradeRuleConfig.getPkRecommendGrade(), upgradeRuleConfig.getRecommendNumber(), startTime, endTime); - // 校验推荐人是否可以升级 - if (CollectionUtil.isEmpty(recomOrderList) - || recomOrderList.size() != upgradeRuleConfig.getRecommendNumber()) { - // 订单撤单后,目前订单不够升级了,需要降级 - CuMember cuMember = CuMember.builder() - .pkId(pkMember) - .pkSettleGrade(recomUpgradeRecord.getPkSettleGrade()) - .build(); - iMemberServiceApi.reduceMemberLevel(cuMember, recomUpgradeRecord.getPkOrderId()); - return; - } - // 足够升级,更新升级记录时间 - SaOrder newOrder = recomOrderList.get(recomOrderList.size() - 1); - iMemberServiceApi.changeMemberLevel(saOrderExt, newOrder); + return; } + // 活动基础配置 + AcBaseConfig baseConfig = iAcBaseConfigService.getById(recomUpgradeRecord.getPkBaseId()); + // 活动基础配置 + AcRecomUpgradeRuleConfig upgradeRuleConfig = iAcRecomUpgradeRuleConfigService.getById(recomUpgradeRecord.getPkRuleId()); + // 查询订单时间范围 + // 默认活动开始时间 + Date startTime = baseConfig.getActStartDate(); + // 默认活动结束时间 + Date endTime = baseConfig.getActEndDate(); + // 当月第一天 + Date monthFirst = DateUtils.getFirstDayOfMonth(nowDate); + if (monthFirst.compareTo(startTime) > 0) { + startTime = monthFirst; + } + // 当月最后一天 + Date monthLast = DateUtils.getLastDayOfMonth(nowDate); + if (monthLast.compareTo(endTime) < 0) { + endTime = monthLast; + } + List recomOrderList = iAcRecomUpgradeRecordService.listRecomOrder(pkMember, upgradeRuleConfig.getPkRecommendGrade(), upgradeRuleConfig.getRecommendNumber(), startTime, endTime); + // 校验推荐人是否可以升级 + if (CollectionUtil.isEmpty(recomOrderList) + || recomOrderList.size() != upgradeRuleConfig.getRecommendNumber()) { + // 订单撤单后,目前订单不够升级了,需要降级 + CuMember cuMember = CuMember.builder() + .pkId(pkMember) + .pkSettleGrade(recomUpgradeRecord.getPkSettleGrade()) + .build(); + iMemberServiceApi.reduceMemberLevel(cuMember, recomUpgradeRecord.getPkOrderId()); + return; + } + + // 足够升级,更新升级记录时间 + SaOrder newOrder = recomOrderList.get(recomOrderList.size() - 1); + + // 封装规则升级记录 + AcRecomUpgradeRecord newUpgradeRecord = AcRecomUpgradeRecord.builder() + .pkBaseId(baseConfig.getPkId()) + .pkRuleId(upgradeRuleConfig.getPkId()) + .pkMember(pkMember) + .pkSettleGrade(recomUpgradeRecord.getPkSettleGrade()) + .pkRecommendGrade(recomUpgradeRecord.getPkRecommendGrade()) + .pkOrderId(newOrder.getPkId()) + .upgradeTime(upgradeTime) + .build(); + newUpgradeRecord.setPkCreator(referenceMember.getPkId()); + newUpgradeRecord.setPkCountry(referenceMember.getPkSettleCountry()); + iAcRecomUpgradeRecordService.save(newUpgradeRecord); + + saOrderExt.setPkId(recomUpgradeRecord.getPkOrderId()); + iMemberServiceApi.changeMemberLevel(saOrderExt, newOrder); } }