|
|
@@ -322,6 +322,8 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
|
|
|
sysPremiumDetails.setIndustrySector(1);
|
|
|
sysPremiumDetailsMapper.insert(sysPremiumDetails);
|
|
|
}
|
|
|
+ //总费用
|
|
|
+ BigDecimal bigDecimal = insAreaCompany.getJqpremium().add(insAreaCompany.getJypremium()).add(insAreaCompany.getSypremium());
|
|
|
//查询一级合伙人的比例配置
|
|
|
SysRelationPerson sysRelationPerson1 = sysRelationPersonMapper.selectOne(new LambdaQueryWrapper<SysRelationPerson>()
|
|
|
.eq(SysRelationPerson::getAgencyLeaderId, sysAgencyLeader.getUserId())
|
|
|
@@ -330,65 +332,179 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
|
|
|
SysProportionConfig sysProportionConfig = sysProportionConfigMapper.selectOne(new LambdaQueryWrapper<SysProportionConfig>()
|
|
|
.eq(SysProportionConfig::getUserId, sysRelationPerson1.getSuggestId()));
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+ Map<Integer, BigDecimal> map = new HashMap<>();
|
|
|
+ //每级人员所要分的钱+
|
|
|
+ String oneProportion = sysProportionConfig.getOneProportion();
|
|
|
+ if (StringUtils.isNotEmpty(oneProportion)) {
|
|
|
+ BigDecimal bigDecimal1 = bigDecimal.multiply(new BigDecimal(sysProportionConfig.getOneProportion())
|
|
|
+ .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN);
|
|
|
+ map.put(1, bigDecimal1);
|
|
|
+ }else {
|
|
|
+ map.put(1, null);
|
|
|
+ }
|
|
|
+ String twoProportion = sysProportionConfig.getTwoProportion();
|
|
|
+ if (StringUtils.isNotEmpty(twoProportion)) {
|
|
|
+ BigDecimal bigDecimal2 = bigDecimal.multiply(new BigDecimal(sysProportionConfig.getTwoProportion())
|
|
|
+ .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN);
|
|
|
+ map.put(2, bigDecimal2);
|
|
|
+ }else {
|
|
|
+ map.put(2, null);
|
|
|
+ }
|
|
|
+
|
|
|
+ String threeProportion = sysProportionConfig.getThreeProportion();
|
|
|
+ if (StringUtils.isNotEmpty(threeProportion)) {
|
|
|
+
|
|
|
+ BigDecimal bigDecimal3 = bigDecimal.multiply(new BigDecimal(sysProportionConfig.getThreeProportion())
|
|
|
+ .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN);
|
|
|
+ map.put(3, bigDecimal3);
|
|
|
+ }else {
|
|
|
+ map.put(3, null);
|
|
|
+ }
|
|
|
+
|
|
|
+ String fourProportion = sysProportionConfig.getFourProportion();
|
|
|
+ if (StringUtils.isNotEmpty(fourProportion)) {
|
|
|
+
|
|
|
+ BigDecimal bigDecimal4 = bigDecimal.multiply(new BigDecimal(sysProportionConfig.getFourProportion())
|
|
|
+ .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN);
|
|
|
+ map.put(4, bigDecimal4);
|
|
|
+ }else {
|
|
|
+ map.put(4, null);
|
|
|
+ }
|
|
|
+
|
|
|
+ String fiveProportion = sysProportionConfig.getFiveProportion();
|
|
|
+ if (StringUtils.isNotEmpty(fiveProportion)) {
|
|
|
+ BigDecimal bigDecimal5 = bigDecimal.multiply(new BigDecimal(sysProportionConfig.getFiveProportion())
|
|
|
+ .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN);
|
|
|
+ map.put(5, bigDecimal5);
|
|
|
+ }else {
|
|
|
+ map.put(5, null);
|
|
|
+ }
|
|
|
+
|
|
|
+ List<Integer> collect1 = map.keySet().stream().sorted((a, b) -> b - a).collect(Collectors.toList());
|
|
|
//合伙人抽层费用记录
|
|
|
List<SysRelationPerson> sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
|
.eq(SysRelationPerson::getAgencyLeaderId, sysAgencyLeader.getUserId()).eq(SysRelationPerson::getType, 1));
|
|
|
|
|
|
- if (sysRelationPersonList.size()>0) {
|
|
|
- for (SysRelationPerson sysRelationPerson : sysRelationPersonList) {
|
|
|
- SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>()
|
|
|
- .eq(SysPartner::getUserId, sysRelationPerson.getSuggestId()).eq(SysPartner::getDelFlag, 1));
|
|
|
- if (sysPartner == null) continue;
|
|
|
- SysPremiumDetails sysPremiumDetail = new SysPremiumDetails();
|
|
|
- sysPremiumDetail.setUserId(sysPartner.getUserId());
|
|
|
- sysPremiumDetail.setUserName(sysPartner.getUserName());
|
|
|
- sysPremiumDetail.setCompanyId(insAreaCompany.getId());
|
|
|
- sysPremiumDetail.setOrderno(insAreaCompany.getOrderno());
|
|
|
- sysPremiumDetail.setJqpremium(insAreaCompany.getJqpremium());
|
|
|
- sysPremiumDetail.setJypremium(insAreaCompany.getJypremium());
|
|
|
- sysPremiumDetail.setSypremium(insAreaCompany.getSypremium());
|
|
|
- sysPremiumDetail.setSumpremium(insAreaCompany.getJqpremium().add(insAreaCompany.getJypremium()).add(insAreaCompany.getSypremium()));
|
|
|
- sysPremiumDetail.setStatus(0);
|
|
|
- sysPremiumDetail.setType(2);
|
|
|
- sysPremiumDetail.setIssuerId(userId);
|
|
|
- sysPremiumDetail.setIssuerName(insOrders.getUsername());
|
|
|
- sysPremiumDetail.setCreateTime(new Date());
|
|
|
- sysPremiumDetail.setIndustrySector(1);
|
|
|
- int suggestLevel = sysRelationPerson.getSuggestLevel();
|
|
|
- if (suggestLevel == 1) {
|
|
|
- String oneProportion = sysProportionConfig.getOneProportion();
|
|
|
- if (StringUtils.isEmpty(oneProportion)) continue;
|
|
|
- sysPremiumDetail.setProportional(oneProportion);
|
|
|
- sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(oneProportion)
|
|
|
- .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
- }else if (suggestLevel == 2) {
|
|
|
- String twoProportion = sysProportionConfig.getTwoProportion();
|
|
|
- if (StringUtils.isEmpty(twoProportion)) continue;
|
|
|
- sysPremiumDetail.setProportional(twoProportion);
|
|
|
- sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(twoProportion)
|
|
|
- .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
- }else if (suggestLevel == 3) {
|
|
|
- String threeProportion = sysProportionConfig.getThreeProportion();
|
|
|
- if (StringUtils.isEmpty(threeProportion)) continue;
|
|
|
- sysPremiumDetail.setProportional(threeProportion);
|
|
|
- sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(threeProportion)
|
|
|
- .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
- }else if (suggestLevel == 4) {
|
|
|
- String fourProportion = sysProportionConfig.getFourProportion();
|
|
|
- if (StringUtils.isEmpty(fourProportion)) continue;
|
|
|
- sysPremiumDetail.setProportional(sysProportionConfig.getFourProportion());
|
|
|
- sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(sysProportionConfig.getFourProportion())
|
|
|
- .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
- }else if (suggestLevel == 5) {
|
|
|
- String fiveProportion = sysProportionConfig.getFiveProportion();
|
|
|
- if (StringUtils.isEmpty(fiveProportion)) continue;
|
|
|
- sysPremiumDetail.setProportional(sysProportionConfig.getFiveProportion());
|
|
|
- sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(sysProportionConfig.getFiveProportion())
|
|
|
- .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
+ Map<Integer, SysRelationPerson> collect = sysRelationPersonList.stream().collect(Collectors.toMap(SysRelationPerson::getSuggestLevel, x->x));
|
|
|
+
|
|
|
+ for (Integer integer : collect1) {
|
|
|
+ SysPremiumDetails sysPremiumDetail = new SysPremiumDetails();
|
|
|
+ BigDecimal bigDecimal6 = map.get(integer);
|
|
|
+ if(bigDecimal6 == null){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (integer == 1) {
|
|
|
+ sysPremiumDetail.setProportional(oneProportion);
|
|
|
+ }else if (integer == 2) {
|
|
|
+ sysPremiumDetail.setProportional(twoProportion);
|
|
|
+ }else if (integer == 3) {
|
|
|
+ sysPremiumDetail.setProportional(threeProportion);
|
|
|
+ }else if (integer == 4) {
|
|
|
+ sysPremiumDetail.setProportional(fourProportion);
|
|
|
+ }else if (integer == 5) {
|
|
|
+ sysPremiumDetail.setProportional(fiveProportion);
|
|
|
+ }
|
|
|
+ SysRelationPerson sysRelationPerson = collect.get(integer);
|
|
|
+ int c = integer;
|
|
|
+ if (sysRelationPerson == null) {
|
|
|
+
|
|
|
+ for(int a = collect1.indexOf(integer); a < collect1.size(); a++ ){
|
|
|
+ System.out.println(a);
|
|
|
+ Integer integer1 = collect1.get(a);
|
|
|
+
|
|
|
+ sysRelationPerson = collect.get(integer1);
|
|
|
+
|
|
|
+ c = integer1;
|
|
|
+ if (sysRelationPerson != null) {
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
- sysPremiumDetailsMapper.insert(sysPremiumDetail);
|
|
|
+
|
|
|
}
|
|
|
+
|
|
|
+ sysRelationPerson = collect.get(c);
|
|
|
+ SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>()
|
|
|
+ .eq(SysPartner::getUserId, sysRelationPerson.getSuggestId()).eq(SysPartner::getDelFlag, 1));
|
|
|
+
|
|
|
+
|
|
|
+ sysPremiumDetail.setUserId(sysPartner.getUserId());
|
|
|
+ sysPremiumDetail.setUserName(sysPartner.getUserName());
|
|
|
+ sysPremiumDetail.setCompanyId(insAreaCompany.getId());
|
|
|
+ sysPremiumDetail.setOrderno(insAreaCompany.getOrderno());
|
|
|
+ sysPremiumDetail.setJqpremium(insAreaCompany.getJqpremium());
|
|
|
+ sysPremiumDetail.setJypremium(insAreaCompany.getJypremium());
|
|
|
+ sysPremiumDetail.setSypremium(insAreaCompany.getSypremium());
|
|
|
+ sysPremiumDetail.setSumpremium(insAreaCompany.getJqpremium().add(insAreaCompany.getJypremium()).add(insAreaCompany.getSypremium()));
|
|
|
+ sysPremiumDetail.setStatus(0);
|
|
|
+ sysPremiumDetail.setType(2);
|
|
|
+ sysPremiumDetail.setIssuerId(userId);
|
|
|
+ sysPremiumDetail.setIssuerName(insOrders.getUsername());
|
|
|
+ sysPremiumDetail.setCreateTime(new Date());
|
|
|
+ sysPremiumDetail.setIndustrySector(1);
|
|
|
+ sysPremiumDetail.setExtractFee(bigDecimal6);
|
|
|
+
|
|
|
+ sysPremiumDetailsMapper.insert(sysPremiumDetail);
|
|
|
}
|
|
|
+
|
|
|
+// if (sysRelationPersonList.size()>0) {
|
|
|
+// for (SysRelationPerson sysRelationPerson : sysRelationPersonList) {
|
|
|
+// SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>()
|
|
|
+// .eq(SysPartner::getUserId, sysRelationPerson.getSuggestId()).eq(SysPartner::getDelFlag, 1));
|
|
|
+// if (sysPartner == null) continue;
|
|
|
+// SysPremiumDetails sysPremiumDetail = new SysPremiumDetails();
|
|
|
+// sysPremiumDetail.setUserId(sysPartner.getUserId());
|
|
|
+// sysPremiumDetail.setUserName(sysPartner.getUserName());
|
|
|
+// sysPremiumDetail.setCompanyId(insAreaCompany.getId());
|
|
|
+// sysPremiumDetail.setOrderno(insAreaCompany.getOrderno());
|
|
|
+// sysPremiumDetail.setJqpremium(insAreaCompany.getJqpremium());
|
|
|
+// sysPremiumDetail.setJypremium(insAreaCompany.getJypremium());
|
|
|
+// sysPremiumDetail.setSypremium(insAreaCompany.getSypremium());
|
|
|
+// sysPremiumDetail.setSumpremium(insAreaCompany.getJqpremium().add(insAreaCompany.getJypremium()).add(insAreaCompany.getSypremium()));
|
|
|
+// sysPremiumDetail.setStatus(0);
|
|
|
+// sysPremiumDetail.setType(2);
|
|
|
+// sysPremiumDetail.setIssuerId(userId);
|
|
|
+// sysPremiumDetail.setIssuerName(insOrders.getUsername());
|
|
|
+// sysPremiumDetail.setCreateTime(new Date());
|
|
|
+// sysPremiumDetail.setIndustrySector(1);
|
|
|
+// int suggestLevel = sysRelationPerson.getSuggestLevel();
|
|
|
+// if (suggestLevel == 1) {
|
|
|
+// String oneProportion = sysProportionConfig.getOneProportion();
|
|
|
+// if (StringUtils.isEmpty(oneProportion)) continue;
|
|
|
+// sysPremiumDetail.setProportional(oneProportion);
|
|
|
+// sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(oneProportion)
|
|
|
+// .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
+// }else if (suggestLevel == 2) {
|
|
|
+// String twoProportion = sysProportionConfig.getTwoProportion();
|
|
|
+// if (StringUtils.isEmpty(twoProportion)) continue;
|
|
|
+// sysPremiumDetail.setProportional(twoProportion);
|
|
|
+// sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(twoProportion)
|
|
|
+// .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
+// }else if (suggestLevel == 3) {
|
|
|
+// String threeProportion = sysProportionConfig.getThreeProportion();
|
|
|
+// if (StringUtils.isEmpty(threeProportion)) continue;
|
|
|
+// sysPremiumDetail.setProportional(threeProportion);
|
|
|
+// sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(threeProportion)
|
|
|
+// .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
+// }else if (suggestLevel == 4) {
|
|
|
+// String fourProportion = sysProportionConfig.getFourProportion();
|
|
|
+// if (StringUtils.isEmpty(fourProportion)) continue;
|
|
|
+// sysPremiumDetail.setProportional(sysProportionConfig.getFourProportion());
|
|
|
+// sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(sysProportionConfig.getFourProportion())
|
|
|
+// .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
+// }else if (suggestLevel == 5) {
|
|
|
+// String fiveProportion = sysProportionConfig.getFiveProportion();
|
|
|
+// if (StringUtils.isEmpty(fiveProportion)) continue;
|
|
|
+// sysPremiumDetail.setProportional(sysProportionConfig.getFiveProportion());
|
|
|
+// sysPremiumDetail.setExtractFee(sysPremiumDetail.getSumpremium().multiply(new BigDecimal(sysProportionConfig.getFiveProportion())
|
|
|
+// .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN));
|
|
|
+// }
|
|
|
+//
|
|
|
+//
|
|
|
+// }
|
|
|
+// }
|
|
|
}
|
|
|
}
|
|
|
}catch (Exception e){
|