|
@@ -34,17 +34,14 @@ public class CalculateCommissionUtils {
|
|
|
private static PartnerCommissionService commissionService;
|
|
private static PartnerCommissionService commissionService;
|
|
|
private static PartnerUserMapper partnerUserMapper;
|
|
private static PartnerUserMapper partnerUserMapper;
|
|
|
private static PartnerPremiumDetailsMapper partnerPremiumDetailsMapper;
|
|
private static PartnerPremiumDetailsMapper partnerPremiumDetailsMapper;
|
|
|
- private static PartnerUserService partnerUserService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
|
public void setCommissionService(PartnerCommissionService commissionService,
|
|
public void setCommissionService(PartnerCommissionService commissionService,
|
|
|
PartnerUserMapper partnerUserMapper,
|
|
PartnerUserMapper partnerUserMapper,
|
|
|
- PartnerPremiumDetailsMapper partnerPremiumDetailsMapper,
|
|
|
|
|
- PartnerUserService partnerUserService) {
|
|
|
|
|
|
|
+ PartnerPremiumDetailsMapper partnerPremiumDetailsMapper) {
|
|
|
CalculateCommissionUtils.commissionService = commissionService;
|
|
CalculateCommissionUtils.commissionService = commissionService;
|
|
|
CalculateCommissionUtils.partnerUserMapper = partnerUserMapper;
|
|
CalculateCommissionUtils.partnerUserMapper = partnerUserMapper;
|
|
|
CalculateCommissionUtils.partnerPremiumDetailsMapper = partnerPremiumDetailsMapper;
|
|
CalculateCommissionUtils.partnerPremiumDetailsMapper = partnerPremiumDetailsMapper;
|
|
|
- CalculateCommissionUtils.partnerUserService = partnerUserService;
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@PostConstruct
|
|
@PostConstruct
|
|
@@ -63,15 +60,13 @@ public class CalculateCommissionUtils {
|
|
|
|
|
|
|
|
private static CommissionValues calculateCommonValues(String grade, String userId, PartnerCommissionRules rules,String levelUserId,String type) {
|
|
private static CommissionValues calculateCommonValues(String grade, String userId, PartnerCommissionRules rules,String levelUserId,String type) {
|
|
|
CommissionValidityPeriod period = getCommissionValidityPeriod(rules, userId, grade);
|
|
CommissionValidityPeriod period = getCommissionValidityPeriod(rules, userId, grade);
|
|
|
- Set<String> userIdList;
|
|
|
|
|
- String queryGrade = "";
|
|
|
|
|
|
|
+ Set<String> userIdList = new HashSet<>(0);
|
|
|
if (StringUtils.equals("gzs", type)){
|
|
if (StringUtils.equals("gzs", type)){
|
|
|
- queryGrade = "5";
|
|
|
|
|
|
|
+ userIdList = partnerUserMapper.querySubordinateUserId(levelUserId);
|
|
|
}
|
|
}
|
|
|
if (StringUtils.equals("hh", type)){
|
|
if (StringUtils.equals("hh", type)){
|
|
|
- queryGrade = "4";
|
|
|
|
|
|
|
+ userIdList = partnerUserMapper.querySubordinate(levelUserId);
|
|
|
}
|
|
}
|
|
|
- userIdList = partnerUserMapper.querySubordinateUserId(levelUserId, queryGrade);
|
|
|
|
|
BigDecimal sumPremium = BigDecimal.ZERO;
|
|
BigDecimal sumPremium = BigDecimal.ZERO;
|
|
|
if (CollectionUtil.isNotEmpty(userIdList)) {
|
|
if (CollectionUtil.isNotEmpty(userIdList)) {
|
|
|
QueryWrapper<PartnerPremiumDetails> queryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<PartnerPremiumDetails> queryWrapper = new QueryWrapper<>();
|
|
@@ -90,6 +85,7 @@ public class CalculateCommissionUtils {
|
|
|
if (StringUtils.equals("hh", type)){
|
|
if (StringUtils.equals("hh", type)){
|
|
|
number = partnerUserMapper.selectNumber(levelUserId, "4", period);
|
|
number = partnerUserMapper.selectNumber(levelUserId, "4", period);
|
|
|
}
|
|
}
|
|
|
|
|
+ log.info("用户id{}++{}级用户++出单人的上级用户{}++统计的保单金额{}++统计的邀请人数{}", userId, grade, levelUserId, sumPremium,number);
|
|
|
return new CommissionValues(sumPremium, new BigDecimal(number));
|
|
return new CommissionValues(sumPremium, new BigDecimal(number));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -135,6 +131,7 @@ public class CalculateCommissionUtils {
|
|
|
if (StringUtils.equals("4", grade) || StringUtils.equals("3", grade)){
|
|
if (StringUtils.equals("4", grade) || StringUtils.equals("3", grade)){
|
|
|
hh = ladderCommission(grade, rulesVo.getPartner().getRulesRatioList(), userId, rulesVo.getPartner(),levelUserId,"gzs");
|
|
hh = ladderCommission(grade, rulesVo.getPartner().getRulesRatioList(), userId, rulesVo.getPartner(),levelUserId,"gzs");
|
|
|
}
|
|
}
|
|
|
|
|
+ log.info("用户id:{}++{}级用户++gl:{}++hh:{}", userId, grade,gl, hh);
|
|
|
return calculateProportion(grade,rulesVo,gl,hh);
|
|
return calculateProportion(grade,rulesVo,gl,hh);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -368,9 +365,5 @@ public class CalculateCommissionUtils {
|
|
|
return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant());
|
|
return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- public static Set<String> getUserIdList(String userId) {
|
|
|
|
|
- Set<String> list = new HashSet<>();
|
|
|
|
|
- partnerUserService.getLevelUserId(userId, list);
|
|
|
|
|
- return list;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+
|
|
|
}
|
|
}
|