## 升阶段如果没有下一阶段的点位列表进行补全查询;
This commit is contained in:
		
							parent
							
								
									dab579bf80
								
							
						
					
					
						commit
						36646a55cf
					
				|  | @ -21,6 +21,9 @@ public interface ICuMemberRetailDetailService extends IService<CuMemberRetailDet | |||
|     void listMemberRetailDetail(String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, | ||||
|                                 EBonusStage eBonusStage, EBonusStageStatus eBonusStageStatus, Collection<Long> stageMemberList); | ||||
| 
 | ||||
|     void listMemberRetailDetail(String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, | ||||
|                                 EBonusStage eBonusStage, EBonusStageStatus eBonusStageStatus, Long stageMember); | ||||
| 
 | ||||
|     /** | ||||
|      * 指定会员获取对应的点位数据 | ||||
|      */ | ||||
|  |  | |||
|  | @ -44,6 +44,13 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl<CuMemberRetailD | |||
|         }); | ||||
|     } | ||||
| 
 | ||||
|     @Override | ||||
|     public void listMemberRetailDetail(String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, | ||||
|                                        EBonusStage eBonusStage, EBonusStageStatus eBonusStageStatus, Long stageMember) { | ||||
|         List<CuMemberRetailDetail> tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, Collections.singletonList(stageMember), eBonusStage.getValue(), null != eBonusStageStatus ? eBonusStageStatus.getValue() : null); | ||||
|         packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpList); | ||||
|     } | ||||
| 
 | ||||
|     @Override | ||||
|     public List<CuMemberRetailDetail> listMemberRetailDetailByQuery(String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, | ||||
|                                                                     List<Long> queryMemberList, EBonusStage eBonusStage) { | ||||
|  |  | |||
|  | @ -243,10 +243,12 @@ public abstract class BonusSettleHandle { | |||
|         BigDecimal realIncome = ComputeUtil.computeSubtract(pretaxIncome, incomeTax); | ||||
|         ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_TAX, incomeTax); | ||||
|         ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.REAL_INCOME, realIncome); | ||||
|         // 收益占比 | ||||
|         if (null != orderAmount && null != exchangeRate) { | ||||
|             ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_RATIO, ComputeUtil.computeDivide(realIncome, ComputeUtil.computeDivide(orderAmount, exchangeRate))); | ||||
|         } | ||||
|         // 收益占比没啥用,都给默认0 | ||||
|         ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_RATIO, BigDecimal.ZERO); | ||||
| //        // 收益占比 | ||||
| //        if (null != orderAmount && null != exchangeRate) { | ||||
| //            ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_RATIO, ComputeUtil.computeDivide(realIncome, ComputeUtil.computeDivide(orderAmount, exchangeRate))); | ||||
| //        } | ||||
|         return bdBonusDeduct; | ||||
|     } | ||||
| 
 | ||||
|  |  | |||
|  | @ -1133,10 +1133,17 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { | |||
|                     Integer pointCount2 = targetMember.getPointCount2() + 1; | ||||
|                     targetMember.setPointCount2(pointCount2); | ||||
|                     twoRetailDetail.setStageSort(pointCount2); | ||||
|                     if (pointCount2 == 1) { | ||||
|                         // 二阶段的第一个点位,之前没有过,需要创建二阶段点位列表 | ||||
|                         targetMember.setTwoDetailMap(new LinkedHashMap<>()); | ||||
|                     if (null == targetMember.getTwoDetailMap()) { | ||||
|                         if (pointCount2 == 1) { | ||||
|                             // 二阶段的第一个点位,之前没有过,需要创建二阶段点位列表 | ||||
|                             targetMember.setTwoDetailMap(new LinkedHashMap<>()); | ||||
|                         } else { | ||||
|                             // 二阶段之前有点位,查询血缘会员明细数据 | ||||
|                             iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, | ||||
|                                     EBonusStage.TWO, EBonusStageStatus.NO, targetMember.getPkMember()); | ||||
|                         } | ||||
|                     } | ||||
| 
 | ||||
|                     targetMember.getTwoDetailMap().put(twoRetailDetail.getChildNode(), twoRetailDetail); | ||||
| 
 | ||||
|                     returnRetailDetailList.add(twoRetailDetail); | ||||
|  | @ -1146,9 +1153,15 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { | |||
|                     Integer pointCount3 = targetMember.getPointCount3() + 1; | ||||
|                     targetMember.setPointCount3(pointCount3); | ||||
|                     threeRetailDetail.setStageSort(pointCount3); | ||||
|                     if (pointCount3 == 1) { | ||||
|                         // 三阶段的第一个点位,之前没有过,需要创建三阶段点位列表 | ||||
|                         targetMember.setThreeDetailMap(new LinkedHashMap<>()); | ||||
|                     if (null == targetMember.getThreeDetailMap()) { | ||||
|                         if (pointCount3 == 1) { | ||||
|                             // 三阶段的第一个点位,之前没有过,需要创建三阶段点位列表 | ||||
|                             targetMember.setThreeDetailMap(new LinkedHashMap<>()); | ||||
|                         } else { | ||||
|                             // 三阶段之前有点位,需要查询血缘会员明细数据 | ||||
|                             iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, | ||||
|                                     EBonusStage.THREE, EBonusStageStatus.NO, targetMember.getPkMember()); | ||||
|                         } | ||||
|                     } | ||||
|                     targetMember.getThreeDetailMap().put(threeRetailDetail.getChildNode(), threeRetailDetail); | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue