guoweisong 2 лет назад
Родитель
Сommit
bb1f10ab16

+ 42 - 2
src/main/java/com/ydtech/modules/fnc/service/impl/InsFeeAuditServiceImpl.java

@@ -79,6 +79,8 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
 
         InsOrders order=insOrdersMapper.selectById(orderNo);
         InsFeeOrder insFeeOrder=insFeeOrderService.getByInsOrderNo(insFeeAudit.getInsOrderNo());
+        //bigdecimal为null时设置为0
+        handleBigdecimal(insFeeOrder);
         //生成机构费用
         gene_deptfee( order, insFeeOrder);
         //生成分销费用
@@ -87,6 +89,43 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         saveInsCompanyFee(order,insFeeOrder);
     }
 
+    private void handleBigdecimal(InsFeeOrder insFeeOrder)
+    {
+        insFeeOrder.setJqCostsProportion(insFeeOrder.getJqCostsProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getJqCostsProportion());
+        insFeeOrder.setSyCostsProportion(insFeeOrder.getSyCostsProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getSyCostsProportion());
+        insFeeOrder.setJqCostsPremiums(insFeeOrder.getJqCostsPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getJqCostsPremiums());
+        insFeeOrder.setSyCostsPremiums(insFeeOrder.getSyCostsPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getSyCostsPremiums());
+        insFeeOrder.setJqPremium(insFeeOrder.getJqPremium() ==null ? BigDecimal.ZERO:insFeeOrder.getJqPremium());
+        insFeeOrder.setSyPremium(insFeeOrder.getSyPremium() ==null ? BigDecimal.ZERO:insFeeOrder.getSyPremium());
+        insFeeOrder.setJqNoTaxPremium(insFeeOrder.getJqNoTaxPremium() ==null ? BigDecimal.ZERO:insFeeOrder.getJqNoTaxPremium());
+        insFeeOrder.setSyNoTaxPremium(insFeeOrder.getSyNoTaxPremium() ==null ? BigDecimal.ZERO:insFeeOrder.getSyNoTaxPremium());
+        insFeeOrder.setJqSuperviseCostsProportion(insFeeOrder.getJqSuperviseCostsProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getJqSuperviseCostsProportion());
+        insFeeOrder.setJqSuperviseCostsPremiums(insFeeOrder.getJqSuperviseCostsPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getJqSuperviseCostsPremiums());
+        insFeeOrder.setSySuperviseCostsProportion(insFeeOrder.getSySuperviseCostsProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getSySuperviseCostsProportion());
+        insFeeOrder.setSySuperviseCostsPremiums(insFeeOrder.getSySuperviseCostsPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getSySuperviseCostsPremiums());
+        insFeeOrder.setJqSpilloverProportion(insFeeOrder.getJqSpilloverProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getJqSpilloverProportion());
+        insFeeOrder.setJqSpilloverPremiums(insFeeOrder.getJqSpilloverPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getJqSpilloverPremiums());
+        insFeeOrder.setSySpilloverProportion(insFeeOrder.getSySpilloverProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getSySpilloverProportion());
+        insFeeOrder.setSySpilloverPremiums(insFeeOrder.getSySpilloverPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getSySpilloverPremiums());
+        insFeeOrder.setFirstDeptProportion(insFeeOrder.getFirstDeptProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getFirstDeptProportion());
+        insFeeOrder.setFirstDeptPremiums(insFeeOrder.getFirstDeptPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getFirstDeptPremiums());
+        insFeeOrder.setSecondDeptProportion(insFeeOrder.getSecondDeptProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getSecondDeptProportion());
+        insFeeOrder.setSecondDeptPremiums(insFeeOrder.getSecondDeptPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getSecondDeptPremiums());
+        insFeeOrder.setThirdDeptProportion(insFeeOrder.getThirdDeptProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getThirdDeptProportion());
+        insFeeOrder.setThirdDeptPremiums(insFeeOrder.getThirdDeptPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getThirdDeptPremiums());
+        insFeeOrder.setForthDeptProportion(insFeeOrder.getForthDeptProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getForthDeptProportion());
+        insFeeOrder.setForthDeptPremiums(insFeeOrder.getForthDeptPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getForthDeptPremiums());
+        insFeeOrder.setFifthDeptProportion(insFeeOrder.getFifthDeptProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getFifthDeptProportion());
+        insFeeOrder.setFifthDeptPremiums(insFeeOrder.getFifthDeptPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getFifthDeptPremiums());
+        insFeeOrder.setFirstRetailProportion(insFeeOrder.getFirstRetailProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getFirstRetailProportion());
+        insFeeOrder.setFirstRetailPremiums(insFeeOrder.getFirstRetailPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getFirstRetailPremiums());
+        insFeeOrder.setSecondRetailProportion(insFeeOrder.getSecondRetailProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getSecondRetailProportion());
+        insFeeOrder.setSecondRetailPremiums(insFeeOrder.getSecondRetailPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getSecondRetailPremiums());
+        insFeeOrder.setThirdRetailProportion(insFeeOrder.getThirdRetailProportion() ==null ? BigDecimal.ZERO:insFeeOrder.getThirdRetailProportion());
+        insFeeOrder.setThirdRetailPremiums(insFeeOrder.getThirdRetailPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getThirdRetailPremiums());
+
+    }
+
     /**
      * 生成机构费用
      * @param order
@@ -200,6 +239,7 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         }
     }
 
+   
     /**
      * 生成个代费用
      * @param order
@@ -223,8 +263,8 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         insCompanyFee.setFeerate(insFeeOrder.getJqCostsProportion().subtract(dept_rate).subtract(retail_rate).doubleValue());
         //商业费用比例=商业险费用比例-五级机构管理费比例-三级分销比例
         insCompanyFee.setDisrate(insFeeOrder.getSyCostsProportion().subtract(dept_rate).subtract(retail_rate).doubleValue());
-        insCompanyFee.setFeeamount(insFeeOrder.getJqNoTaxPremium().multiply(insFeeOrder.getJqCostsProportion().subtract(dept_rate).subtract(retail_rate)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue());
-        insCompanyFee.setDisamount(insFeeOrder.getSyNoTaxPremium().multiply(insFeeOrder.getSyCostsProportion().subtract(dept_rate).subtract(retail_rate)).setScale(2,BigDecimal.ROUND_HALF_UP).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.setDisamount(insFeeOrder.getSyNoTaxPremium().multiply(insFeeOrder.getSyCostsProportion().subtract(dept_rate).subtract(retail_rate)).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue());
         insCompanyFee.setJqpremium(insFeeOrder.getJqNoTaxPremium().doubleValue());
         insCompanyFee.setSypremium(insFeeOrder.getSyNoTaxPremium().doubleValue());
         insCompanyFee.setFrameNo(order.getFrameno());