785834757 пре 2 година
родитељ
комит
de8c391731

+ 20 - 22
src/main/java/com/ydtech/modules/protocols/service/impl/PtlAgreementProductCostsNewServiceImpl.java

@@ -1314,42 +1314,40 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
         insFeeOrderNew.setNoExportOtherCostsPremiums(exportFeeList.get(2).getOtherCostsPremiums());
 
         //region 重新计算一级机构管理费
-        //入口 - 出口 - 机构管理费 2-4级 - 分销费  = 差值  + 一级管理费
+        //入口 - 出口 - 机构管理费 5级 - 分销费  = 差值
 
         //分销交强费用
-        BigDecimal jqFenXiao = insFeeOrderNew.getJqPremium().multiply(retailStoreFee.getRetailStoreRadio().divide(new BigDecimal(100)));
+        BigDecimal jqFenXiao = insFeeOrderNew.getJqPremium().multiply(retailStoreFee.getRetailStoreRadio().divide(new BigDecimal(100))).setScale(2,BigDecimal.ROUND_DOWN);
         //分销商业费用
-        BigDecimal syFenXiao = insFeeOrderNew.getSyPremium().multiply(retailStoreFee.getRetailStoreRadio().divide(new BigDecimal(100)));
+        BigDecimal syFenXiao = insFeeOrderNew.getSyPremium().multiply(retailStoreFee.getRetailStoreRadio().divide(new BigDecimal(100))).setScale(2,BigDecimal.ROUND_DOWN);
         //分销非车费用
-        BigDecimal noFenXiao = insFeeOrderNew.getNoPremium().multiply(retailStoreFee.getRetailStoreRadio().divide(new BigDecimal(100)));
+        BigDecimal noFenXiao = insFeeOrderNew.getNoPremium().multiply(retailStoreFee.getRetailStoreRadio().divide(new BigDecimal(100))).setScale(2,BigDecimal.ROUND_DOWN);
 
-        BigDecimal jqDifference = insFeeOrderNew.getJqCostsPremiums().subtract(
-                        (insFeeOrderNew.getJqExportSuperviseCostsPremiums().add(insFeeOrderNew.getJqExportOtherCostsPremiums())))
+        BigDecimal jqDifference = jqEntranceFee.getTotalAmount().subtract(
+                        (jqExportFee.getSuperviseCostsPremiums().add(jqExportFee.getOtherCostsPremiums())))
                 .subtract(
-                        (insFeeOrderNew.getJqDeptPremiumsLevel2().add(insFeeOrderNew.getJqDeptPremiumsLevel3()).add(insFeeOrderNew.getJqDeptPremiumsLevel4()).add(insFeeOrderNew.getJqDeptPremiumsLevel5()))
+                        (jqDeptManagerFee.getDeptPremiumsLevelOne().add(jqDeptManagerFee.getDeptPremiumsLevelTwo().add(jqDeptManagerFee.getDeptPremiumsLevelThree()).add(jqDeptManagerFee.getDeptPremiumsLevelFoure()).add(jqDeptManagerFee.getDeptPremiumsLevelFive())))
                 )
-                .subtract(jqFenXiao);
-        insFeeOrderNew.setJqDeptPremiumsLevel1(jqDifference);
-        deptManagerFeeList.get(0).setDeptPremiumsLevelOne(jqDifference);
+                .subtract(jqFenXiao).setScale(5, BigDecimal.ROUND_HALF_DOWN);
+        insFeeOrderNew.setJqProfitMarginPremiums(jqDifference);
 
-
-        BigDecimal syDifference = insFeeOrderNew.getSyCostsPremiums().subtract(
-                        (insFeeOrderNew.getSyExportSuperviseCostsPremiums().add(insFeeOrderNew.getSyExportOtherCostsPremiums())))
+        BigDecimal syDifference = syEntranceFee.getTotalAmount().subtract(
+                        (syExportFee.getSuperviseCostsPremiums().add(syExportFee.getOtherCostsPremiums())))
                 .subtract(
-                        (insFeeOrderNew.getSyDeptPremiumsLevel2().add(insFeeOrderNew.getSyDeptPremiumsLevel3()).add(insFeeOrderNew.getSyDeptPremiumsLevel4()).add(insFeeOrderNew.getSyDeptPremiumsLevel5()))
+                        (syDeptManagerFee.getDeptPremiumsLevelOne().add(syDeptManagerFee.getDeptPremiumsLevelTwo().add(syDeptManagerFee.getDeptPremiumsLevelThree()).add(syDeptManagerFee.getDeptPremiumsLevelFoure()).add(syDeptManagerFee.getDeptPremiumsLevelFive())))
                 )
-                .subtract(syFenXiao);
-        insFeeOrderNew.setSyDeptPremiumsLevel1(syDifference);
-        deptManagerFeeList.get(1).setDeptPremiumsLevelOne(syDifference);
+                .subtract(syFenXiao).setScale(5, BigDecimal.ROUND_HALF_DOWN);
+        insFeeOrderNew.setSyProfitMarginPremiums(syDifference);
+
 
-        BigDecimal noDifference = insFeeOrderNew.getNoCostsPremiums().subtract(
-                        (insFeeOrderNew.getNoExportSuperviseCostsPremiums().add(insFeeOrderNew.getNoExportOtherCostsPremiums())))
+        BigDecimal noDifference = noEntranceFee.getTotalAmount().subtract(
+                        (noExportFee.getSuperviseCostsPremiums().add(noExportFee.getOtherCostsPremiums())))
                 .subtract(
-                        (insFeeOrderNew.getNoDeptPremiumsLevel2().add(insFeeOrderNew.getNoDeptPremiumsLevel3()).add(insFeeOrderNew.getNoDeptPremiumsLevel4()).add(insFeeOrderNew.getNoDeptPremiumsLevel5()))
+                        (noDeptManagerFee.getDeptPremiumsLevelOne().add(noDeptManagerFee.getDeptPremiumsLevelTwo().add(noDeptManagerFee.getDeptPremiumsLevelThree()).add(noDeptManagerFee.getDeptPremiumsLevelFoure()).add(noDeptManagerFee.getDeptPremiumsLevelFive())))
                 )
-                .subtract(noFenXiao);
+                .subtract(noFenXiao).setScale(5, BigDecimal.ROUND_HALF_DOWN);
 
-        insFeeOrderNew.setNoDeptPremiumsLevel1(noDifference);
+        insFeeOrderNew.setNoProfitMarginPremiums(noDifference);
         deptManagerFeeList.get(2).setDeptPremiumsLevelOne(noDifference);
         //endregion