From c0d2e49b872c3a713844581004a83377b8e44b32 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 23 Jun 2025 16:43:49 +0800 Subject: [PATCH] =?UTF-8?q?##=20=E6=9C=88=E5=BA=A6=E5=88=86=E7=BA=A2?= =?UTF-8?q?=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/BonusSettleHandle.java | 1 - .../service/impl/BonusSettleRangeHandle.java | 220 ++++++++++-------- .../service/impl/BonusSettleServiceImpl.java | 2 +- .../impl/CuRegionAssessServiceImpl.java | 16 +- .../achieve/CuMemberRetailRangeMapper.xml | 23 +- .../api/RetailMemberController.java | 1 + .../provider/CommonServiceProvider.java | 14 +- .../core/constant/msg/BonusMsgConstants.java | 34 ++- .../com/hzs/common/core/enums/EAwards.java | 2 + .../hzs/common/core/enums/EBonusItems.java | 2 +- .../com/hzs/common/core/enums/EGrade.java | 1 - .../common/domain/bonus/BdBonusDeduct.java | 5 - .../domain/member/bonus/CuMemberBonus.java | 4 +- .../common/domain/system/config/BdAwards.java | 8 +- 14 files changed, 177 insertions(+), 156 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 644225f5..39792d53 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -905,7 +905,6 @@ public abstract class BonusSettleHandle { setBonusDeduct(bdBonusDeduct, cuMemberBonus, bonusDetail); BigDecimal realIncome = ReflectUtils.invokeGetter(bonusDetail, BonusFieldConstants.REAL_INCOME); cuMemberBonus.setRepurCouponSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRepurCouponSubtotal(), realIncome)); -// cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), realIncome)); } /** 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 83226118..742d5013 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 @@ -1823,7 +1823,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 月订单列表 List totalMonthOrderList = new ArrayList<>(); - // 级差收益 + // 级差收益(月度级差、复购级差) List memberBonusRangeList = new ArrayList<>(); // 分红收益 List memberBonusDetailList = new ArrayList<>(); @@ -2005,101 +2005,125 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } -// // CAR_AWARD_POINTS 福利平均收益 SHARE_INCOME 福利收益 -// // 查询v5 等级 且奖衔>=S4的 -// List memberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByAwards(rangeTableName); -// if (memberRetailRangeExtList.size() > 0) { -// List retailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList); -// Map> parentMemberRangeExtMap = new HashMap<>(); -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeExtList) { -// if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkParent())) { -// parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkParent()).add(cuMemberRetailRangeExt); -// } else { -// List cuMemberRangeExtList = new ArrayList<>(); -// cuMemberRangeExtList.add(cuMemberRetailRangeExt); -// parentMemberRangeExtMap.put(cuMemberRetailRangeExt.getPkParent(), cuMemberRangeExtList); -// } -// } -// // 分类,分为4 5 6 7 8 9 -// List firstAwardsRetailRangeList = new ArrayList<>(); -// BigDecimal benefitAvgRatio = BigDecimal.ZERO; -// BigDecimal benefitShareRatio = BigDecimal.ZERO; -// BigDecimal firstConsumePv = BigDecimal.ZERO; -// BigDecimal secondBenefitAvgRatio = BigDecimal.ZERO; -// BigDecimal secondBenefitShareRatio = BigDecimal.ZERO; -// BigDecimal secondConsumePv = BigDecimal.ZERO; -// List secondAwardsRetailRangeList = new ArrayList<>(); -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { -// if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { -// List rangeExtList = parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); -// // 计算小区 -// BigDecimal bigConsumePv = BigDecimal.ZERO; -// for (CuMemberRetailRangeExt memberRetailRangeExt : rangeExtList) { -// BigDecimal monthConsumePv = ComputeUtil.computeAdd(memberRetailRangeExt.getMonthConsumePv(), memberRetailRangeExt.getTeamMonthPv()); -// if (ComputeUtil.compareGreaterThan(monthConsumePv, bigConsumePv)) { -// bigConsumePv = monthConsumePv; -// } -// } -// cuMemberRetailRangeExt.setSmallAreaConsumePv(ComputeUtil.computeSubtract(cuMemberRetailRangeExt.getTeamMonthPv(), bigConsumePv)); -// } else { -// cuMemberRetailRangeExt.setSmallAreaConsumePv(BigDecimal.ZERO); -// } -// if (cuMemberRetailRangeExt.getShareAwardsValue() >= EAwards.SENIOR_MANAGER.getValue() && -// cuMemberRetailRangeExt.getShareAwardsValue() <= EAwards.HIGH_CHIEF.getValue()) { -// firstAwardsRetailRangeList.add(cuMemberRetailRangeExt); -// benefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); -// benefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); -// firstConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), firstConsumePv); -// } else { -// secondAwardsRetailRangeList.add(cuMemberRetailRangeExt); -// secondBenefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); -// secondBenefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); -// secondConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), secondConsumePv); -// } -// } -// if (firstAwardsRetailRangeList.size() > 0) { -// BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitAvgRatio), BigDecimal.valueOf(firstAwardsRetailRangeList.size())); -// BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitShareRatio); -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : firstAwardsRetailRangeList) { -// if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() || -// EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() || -// EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { -// continue; -// } -// // 验证是否有奖金 -// if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { -// continue; -// } -// memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitAvgRatio, -// benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); -// BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), firstConsumePv); -// CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitShareRatio, -// bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME); -// memberBonusDetailList.add(cuMemberBonusDetail); -// } -// } -// if (secondAwardsRetailRangeList.size() > 0) { -// BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitAvgRatio), BigDecimal.valueOf(secondAwardsRetailRangeList.size())); -// BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitShareRatio); -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : secondAwardsRetailRangeList) { -// if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() || -// EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() || -// EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { -// continue; -// } -// // 验证是否有奖金 -// if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { -// continue; -// } -// memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitAvgRatio, -// benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); -// BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), secondConsumePv); -// CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitShareRatio, -// bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME); -// memberBonusDetailList.add(cuMemberBonusDetail); -// } -// } -// } + // 查询 v5 等级 且 分红奖衔 >=S4 + List memberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByAwards(rangeTableName); + if (memberRetailRangeExtList.size() > 0) { + // 查询月度分红会员的直推 + List retailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList); + // 推荐会员列表(key:推荐人,value:推荐会员列表) + Map> parentMemberRangeExtMap = new HashMap<>(); + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeExtList) { + if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkParent())) { + parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkParent()).add(cuMemberRetailRangeExt); + } else { + List cuMemberRangeExtList = new ArrayList<>(); + cuMemberRangeExtList.add(cuMemberRetailRangeExt); + parentMemberRangeExtMap.put(cuMemberRetailRangeExt.getPkParent(), cuMemberRangeExtList); + } + } + // 奖衔分红分类 + // 4 5 6 级奖衔会员 + List firstAwardsRetailRangeList = new ArrayList<>(); + // 4 5 6 级奖衔累计业绩 + BigDecimal firstConsumePv = BigDecimal.ZERO; + // 4 5 6 月度分红平均 比例 + BigDecimal benefitAvgRatio = BigDecimal.ZERO; + // 4 5 6 月度分红加权 比例 + BigDecimal benefitShareRatio = BigDecimal.ZERO; + + // 7 8 9 级奖衔会员 + List secondAwardsRetailRangeList = new ArrayList<>(); + // 7 8 9 级奖衔累计业绩 + BigDecimal secondConsumePv = BigDecimal.ZERO; + // 7 8 9 月度分红平均 比例 + BigDecimal secondBenefitAvgRatio = BigDecimal.ZERO; + // 7 8 9 月度分红加权 比例 + BigDecimal secondBenefitShareRatio = BigDecimal.ZERO; + + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { + if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { + // 获取会员的推荐数据 + List rangeExtList = parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); + // 计算小区(本人月消费默认为大区) + BigDecimal bigConsumePv = cuMemberRetailRangeExt.getMonthConsumePv(); + for (CuMemberRetailRangeExt memberRetailRangeExt : rangeExtList) { + // 本人消费 + 团队消费 + BigDecimal monthConsumePv = ComputeUtil.computeAdd(memberRetailRangeExt.getMonthConsumePv(), memberRetailRangeExt.getTeamMonthPv()); + if (ComputeUtil.compareGreaterThan(monthConsumePv, bigConsumePv)) { + bigConsumePv = monthConsumePv; + } + } + // 小区业绩 = 本人月团队 + 本人月消费 - 大区业绩 + cuMemberRetailRangeExt.setSmallAreaConsumePv(ComputeUtil.computeSubtract(cuMemberRetailRangeExt.getTeamMonthPv().add(cuMemberRetailRangeExt.getMonthConsumePv()), bigConsumePv)); + } else { + cuMemberRetailRangeExt.setSmallAreaConsumePv(BigDecimal.ZERO); + } + if (cuMemberRetailRangeExt.getShareAwardsValue() >= EAwards.SENIOR_MANAGER.getValue() + && cuMemberRetailRangeExt.getShareAwardsValue() <= EAwards.HIGH_CHIEF.getValue()) { + // 奖衔 4 5 6 级数据处理 + firstAwardsRetailRangeList.add(cuMemberRetailRangeExt); + benefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); + benefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); + firstConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), firstConsumePv); + } else { + // 奖衔 7 8 9 级数据处理 + secondAwardsRetailRangeList.add(cuMemberRetailRangeExt); + secondBenefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); + secondBenefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); + secondConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), secondConsumePv); + } + } + if (firstAwardsRetailRangeList.size() > 0) { + // 月度分红平均收益 = 订单总业绩 乘 分红平均比例 除 奖衔人数 + BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitAvgRatio), BigDecimal.valueOf(firstAwardsRetailRangeList.size())); + // 月度分红加权总收益 = 订单总业绩 乘 分红加权比例 + BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitShareRatio); + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : firstAwardsRetailRangeList) { + if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() + || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() + || EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { + // 非正常状态、停算状态、停止收益,直接跳过 + continue; + } + // 验证是否有奖金 + if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { + continue; + } + // 月度分红 - 平均收益 + memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitAvgRatio, + benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); + // 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩 + BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), firstConsumePv); + // 月度分红 - 加权收益 + memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitShareRatio, + bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME)); + } + } + if (secondAwardsRetailRangeList.size() > 0) { + BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitAvgRatio), BigDecimal.valueOf(secondAwardsRetailRangeList.size())); + BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitShareRatio); + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : secondAwardsRetailRangeList) { + if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() + || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() + || EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { + // 非正常状态、停算状态、停止收益,直接跳过 + continue; + } + // 验证是否有奖金 + if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { + continue; + } + // 月度分红 - 平均收益 + memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitAvgRatio, + benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); + // 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩 + BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), secondConsumePv); + // 月度分红 - 加权收益 + memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitShareRatio, + bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME)); + } + } + } } } if (memberBonusDetailList.size() > 0) { @@ -2120,10 +2144,13 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { private CuMemberBonusDetail packageBenefitIncome(BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap, String month, BigDecimal benefitAvgRatio, BigDecimal benefitAvgIncome, CuMemberRetailRangeExt cuMemberRetailRangeExt, Integer bonusItemsValue, String msg) { + // 获取会员奖金数据 CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberRetailRangeExt.getPkRate()); + SaOrder saOrderExt = SaOrder.builder().pkId(0L).orderAchieve(BigDecimal.ZERO).build(); CuMemberBonusDetail cuMemberBonusDetail = getCuMemberBonusDetail(saOrderExt, cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberBonus); + // 计算比例 cuMemberBonusDetail.setCalValue(benefitAvgRatio); cuMemberBonusDetail.setPretaxIncome(benefitAvgIncome); @@ -2134,6 +2161,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { String remark = String.format(msg, cuMemberBonusDetail.getPretaxIncome(), month); cuMemberBonusDetail.setRemark(remark); } + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus()) { if (bonusItemsValue == EBonusItems.RETAIL_AREA_INCOME.getValue()) { cuMemberBonus.setRetailAreaIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailAreaIncome(), cuMemberBonusDetail.getPretaxIncome())); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index 1693b9bf..16ba3208 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -188,7 +188,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 保存当日计算的奖金 insertCuMemberBonus(settleDate, period, cuMemberBonusMap, recordDetailVO); } catch (Exception e) { - e.printStackTrace(); + log.error("奖金结算异常", e); throw new RuntimeException(e); } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java index f3e22a68..bcf0bb22 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java @@ -144,28 +144,24 @@ public class CuRegionAssessServiceImpl extends ServiceImpl cancelRegionList = new ArrayList<>(); List dueRetailRegionList = baseMapper.queryDueCuMemberRetailRegion(startDate, endDate); - if(dueRetailRegionList.size() > 0) { + if (dueRetailRegionList.size() > 0) { Date assessDate = DateUtils.currentMonthFirstDate(startDate); // 查询期初日期 beforeMonthFirstDate startDate 考核期间结束日期 Date assMonthStartDate = DateUtils.beforeMonthFirstDate(5, assessDate); // assessDate assessDate 查询考核记录 - Map regionAssessExtMap = new HashMap<>(); + Map regionAssessExtMap = new HashMap<>(); List cuRegionAssessExtList = baseMapper.queryRegionAssessByDate(dueRetailRegionList, assMonthStartDate, assessDate); cuRegionAssessExtList.forEach(cuRegionAssessExt -> regionAssessExtMap.put(cuRegionAssessExt.getPkMember(), cuRegionAssessExt)); for (CuMemberRetailRegion cuMemberRetailRegion : dueRetailRegionList) { - if(regionAssessExtMap.containsKey(cuMemberRetailRegion.getPkMember())){ + if (regionAssessExtMap.containsKey(cuMemberRetailRegion.getPkMember())) { CuRegionAssessExt cuRegionAssessExt = regionAssessExtMap.get(cuMemberRetailRegion.getPkMember()); - if(cuRegionAssessExt.getPkId() >=3){ + if (cuRegionAssessExt.getPkId() >= 3) { continue; } } 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 5263bdde..7eab484c 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 @@ -494,18 +494,23 @@