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())