Merge branch 'dev' of gitee.com:cabbage_qd/java-base-app into dev

This commit is contained in:
woody 2025-04-21 11:16:40 +08:00
commit 60a68c0268
1 changed files with 39 additions and 19 deletions

View File

@ -797,20 +797,20 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
/** /**
* 根据不同的订单类型计算奖金 * 根据不同的订单类型计算奖金
* *
* @param settleDate 结算日期 * @param settleDate 结算日期
* @param period 期间 * @param period 期间
* @param yesterdayPeriod 昨日期间 * @param yesterdayPeriod 昨日期间
* @param currentSettleTableName 结算日表 * @param settleTableName 结算日表
* @param awardsMap 奖衔 * @param awardsMap 奖衔
* @param gradeMap 等级 * @param gradeMap 等级
* @param bonusConfigDTO 奖金配置 * @param bonusConfigDTO 奖金配置
* @param cuMemberBonusMap 最终的奖金列表 * @param cuMemberBonusMap 最终的奖金列表
* @param cuMemberSettleExtMap 会员结算map * @param cuMemberSettleExtMap 会员结算map
*/ */
private LeXueRangeParam calculateBonusBySaOrderList(String settleDate, Integer period, Integer yesterdayPeriod, String currentSettleTableName, private LeXueRangeParam calculateBonusBySaOrderList(String settleDate, Integer period, Integer yesterdayPeriod, String settleTableName,
List<SaOrderExt> firPurchaseOrderList, List<SaOrderExt> repurchaseOrderList, List<SaOrderExt> mallOrderList, List<SaOrderExt> firPurchaseOrderList, List<SaOrderExt> repurchaseOrderList, List<SaOrderExt> mallOrderList,
Map<String, BdAwards> awardsMap, Map<Integer, BdGrade> gradeMap, BonusConfigDTO bonusConfigDTO, Map<String, BdAwards> awardsMap, Map<Integer, BdGrade> gradeMap, BonusConfigDTO bonusConfigDTO,
Map<Long, CuMemberBonus> cuMemberBonusMap, BonusRecordDetailVO recordDetailVO, Map<Long, CuMemberSettleExt> cuMemberSettleExtMap) { Map<Long, CuMemberBonus> cuMemberBonusMap, BonusRecordDetailVO bonusRecordDetailVO, Map<Long, CuMemberSettleExt> cuMemberSettleExtMap) {
LeXueRangeParam leXueRangeParam = null; LeXueRangeParam leXueRangeParam = null;
Map<Long, CuAwardsControl> cuAwardsControlMap = getCuAwardsControlMap(); Map<Long, CuAwardsControl> cuAwardsControlMap = getCuAwardsControlMap();
Map<Long, CuMemberBonus> weekMemberBonusMap = getWeekMemberBonusMap(settleDate, period); Map<Long, CuMemberBonus> weekMemberBonusMap = getWeekMemberBonusMap(settleDate, period);
@ -834,22 +834,40 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
// 先计算复购在计算首购 // 先计算复购在计算首购
// 计算复购 // 计算复购
if (repurchaseOrderList.size() > 0) { if (repurchaseOrderList.size() > 0) {
leXueRangeParam = calculatePurchaseOrder(riskControlMap, cuMemberSettleExtMap, currentSettleTableName, settleDate, systemConfigMap, bonusConfigDTO, leXueRangeParam = calculatePurchaseOrder(riskControlMap, cuMemberSettleExtMap, settleTableName, settleDate, systemConfigMap, bonusConfigDTO,
repurchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, recordDetailVO, awardsMap, awardsList, cuAwardsControlMap, cuBonusExpandExtMap, rangeDtoMap); repurchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, bonusRecordDetailVO, awardsMap, awardsList, cuAwardsControlMap, cuBonusExpandExtMap, rangeDtoMap);
} }
// 计算首购 // 计算首购
if (firPurchaseOrderList.size() > 0) { if (firPurchaseOrderList.size() > 0) {
calculateFirPurchaseOrder(riskControlMap, cuMemberSettleExtMap, currentSettleTableName, settleDate, systemConfigMap, bonusConfigDTO, calculateFirPurchaseOrder(riskControlMap, cuMemberSettleExtMap, settleTableName, settleDate, systemConfigMap, bonusConfigDTO,
firPurchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, recordDetailVO, awardsMap, awardsList, cuAwardsControlMap, cuBonusExpandExtMap); firPurchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, bonusRecordDetailVO, awardsMap, awardsList, cuAwardsControlMap, cuBonusExpandExtMap);
} }
// 计算商城业绩 // 计算商城业绩
if (mallOrderList.size() > 0) { if (mallOrderList.size() > 0) {
bonusSettleMallHandle.calculateMallBonus(cuMemberSettleExtMap, currentSettleTableName, mallOrderList, bonusConfigDTO); bonusSettleMallHandle.calculateMallBonus(cuMemberSettleExtMap, settleTableName, mallOrderList, bonusConfigDTO);
} }
// 处理拓展延缓发放 // 处理拓展延缓发放
bonusSettleFirstPurchaseHandle.handleDelayExpand(recordDetailVO, cuMemberBonusMap, bonusConfigDTO, cuMemberSettleExtMap, List<CuMemberBonusExpand> delayExpandList = bonusSettleFirstPurchaseHandle.handleDelayExpand(bonusRecordDetailVO, cuMemberBonusMap, bonusConfigDTO, cuMemberSettleExtMap,
period, yesterdayPeriod, currentSettleTableName, gradeMap); period, yesterdayPeriod, settleTableName, gradeMap);
// TODO new 处理拓展延缓发放辅导收益
// // 判断是否有量奖有量奖有辅导奖
// List<CuMemberBonusCoach> cuMemberBonusCoachList = bonusSettleFirstPurchaseHandle.calculateCoachBonus(cuMemberSettleExtMap, settleTableName, settleDate, bonusConfigDTO, Collections.emptyList(),
// delayExpandList, period, cuMemberBonusMap, cuAwardsControlMap, riskControlMap, awardsList, true);
// if (CollectionUtil.isNotEmpty(bonusRecordDetailVO.getCuMemberBonusCoachList())) {
// bonusRecordDetailVO.getCuMemberBonusCoachList().addAll(cuMemberBonusCoachList);
// }
// cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> {
// MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusCoach);
// memberBonusDetailCalVO.setCoachIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getCoachIncome(), cuMemberBonusCoach.getRealIncome()));
// });
// // 辅导收益
// cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> {
// // 收益拨比订单占比在延缓明细里面已经计算过此处可以直接给0
// cuMemberBonusCoach.setIncomeDialRatio(BigDecimal.ZERO);
// cuMemberBonusCoach.setOrderDialRatio(BigDecimal.ZERO);
// });
return leXueRangeParam; return leXueRangeParam;
} }
@ -1052,6 +1070,8 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
cuMemberBonusExpandList, period, cuMemberBonusMap, cuAwardsControlMap, riskControlMap, awardsList, true); cuMemberBonusExpandList, period, cuMemberBonusMap, cuAwardsControlMap, riskControlMap, awardsList, true);
if (CollectionUtil.isNotEmpty(bonusRecordDetailVO.getCuMemberBonusCoachList())) { if (CollectionUtil.isNotEmpty(bonusRecordDetailVO.getCuMemberBonusCoachList())) {
bonusRecordDetailVO.getCuMemberBonusCoachList().addAll(cuMemberBonusCoachList); bonusRecordDetailVO.getCuMemberBonusCoachList().addAll(cuMemberBonusCoachList);
} else {
bonusRecordDetailVO.setCuMemberBonusCoachList(cuMemberBonusCoachList);
} }
//*********************************计算服务奖************************/ //*********************************计算服务奖************************/
@ -1321,6 +1341,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
} }
} }
/** /**
* @Description: 计算订单奖金累计值 * @Description: 计算订单奖金累计值
* @return: void * @return: void
@ -1357,5 +1378,4 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
} }
return memberBonusDetailCalVO; return memberBonusDetailCalVO;
} }
} }