diff --git a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java index 0e0f1ac8..aa6e9336 100644 --- a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java +++ b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java @@ -806,13 +806,11 @@ public interface CuMemberTreeMapper extends BaseMapper { * * @param settleTableName 当天结算表 * @param settleTableNameMonthLast 上月最后一天结算表 - * @param cuMemberMonth 当月月业绩表 * @param pkMemberList 查询奖衔会员 * @return */ List listMemberMonthAssess(@Param("settleTableName") String settleTableName, @Param("settleTableNameMonthLast") String settleTableNameMonthLast, - @Param("cuMemberMonth") String cuMemberMonth, @Param("pkMemberList") List pkMemberList); } diff --git a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java index 9a7abe57..60ba6e0d 100644 --- a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java +++ b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java @@ -299,11 +299,10 @@ public interface ICuMemberTreeService extends IService { * * @param settleTableName 当天结算表 * @param settleTableNameMonthLast 上月最后一天结算表 - * @param cuMemberMonth 当月月业绩表 * @param pkMemberList 查询奖衔会员 * @return */ - List listMemberMonthAssess(String settleTableName, String settleTableNameMonthLast, String cuMemberMonth, List pkMemberList); + List listMemberMonthAssess(String settleTableName, String settleTableNameMonthLast, List pkMemberList); /** * 批量根据量奖信息查询会员结算表中的父级血缘数据 diff --git a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java index b66c8de3..34251603 100644 --- a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java +++ b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java @@ -429,14 +429,14 @@ public class CuMemberTreeServiceImpl extends ServiceImpl listMemberMonthAssess(String settleTableName, String settleTableNameMonthLast, String cuMemberMonth, List pkMemberList) { + public List listMemberMonthAssess(String settleTableName, String settleTableNameMonthLast, List pkMemberList) { List cuMemberSettleExtList = new ArrayList<>(); if (CollectionUtil.isEmpty(pkMemberList)) { return cuMemberSettleExtList; } List> listList = cuMemberBonusSettle.handleCutList(pkMemberList, MagicNumberConstants.DELETE_DATA_BATCH_UPDATE_NUM); listList.forEach(list -> - cuMemberSettleExtList.addAll(baseMapper.listMemberMonthAssess(settleTableName, settleTableNameMonthLast, cuMemberMonth, list))); + cuMemberSettleExtList.addAll(baseMapper.listMemberMonthAssess(settleTableName, settleTableNameMonthLast, list))); return cuMemberSettleExtList; } diff --git a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleFirstPurchaseHandle.java b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleFirstPurchaseHandle.java index 7db93405..86eb2f62 100644 --- a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleFirstPurchaseHandle.java +++ b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleFirstPurchaseHandle.java @@ -706,7 +706,7 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { Map cuMemberAssessMap = new HashMap<>(); // TODO new 新逻辑没有复购考核,根据上月结余判断大小区,然后判断本月小区新増业绩来判断拿几代 - // 奖衔会员能拿几代领导奖(key:会员ID,value:拿几代) + // 奖衔会员能拿几代领导奖(key:会员ID,value:奖衔值+上月结余+本月新増) Map cuMemberBonusNumMap = getCoachAwardsMemberMap(settleTableName, settleDateStr, cuMemberSettleExtList); Map bonusIdSettleMap = getMemberExpandBonus(cuMemberSettleExtMap); @@ -1191,7 +1191,7 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { BigDecimal maxIncome = ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getCalAchieve(), gradeExpandRatio); // actualIncome = 业绩 * 等级扩展比例 BigDecimal actualIncome = ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getCalAchieve(), countryExpandRatio); - log.info("首购. maxIncome: {}, actualIncome: {}", maxIncome, actualIncome); + log.info("首购. maxIncome: {}, gradeExpandRatio: {}; actualIncome: {}, countryExpandRatio: {}", maxIncome, gradeExpandRatio, actualIncome, countryExpandRatio); // K值设置 if (riskControlMap.containsKey(cuMemberBonus.getPkMember())) { @@ -1424,6 +1424,36 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { recordDetailVO.setCuMemberBonusDelayDetailList(cuMemberBonusDelayDetailList); } + /** + * 获取奖衔会员各能拿多少代 + * + * @param settleTableName 结算表 + * @param settleDateStr 结算日期 + * @param cuMemberSettleExtList + */ + private Map getCoachAwardsMemberMap(String settleTableName, String settleDateStr, List cuMemberSettleExtList) { + // 奖衔会员能拿几代领导奖(key:会员ID,value:奖衔值+上月结余+本月新増) + Map cuMemberBonusNumMap = new HashMap<>(); + + // 拓展收益血缘上会员ID + List pkAwardsMemberList = cuMemberSettleExtList.stream().map(CuMemberSettleExt::getPkMember).distinct().collect(Collectors.toList()); + + Date settleDate = DateUtils.parseStringToDate(settleDateStr); + // 之前月份的最后一期 + Integer monthLastPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.beforeMonthLastDateStr(settleDate)).getPkId(); + String settleTableNameMonthLast = TableNameConstants.CU_MEMBER_SETTLE + monthLastPeriod; + + // TODO new 有奖衔的会员,本月左右区新増,上月最后一期左右区结余(需要确保上月最后一期日结表存在) + List awardsMemberSettleList = iCuMemberTreeService.listMemberMonthAssess(settleTableName, settleTableNameMonthLast, pkAwardsMemberList); + + if (CollectionUtil.isNotEmpty(awardsMemberSettleList)) { + for (CuMemberSettleExt tmpCuMemberSettleExt : awardsMemberSettleList) { + cuMemberBonusNumMap.put(tmpCuMemberSettleExt.getPkMember(), tmpCuMemberSettleExt); + } + } + return cuMemberBonusNumMap; + } + /** * 处理当天没有奖金的延缓发放 */ @@ -1527,39 +1557,6 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { } } - /** - * 获取奖衔会员各能拿多少代 - * - * @param settleTableName 结算表 - * @param settleDateStr 结算日期 - * @param cuMemberSettleExtList - */ - private Map getCoachAwardsMemberMap(String settleTableName, String settleDateStr, List cuMemberSettleExtList) { - // 奖衔会员能拿几代领导奖(key:会员ID,value:奖衔值) - Map cuMemberBonusNumMap = new HashMap<>(); - - // 拓展收益血缘上会员ID - List pkAwardsMemberList = cuMemberSettleExtList.stream().map(CuMemberSettleExt::getPkMember).distinct().collect(Collectors.toList()); - - Date settleDate = DateUtils.parseStringToDate(settleDateStr); - // 之前月份的最后一期 - Integer monthLastPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.beforeMonthLastDateStr(settleDate)).getPkId(); - String settleTableNameMonthLast = TableNameConstants.CU_MEMBER_SETTLE + monthLastPeriod; - - // 当前月表 - String cuMemberMonth = TableNameConstants.CU_MEMBER_MONTH + DateUtils.getMonth(settleDateStr); - - // TODO new 有奖衔的会员,本月左右区新増,上月最后一期左右区结余(需要确保上月最后一期日结表存在,结算月表存在) - List awardsMemberSettleList = iCuMemberTreeService.listMemberMonthAssess(settleTableName, settleTableNameMonthLast, cuMemberMonth, pkAwardsMemberList); - - if (CollectionUtil.isNotEmpty(awardsMemberSettleList)) { - for (CuMemberSettleExt tmpCuMemberSettleExt : awardsMemberSettleList) { - cuMemberBonusNumMap.put(tmpCuMemberSettleExt.getPkMember(), tmpCuMemberSettleExt); - } - } - return cuMemberBonusNumMap; - } - /** * 获取领导奖实际的奖衔值 * diff --git a/hzs-business/hzs-business-bonus/src/main/resources/mapper/member/achieve/CuMemberTreeMapper.xml b/hzs-business/hzs-business-bonus/src/main/resources/mapper/member/achieve/CuMemberTreeMapper.xml index 3949411e..35fb703a 100644 --- a/hzs-business/hzs-business-bonus/src/main/resources/mapper/member/achieve/CuMemberTreeMapper.xml +++ b/hzs-business/hzs-business-bonus/src/main/resources/mapper/member/achieve/CuMemberTreeMapper.xml @@ -2307,13 +2307,14 @@ order by t.pk_member - + +