|
@@ -1,10 +1,15 @@
|
|
|
package com.ydtech.modules.fnc.service.impl;
|
|
package com.ydtech.modules.fnc.service.impl;
|
|
|
|
|
|
|
|
import cn.dev33.satoken.stp.StpUtil;
|
|
import cn.dev33.satoken.stp.StpUtil;
|
|
|
|
|
+import cn.hutool.core.util.NumberUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.ydtech.modules.admin.model.SysDept;
|
|
import com.ydtech.modules.admin.model.SysDept;
|
|
|
|
|
+import com.ydtech.modules.admin.model.SysDeptAccountEntity;
|
|
|
import com.ydtech.modules.admin.model.SysUser;
|
|
import com.ydtech.modules.admin.model.SysUser;
|
|
|
|
|
+import com.ydtech.modules.admin.model.po.SysUserAccount;
|
|
|
|
|
+import com.ydtech.modules.admin.service.SysDeptAccountService;
|
|
|
import com.ydtech.modules.admin.service.SysDeptService;
|
|
import com.ydtech.modules.admin.service.SysDeptService;
|
|
|
|
|
+import com.ydtech.modules.admin.service.SysUserAccountService;
|
|
|
import com.ydtech.modules.admin.service.SysUserService;
|
|
import com.ydtech.modules.admin.service.SysUserService;
|
|
|
import com.ydtech.modules.esm.service.EsmUserReferrerService;
|
|
import com.ydtech.modules.esm.service.EsmUserReferrerService;
|
|
|
import com.ydtech.modules.fnc.dao.FncInsAreaCompanyMapper;
|
|
import com.ydtech.modules.fnc.dao.FncInsAreaCompanyMapper;
|
|
@@ -30,6 +35,8 @@ import com.ydtech.modules.protocols.entity.po.InsFeeOrderNew;
|
|
|
import com.ydtech.modules.protocols.service.InsFeeOrderNewService;
|
|
import com.ydtech.modules.protocols.service.InsFeeOrderNewService;
|
|
|
import com.ydtech.utils.DateUtil;
|
|
import com.ydtech.utils.DateUtil;
|
|
|
import com.ydtech.utils.StringUtils;
|
|
import com.ydtech.utils.StringUtils;
|
|
|
|
|
+import org.apache.commons.lang3.ObjectUtils;
|
|
|
|
|
+import org.apache.commons.lang3.math.NumberUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
@@ -68,8 +75,13 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private InsFeeOrderNewService insFeeOrderNewService;
|
|
private InsFeeOrderNewService insFeeOrderNewService;
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private SysUserAccountService sysUserAccountService;
|
|
|
|
|
+
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private SysDeptService sysDeptService;
|
|
private SysDeptService sysDeptService;
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private SysDeptAccountService sysDeptAccountService;
|
|
|
|
|
|
|
|
|
|
|
|
|
public InsFeeAuditServiceImpl(FncInsAreaCompanyMapper insAreaCompanyMapper, InsOrdersMapper insOrdersMapper, InsFeeOrderService insFeeOrderService,InsDeptFeeService insDeptFeeService,EsmUserReferrerService esmUserReferrerService,SysUserService sysUserService,InsCommissionService insCommissionService,InsCompanyFeeService insCompanyFeeService,InsPlyIncomeMapper insPlyIncomeMapper) {
|
|
public InsFeeAuditServiceImpl(FncInsAreaCompanyMapper insAreaCompanyMapper, InsOrdersMapper insOrdersMapper, InsFeeOrderService insFeeOrderService,InsDeptFeeService insDeptFeeService,EsmUserReferrerService esmUserReferrerService,SysUserService sysUserService,InsCommissionService insCommissionService,InsCompanyFeeService insCompanyFeeService,InsPlyIncomeMapper insPlyIncomeMapper) {
|
|
@@ -110,7 +122,8 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
|
|
|
|
|
|
|
|
List<SysDept> teamList = sysDeptService.findTeamList(deptId);
|
|
List<SysDept> teamList = sysDeptService.findTeamList(deptId);
|
|
|
teamList.forEach(sysDept -> {
|
|
teamList.forEach(sysDept -> {
|
|
|
- if(sysDept.getComlevel().equals("1")){
|
|
|
|
|
|
|
+
|
|
|
|
|
+ if(StringUtils.isNotEmpty(sysDept.getComlevel()) && sysDept.getComlevel().equals("1")){
|
|
|
BigDecimal jqDeptPremiumsLevel1 = insFeeOrderNew.getJqDeptPremiumsLevel1();
|
|
BigDecimal jqDeptPremiumsLevel1 = insFeeOrderNew.getJqDeptPremiumsLevel1();
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
@@ -126,6 +139,47 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
|
|
|
saveRetail(order,insFeeOrder,insAreaCompany);
|
|
saveRetail(order,insFeeOrder,insAreaCompany);
|
|
|
//个代费用生成
|
|
//个代费用生成
|
|
|
saveInsCompanyFee(order,insFeeOrder,insAreaCompany);
|
|
saveInsCompanyFee(order,insFeeOrder,insAreaCompany);
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+// 生成 用户账户表 数据
|
|
|
|
|
+ if(StringUtils.isNotEmpty(order.getUserid())){
|
|
|
|
|
+// 用戶賬戶表
|
|
|
|
|
+ SysUserAccount sysUserAccount = new SysUserAccount();
|
|
|
|
|
+// 部門金額表
|
|
|
|
|
+ SysDeptAccountEntity sysDeptAccountEntity = new SysDeptAccountEntity();
|
|
|
|
|
+ sysUserAccount.setUserId(order.getUserid());
|
|
|
|
|
+ if (ObjectUtils.isNotEmpty(insFeeOrderNew) ) {
|
|
|
|
|
+ BigDecimal jqPremium = insFeeOrderNew.getJqSuperviseCostsPremiums(); //交强险保费
|
|
|
|
|
+ BigDecimal syPremium = insFeeOrderNew.getSySuperviseCostsPremiums(); //商业险保费
|
|
|
|
|
+ BigDecimal noPremium = insFeeOrderNew.getNoSuperviseCostsPremiums(); //非车险保费
|
|
|
|
|
+
|
|
|
|
|
+ if(jqPremium==null){
|
|
|
|
|
+ jqPremium= BigDecimal.ZERO;
|
|
|
|
|
+ }
|
|
|
|
|
+ if(syPremium==null){
|
|
|
|
|
+ syPremium= BigDecimal.ZERO;
|
|
|
|
|
+ }
|
|
|
|
|
+ if(noPremium==null){
|
|
|
|
|
+ noPremium= BigDecimal.ZERO;
|
|
|
|
|
+ }
|
|
|
|
|
+// 用戶
|
|
|
|
|
+ sysUserAccount.setHandlingFee(jqPremium);
|
|
|
|
|
+ sysUserAccount.setDocumentary(syPremium);
|
|
|
|
|
+ sysUserAccount.setPromotion(noPremium);
|
|
|
|
|
+ sysUserAccount.setDocumentaryStatus("2"); // 收入
|
|
|
|
|
+ sysUserAccount.setSuborderId(orderNo); // 订单Id
|
|
|
|
|
+// 部门金额
|
|
|
|
|
+ sysDeptAccountEntity.setHandlingFee(jqPremium);
|
|
|
|
|
+ sysDeptAccountEntity.setDocumentary(syPremium);
|
|
|
|
|
+ sysDeptAccountEntity.setPromotion(noPremium);
|
|
|
|
|
+ sysDeptAccountEntity.setDeptId(order.getDeptid());
|
|
|
|
|
+ sysUserAccountService.addOrUpdate(sysUserAccount);
|
|
|
|
|
+ sysDeptAccountService.addOrUpdate(sysDeptAccountEntity);
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -149,24 +203,28 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
|
|
|
insPlyIncome.setPolicyno(plyDto.getJqpolicyno());
|
|
insPlyIncome.setPolicyno(plyDto.getJqpolicyno());
|
|
|
insPlyIncome.setRiskcode("交强");
|
|
insPlyIncome.setRiskcode("交强");
|
|
|
insPlyIncome.setTaxamount(plyDto.getTaxamount());
|
|
insPlyIncome.setTaxamount(plyDto.getTaxamount());
|
|
|
- insPlyIncome.setNoTaxPremium(insFeeOrder.getJqNoTaxPremium());
|
|
|
|
|
- insPlyIncome.setCommissionFeerate(insFeeOrder.getJqSuperviseCostsProportion());
|
|
|
|
|
- insPlyIncome.setOtherFeerate(insFeeOrder.getJqCostsProportion().subtract(insFeeOrder.getJqSuperviseCostsProportion()));
|
|
|
|
|
- insPlyIncome.setCommissionFeevalue(insFeeOrder.getJqSuperviseCostsPremiums());
|
|
|
|
|
- insPlyIncome.setOtherFeevalue(insFeeOrder.getJqCostsPremiums().subtract(insFeeOrder.getJqSuperviseCostsPremiums()));
|
|
|
|
|
- insPlyIncome.setAllFeeValue(insFeeOrder.getJqCostsPremiums());
|
|
|
|
|
|
|
+ if(!ObjectUtils.isEmpty(insFeeOrder)){
|
|
|
|
|
+ insPlyIncome.setNoTaxPremium(insFeeOrder.getJqNoTaxPremium());
|
|
|
|
|
+ insPlyIncome.setCommissionFeerate(insFeeOrder.getJqSuperviseCostsProportion());
|
|
|
|
|
+ insPlyIncome.setOtherFeerate(insFeeOrder.getJqCostsProportion().subtract(insFeeOrder.getJqSuperviseCostsProportion()));
|
|
|
|
|
+ insPlyIncome.setCommissionFeevalue(insFeeOrder.getJqSuperviseCostsPremiums());
|
|
|
|
|
+ insPlyIncome.setOtherFeevalue(insFeeOrder.getJqCostsPremiums().subtract(insFeeOrder.getJqSuperviseCostsPremiums()));
|
|
|
|
|
+ insPlyIncome.setAllFeeValue(insFeeOrder.getJqCostsPremiums());
|
|
|
|
|
+ }
|
|
|
insPlyIncomeMapper.insert(insPlyIncome);
|
|
insPlyIncomeMapper.insert(insPlyIncome);
|
|
|
}
|
|
}
|
|
|
if(StringUtils.isNotEmpty(plyDto.getSypolicyno())){
|
|
if(StringUtils.isNotEmpty(plyDto.getSypolicyno())){
|
|
|
insPlyIncome.setPolicyno(plyDto.getSypolicyno());
|
|
insPlyIncome.setPolicyno(plyDto.getSypolicyno());
|
|
|
insPlyIncome.setRiskcode("商业");
|
|
insPlyIncome.setRiskcode("商业");
|
|
|
insPlyIncome.setTaxamount(new BigDecimal(0));
|
|
insPlyIncome.setTaxamount(new BigDecimal(0));
|
|
|
- insPlyIncome.setNoTaxPremium(insFeeOrder.getSyNoTaxPremium());
|
|
|
|
|
- insPlyIncome.setCommissionFeerate(insFeeOrder.getSySuperviseCostsProportion());
|
|
|
|
|
- insPlyIncome.setOtherFeerate(insFeeOrder.getSyCostsProportion().subtract(insFeeOrder.getSySuperviseCostsProportion()));
|
|
|
|
|
- insPlyIncome.setCommissionFeevalue(insFeeOrder.getSySuperviseCostsPremiums());
|
|
|
|
|
- insPlyIncome.setOtherFeevalue(insFeeOrder.getSyCostsPremiums().subtract(insFeeOrder.getSySuperviseCostsPremiums()));
|
|
|
|
|
- insPlyIncome.setAllFeeValue(insFeeOrder.getSyCostsPremiums());
|
|
|
|
|
|
|
+ if(!ObjectUtils.isEmpty(insFeeOrder)){
|
|
|
|
|
+ insPlyIncome.setNoTaxPremium(insFeeOrder.getSyNoTaxPremium());
|
|
|
|
|
+ insPlyIncome.setCommissionFeerate(insFeeOrder.getSySuperviseCostsProportion());
|
|
|
|
|
+ insPlyIncome.setOtherFeerate(insFeeOrder.getSyCostsProportion().subtract(insFeeOrder.getSySuperviseCostsProportion()));
|
|
|
|
|
+ insPlyIncome.setCommissionFeevalue(insFeeOrder.getSySuperviseCostsPremiums());
|
|
|
|
|
+ insPlyIncome.setOtherFeevalue(insFeeOrder.getSyCostsPremiums().subtract(insFeeOrder.getSySuperviseCostsPremiums()));
|
|
|
|
|
+ insPlyIncome.setAllFeeValue(insFeeOrder.getSyCostsPremiums());
|
|
|
|
|
+ }
|
|
|
insPlyIncomeMapper.insert(insPlyIncome);
|
|
insPlyIncomeMapper.insert(insPlyIncome);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -180,11 +238,16 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
|
|
|
private void gene_deptfee( InsOrders order, InsFeeOrder insFeeOrder,InsAreaCompany plyDto) throws Exception{
|
|
private void gene_deptfee( InsOrders order, InsFeeOrder insFeeOrder,InsAreaCompany plyDto) throws Exception{
|
|
|
InsDeptFee deptFee = new InsDeptFee();
|
|
InsDeptFee deptFee = new InsDeptFee();
|
|
|
deptFee.setOrderno(order.getOrderno());
|
|
deptFee.setOrderno(order.getOrderno());
|
|
|
- deptFee.setQuoteno(insFeeOrder.getInsOrderNo());
|
|
|
|
|
|
|
+ if(!ObjectUtils.isEmpty(insFeeOrder)){
|
|
|
|
|
+ deptFee.setQuoteno(insFeeOrder.getInsOrderNo());
|
|
|
|
|
+ }
|
|
|
deptFee.setAgreeid(String.valueOf(plyDto.getAgreementId()));
|
|
deptFee.setAgreeid(String.valueOf(plyDto.getAgreementId()));
|
|
|
deptFee.setAuditstatus("1");
|
|
deptFee.setAuditstatus("1");
|
|
|
deptFee.setSettlestatus("0");
|
|
deptFee.setSettlestatus("0");
|
|
|
- deptFee.setSignDate(DateUtil.formatFullTime(plyDto.getInsidePayTime(),DateUtil.FULL_TIME_SPLIT_PATTERN));
|
|
|
|
|
|
|
+ if(plyDto.getInsidePayTime()!=null){
|
|
|
|
|
+ deptFee.setSignDate(DateUtil.formatFullTime(plyDto.getInsidePayTime(),DateUtil.FULL_TIME_SPLIT_PATTERN));
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
deptFee.setInscompany(plyDto.getCompanyId());
|
|
deptFee.setInscompany(plyDto.getCompanyId());
|
|
|
if(StringUtils.isNotEmpty(plyDto.getJqpolicyno())){
|
|
if(StringUtils.isNotEmpty(plyDto.getJqpolicyno())){
|
|
|
deptFee.setPolicyno(plyDto.getJqpolicyno());
|
|
deptFee.setPolicyno(plyDto.getJqpolicyno());
|
|
@@ -202,30 +265,32 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private void geneInsDeptFee(InsOrders order, InsFeeOrder insFeeOrder, InsDeptFee deptFee) {
|
|
private void geneInsDeptFee(InsOrders order, InsFeeOrder insFeeOrder, InsDeptFee deptFee) {
|
|
|
- if (insFeeOrder.getFirstDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
- deptFee.setComcode(order.getDeptid().substring(0, 2)); //99140302M01D01
|
|
|
|
|
- deptFee.setComlevel("一级");
|
|
|
|
|
- insDeptFeeService.insert(deptFee);
|
|
|
|
|
- }
|
|
|
|
|
- if (insFeeOrder.getSecondDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
- deptFee.setComcode(order.getDeptid().substring(0, 4)); //99140302M01D01
|
|
|
|
|
- deptFee.setComlevel("二级");
|
|
|
|
|
- insDeptFeeService.insert(deptFee);
|
|
|
|
|
- }
|
|
|
|
|
- if (insFeeOrder.getThirdDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
- deptFee.setComcode(order.getDeptid().substring(0, 6)); //99140302M01D01
|
|
|
|
|
- deptFee.setComlevel("三级");
|
|
|
|
|
- insDeptFeeService.insert(deptFee);
|
|
|
|
|
- }
|
|
|
|
|
- if (insFeeOrder.getForthDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
- deptFee.setComcode(order.getDeptid().substring(0, 8)); //99140302M01D01
|
|
|
|
|
- deptFee.setComlevel("四级");
|
|
|
|
|
- insDeptFeeService.insert(deptFee);
|
|
|
|
|
- }
|
|
|
|
|
- if (insFeeOrder.getFifthDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
- deptFee.setComcode(order.getDeptid().substring(0, 11)); //99140302M01D01
|
|
|
|
|
- deptFee.setComlevel("五级");
|
|
|
|
|
- insDeptFeeService.insert(deptFee);
|
|
|
|
|
|
|
+ if(!ObjectUtils.isEmpty(insFeeOrder)){
|
|
|
|
|
+ if (insFeeOrder.getFirstDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
+ deptFee.setComcode(order.getDeptid().substring(0, 2)); //99140302M01D01
|
|
|
|
|
+ deptFee.setComlevel("一级");
|
|
|
|
|
+ insDeptFeeService.insert(deptFee);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (insFeeOrder.getSecondDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
+ deptFee.setComcode(order.getDeptid().substring(0, 4)); //99140302M01D01
|
|
|
|
|
+ deptFee.setComlevel("二级");
|
|
|
|
|
+ insDeptFeeService.insert(deptFee);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (insFeeOrder.getThirdDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
+ deptFee.setComcode(order.getDeptid().substring(0, 6)); //99140302M01D01
|
|
|
|
|
+ deptFee.setComlevel("三级");
|
|
|
|
|
+ insDeptFeeService.insert(deptFee);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (insFeeOrder.getForthDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
+ deptFee.setComcode(order.getDeptid().substring(0, 8)); //99140302M01D01
|
|
|
|
|
+ deptFee.setComlevel("四级");
|
|
|
|
|
+ insDeptFeeService.insert(deptFee);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (insFeeOrder.getFifthDeptPremiums().doubleValue() > 0) {
|
|
|
|
|
+ deptFee.setComcode(order.getDeptid().substring(0, 11)); //99140302M01D01
|
|
|
|
|
+ deptFee.setComlevel("五级");
|
|
|
|
|
+ insDeptFeeService.insert(deptFee);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -376,37 +441,41 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
|
|
|
insCompanyFee.setSettletype("B");
|
|
insCompanyFee.setSettletype("B");
|
|
|
insCompanyFee.setSettlestatus("0");
|
|
insCompanyFee.setSettlestatus("0");
|
|
|
insCompanyFee.setCreatetime(DateUtil.getDateFormat(new Date(),DateUtil.FULL_TIME_SPLIT_PATTERN));
|
|
insCompanyFee.setCreatetime(DateUtil.getDateFormat(new Date(),DateUtil.FULL_TIME_SPLIT_PATTERN));
|
|
|
- insCompanyFee.setSignDate(DateUtil.formatFullTime(plyDto.getInsidePayTime(),DateUtil.FULL_TIME_SPLIT_PATTERN));
|
|
|
|
|
- BigDecimal dept_rate=insFeeOrder.getFirstDeptProportion()
|
|
|
|
|
- .add(insFeeOrder.getSecondDeptProportion())
|
|
|
|
|
- .add(insFeeOrder.getThirdDeptProportion())
|
|
|
|
|
- .add(insFeeOrder.getForthDeptProportion())
|
|
|
|
|
- .add(insFeeOrder.getFifthDeptProportion());
|
|
|
|
|
- BigDecimal retail_rate=insFeeOrder.getFirstRetailProportion()
|
|
|
|
|
- .add(insFeeOrder.getSecondRetailProportion())
|
|
|
|
|
- .add(insFeeOrder.getThirdRetailProportion());
|
|
|
|
|
- if(StringUtils.isNotEmpty(plyDto.getJqpolicyno())){
|
|
|
|
|
- insCompanyFee.setPolicyno(plyDto.getJqpolicyno());
|
|
|
|
|
- insCompanyFee.setRiskcode("交强");
|
|
|
|
|
- //交强费用比例=交强险费用比例-五级机构管理费比例-三级分销比例
|
|
|
|
|
- insCompanyFee.setFeerate(insFeeOrder.getJqCostsProportion().subtract(dept_rate).subtract(retail_rate).doubleValue());
|
|
|
|
|
- insCompanyFee.setFeeamount(insFeeOrder.getJqNoTaxPremium().multiply(insFeeOrder.getJqCostsProportion().subtract(dept_rate).subtract(retail_rate)).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue());
|
|
|
|
|
- insCompanyFee.setJqpremium(insFeeOrder.getJqNoTaxPremium().doubleValue());
|
|
|
|
|
- //保存业务员费用
|
|
|
|
|
- insCompanyFeeService.insert(insCompanyFee);
|
|
|
|
|
|
|
+ if(plyDto.getInsidePayTime()!=null){
|
|
|
|
|
+ insCompanyFee.setSignDate(DateUtil.formatFullTime(plyDto.getInsidePayTime(),DateUtil.FULL_TIME_SPLIT_PATTERN));
|
|
|
}
|
|
}
|
|
|
- if(StringUtils.isNotEmpty(plyDto.getSypolicyno())){
|
|
|
|
|
- insCompanyFee.setPolicyno(plyDto.getSypolicyno());
|
|
|
|
|
- insCompanyFee.setRiskcode("商业");
|
|
|
|
|
- insCompanyFee.setFeerate(0);
|
|
|
|
|
- insCompanyFee.setFeeamount(0);
|
|
|
|
|
- insCompanyFee.setJqpremium(0);
|
|
|
|
|
- //商业费用比例=商业险费用比例-五级机构管理费比例-三级分销比例
|
|
|
|
|
- insCompanyFee.setDisrate(insFeeOrder.getSyCostsProportion().subtract(dept_rate).subtract(retail_rate).doubleValue());
|
|
|
|
|
- insCompanyFee.setDisamount(insFeeOrder.getSyNoTaxPremium().multiply(insFeeOrder.getSyCostsProportion().subtract(dept_rate).subtract(retail_rate)).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue());
|
|
|
|
|
- insCompanyFee.setSypremium(insFeeOrder.getSyNoTaxPremium().doubleValue());
|
|
|
|
|
- //保存业务员费用
|
|
|
|
|
- insCompanyFeeService.insert(insCompanyFee);
|
|
|
|
|
|
|
+ if(ObjectUtils.isNotEmpty(insFeeOrder)){
|
|
|
|
|
+ BigDecimal dept_rate=insFeeOrder.getFirstDeptProportion()
|
|
|
|
|
+ .add(insFeeOrder.getSecondDeptProportion())
|
|
|
|
|
+ .add(insFeeOrder.getThirdDeptProportion())
|
|
|
|
|
+ .add(insFeeOrder.getForthDeptProportion())
|
|
|
|
|
+ .add(insFeeOrder.getFifthDeptProportion());
|
|
|
|
|
+ BigDecimal retail_rate=insFeeOrder.getFirstRetailProportion()
|
|
|
|
|
+ .add(insFeeOrder.getSecondRetailProportion())
|
|
|
|
|
+ .add(insFeeOrder.getThirdRetailProportion());
|
|
|
|
|
+ if(StringUtils.isNotEmpty(plyDto.getJqpolicyno())){
|
|
|
|
|
+ insCompanyFee.setPolicyno(plyDto.getJqpolicyno());
|
|
|
|
|
+ insCompanyFee.setRiskcode("交强");
|
|
|
|
|
+ //交强费用比例=交强险费用比例-五级机构管理费比例-三级分销比例
|
|
|
|
|
+ insCompanyFee.setFeerate(insFeeOrder.getJqCostsProportion().subtract(dept_rate).subtract(retail_rate).doubleValue());
|
|
|
|
|
+ insCompanyFee.setFeeamount(insFeeOrder.getJqNoTaxPremium().multiply(insFeeOrder.getJqCostsProportion().subtract(dept_rate).subtract(retail_rate)).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue());
|
|
|
|
|
+ insCompanyFee.setJqpremium(insFeeOrder.getJqNoTaxPremium().doubleValue());
|
|
|
|
|
+ //保存业务员费用
|
|
|
|
|
+ insCompanyFeeService.insert(insCompanyFee);
|
|
|
|
|
+ }
|
|
|
|
|
+ if(StringUtils.isNotEmpty(plyDto.getSypolicyno())){
|
|
|
|
|
+ insCompanyFee.setPolicyno(plyDto.getSypolicyno());
|
|
|
|
|
+ insCompanyFee.setRiskcode("商业");
|
|
|
|
|
+ insCompanyFee.setFeerate(0);
|
|
|
|
|
+ insCompanyFee.setFeeamount(0);
|
|
|
|
|
+ insCompanyFee.setJqpremium(0);
|
|
|
|
|
+ //商业费用比例=商业险费用比例-五级机构管理费比例-三级分销比例
|
|
|
|
|
+ insCompanyFee.setDisrate(insFeeOrder.getSyCostsProportion().subtract(dept_rate).subtract(retail_rate).doubleValue());
|
|
|
|
|
+ insCompanyFee.setDisamount(insFeeOrder.getSyNoTaxPremium().multiply(insFeeOrder.getSyCostsProportion().subtract(dept_rate).subtract(retail_rate)).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue());
|
|
|
|
|
+ insCompanyFee.setSypremium(insFeeOrder.getSyNoTaxPremium().doubleValue());
|
|
|
|
|
+ //保存业务员费用
|
|
|
|
|
+ insCompanyFeeService.insert(insCompanyFee);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
}
|
|
}
|