From 724ff1ae6160e48825eb8f13f7e2ba044df5da5a Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 19 Jun 2025 17:40:34 +0800 Subject: [PATCH 1/2] =?UTF-8?q?##=20=E5=88=86=E7=BA=A2=E5=A5=96=E8=A1=94?= =?UTF-8?q?=E6=92=A4=E5=8D=95=E5=9B=9E=E9=80=80=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/service/impl/BonusSettleRangeHandle.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 909c7434..ea165d80 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -945,7 +945,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // new 升级奖衔判断: 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getTotalCheck())) { // 累计业绩足够,即可升奖衔 - cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue())); + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMemberRangeExt.getPkAwards())); targetMemberRangeExt.setPkAwards(bdAwards.getPkId()); targetMemberRangeExt.setAwardsValue(bdAwards.getAwardsValue()); targetMemberRangeExt.setAwardsName(bdAwards.getAwardsName()); @@ -1014,7 +1014,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { break; } } - cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue())); + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards())); targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); continue; @@ -1134,7 +1134,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // new 升级奖衔判断为当月累计业绩,累计业绩为团队业绩 + 个人消费业绩 if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getTotalCheck())) { // 累计业绩足够,即可升奖衔 - CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue()); + CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMemberRangeExt.getPkAwards()); cuMemberAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards); targetMemberRangeExt.setPkAwards(bdAwards.getPkId()); targetMemberRangeExt.setAwardsValue(bdAwards.getAwardsValue()); @@ -1205,7 +1205,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { break; } } - CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue()); + CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards()); cuMemberShareAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards); targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); @@ -2177,15 +2177,15 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { return cuMemberAwards; } - private CuMemberAwards getCuMemberRetailAwards(CuMemberRetailRangeExt sourceRangeExt, Integer period, - SaOrderExt saOrderExt, BdAwards bdRangeAwards, Integer awardType) { + private CuMemberAwards getCuMemberRetailAwards(CuMemberRetailRangeExt sourceRangeExt, Integer period, SaOrderExt saOrderExt, + BdAwards bdRangeAwards, Integer awardType, Integer oldLevel) { CuMemberAwards cuMemberAwards = CuMemberAwards.builder() .pkMember(sourceRangeExt.getPkMember()) .period(period) .upType(EUpgradeType.AUTO_UPGRADE.getValue()) .awardType(awardType) // 原等级 - .oldLevel(sourceRangeExt.getPkAwards()) + .oldLevel(null == oldLevel ? sourceRangeExt.getPkAwards() : oldLevel) .newLevel(bdRangeAwards.getPkId()) // 默认不免考 .purchaseStatus(EYesNo.NO.getIntValue()) From 55f5e0523dcf471783b9eabd42a7fa1358edf800 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 20 Jun 2025 17:06:06 +0800 Subject: [PATCH 2/2] =?UTF-8?q?##=20=E5=88=86=E7=BA=A2=E5=A5=96=E8=A1=94?= =?UTF-8?q?=E7=A7=92=E7=BB=93=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java | 5 +++-- .../mapper/bonus/achieve/CuMemberRetailRangeMapper.xml | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index ea165d80..fe457a86 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -962,7 +962,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { BdAwards bdAwards = retailAwardsMap.get(awardsValue); // 先验证累计业绩 if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { - // 验证小区,计算小区业绩(拉取直推会员数据) + // 再验证小区,计算小区业绩(拉取直推会员数据) List cuMemberRangeExtList; if (secondRangeTableName != null) { // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 @@ -992,9 +992,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (bdAwards.getPlaceDeptNum() > 0) { // 验证是否有多个区满足业绩 List cuMemberRetailRangeExtList; + // 非秒结需要查询日结相关数据,秒结表使用上面查出的数据就可以 if (secondRangeTableName != null) { // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); + cuMemberRetailRangeExtList = cuMemberRangeExtList; } else { // 昨日结算表,查询订单会员直推数据 cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index a978f013..b85d2229 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -689,7 +689,7 @@