Bläddra i källkod

决算测试结果

lem 4 år sedan
förälder
incheckning
2c7afc8e12

+ 18 - 22
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/util/ExportUtil.java

@@ -437,22 +437,7 @@ public class ExportUtil {
               }else {
                   cell = row.getCell(7);
               }
-              String powerInstallFee = transferOfPower2.getPowerInstallFee();
-              String powerValue = transferOfPower2.getPowerValue();
-              BigDecimal one = new BigDecimal("0.0");
-              BigDecimal two = new BigDecimal("0.0");
-              if (null == powerInstallFee || "".equals(powerInstallFee)) {
-                  one = new BigDecimal("0.0");
-              }else {
-                  one = new BigDecimal(powerInstallFee);
-              }
-              if (null == powerValue || "".equals(powerValue)) {
-                  two = new BigDecimal("0.0");
-              }else {
-                  two = new BigDecimal(powerValue);
-              }
-              BigDecimal bigDecimal = one.subtract(two).setScale(2, BigDecimal.ROUND_HALF_UP);
-              cell.setCellValue(bigDecimal.toString());//安装费
+              cell.setCellValue(transferOfPower2.getPowerInstallFee());//安装费
               cell.setCellStyle(cellStyle);
               if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style); }
               //第9行
@@ -707,7 +692,7 @@ public class ExportUtil {
             }
         }
     }
-    //移交资产—配电网资产一览表(设备)2
+    //移交资产—配电网资产一览表(设备)2-(04-2)
     public static void getSheetEquip2(Sheet sheet,List<ErpCredit> erpCredits,List<MaintainData> maintainDataList,Workbook workbook){
         if (sheet!=null){
             CellStyle style=getCellStyleFont(workbook);
@@ -743,7 +728,7 @@ public class ExportUtil {
                 }else {
                     cell = row.getCell(2);
                 }
-                cell.setCellValue(transferOfPower2.getPowerAssetClass());
+                cell.setCellValue(transferOfPower2.getPowerAssetClass());//资产类别
                 cell.setCellStyle(cellStyle);
                 if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style); }
                 //第4行
@@ -791,22 +776,24 @@ public class ExportUtil {
                 cell.setCellValue(transferOfPower2.getPowerCapacity());//配变容量
                 cell.setCellStyle(cellStyle);
                 if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style); }
+
                 //第9行
                 if (row.getCell(8)==null){
                     cell = row.createCell(8);
                 }else {
                     cell = row.getCell(8);
                 }
-                cell.setCellValue(transferOfPower2.getPowerValue());//设备价值
+                cell.setCellValue(transferOfPower2.getPowerInstallFee());//安装费
                 cell.setCellStyle(cellStyle);
                 if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style); }
+
                 //第10行
                 if (row.getCell(9)==null){
                     cell = row.createCell(9);
                 }else {
                     cell = row.getCell(9);
                 }
-                cell.setCellValue(transferOfPower2.getPowerStandInFee());//摊入费用
+                cell.setCellValue(transferOfPower2.getPowerValue());//设备价值
                 cell.setCellStyle(cellStyle);
                 if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style); }
                 //第11行
@@ -815,15 +802,24 @@ public class ExportUtil {
                 }else {
                     cell = row.getCell(10);
                 }
-                cell.setCellValue(transferOfPower2.getPowerDeliveredAssets());//交付使用资产价值
+                cell.setCellValue(transferOfPower2.getPowerStandInFee());//摊入费用
                 cell.setCellStyle(cellStyle);
                 if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style); }
                 //第12行
-                if (row.getCell(11) == null){
+                if (row.getCell(11)==null){
                     cell = row.createCell(11);
                 }else {
                     cell = row.getCell(11);
                 }
+                cell.setCellValue(transferOfPower2.getPowerDeliveredAssets());//交付使用资产价值
+                cell.setCellStyle(cellStyle);
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style); }
+                //第13行
+                if (row.getCell(12) == null){
+                    cell = row.createCell(12);
+                }else {
+                    cell = row.getCell(12);
+                }
                 cell.setCellValue(transferOfPower2.getPoweRequipmentFee());//其中:附属设备价值
                 cell.setCellStyle(cellStyle);
                 if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style); }

+ 46 - 21
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/util/ExportUtilCalculate.java

@@ -700,11 +700,22 @@ public class ExportUtilCalculate {
         Double powerStandInFee = 0.0;//摊入费用
         for (ErpCredit erpCredit:erpCredits){
             powerValueTotal = 0.0;//当前erp账户 所有设备费合计 赋值初始值
+
+
             //材料费合计
             materialTotal = getErpCreditMaterial(erpCredit);//得到材料费
             erpCreditEquipmentList = getEquNumbers(erpCredit.getErpCreditChild1s());//特殊情况处理得到最终设备费
             //所有设备费累加
             powerValueTotal = getEqmValueTotal(erpCreditEquipmentList);
+
+            Double allBookedFee = 0.0;
+
+            //获取当前项目定义号的所有设备价值总和
+            for (ErpCreditEquipment e :
+                    erpCreditEquipmentList) {
+                allBookedFee += e.getEqmBookedFee1();
+            }
+
             //得到安装费用 移交生产总值 一览表1线路
             if (null!=erpCredit.getConsInstallFee()){ //安装费(x线路表)
                 powerInstallFee = erpCredit.getConsInstallFee()+materialTotal;
@@ -734,38 +745,52 @@ public class ExportUtilCalculate {
                     }
                     //配电容量
                     transferOfPower2.setPowerCapacity(erpCreditEquipment.getEqmMaterialDetails1());
+                    //设备价值
+                    if (null!=erpCreditEquipment.getEqmBookedFee1()){
+                        powerValue = erpCreditEquipment.getEqmBookedFee1();
+                        transferOfPower2.setPowerValue(decimalFormat.format(powerValue));//赋值设备价值
+                    }
                     //安装费用
                     if (null!=transferOfPower2.getPowerCapacity()&&null==erpCredit.getTenKvModel()){
-                        powerInstall= erpCreditEquipment.getEqmBookedFee1()/powerValueTotal*materialTotal;
-                        if (null!=erpCredit.getConsInstallFee()){
-                            powerInstall = powerInstall+(erpCreditEquipment.getEqmBookedFee1()/powerValueTotal*erpCredit.getConsInstallFee());
-                        }else {
-                            powerInstall = 0.0;
-                        }
+                        //未分摊安装费
+                        double v = allBookedFee;
+                        double buildFee = materialTotal - powerValueTotal + erpCredit.getConsTotalFee();
+                        Double aDouble = Double.valueOf(transferOfPower2.getPowerValue());
+                        double v1 = aDouble / v;
+                        double v2 = buildFee * v1;
+                        //安装费
+                        powerInstall = v2;
                         transferOfPower2.setPowerInstallFee(decimalFormat.format(powerInstall));
                     }else {
 //                        powerInstall = 0.0;
                         transferOfPower2.setPowerInstallFee("0");
                     }
-                    //设备价值
-                    if (null!=erpCreditEquipment.getEqmBookedFee1()){
-                        powerValue = erpCreditEquipment.getEqmBookedFee1();
-                        transferOfPower2.setPowerValue(decimalFormat.format(powerValue));//赋值设备价值
-                    }
                     //摊入
 //                    powerEqmMater = powerValueTotal+powerInstallFee;//===所有的设备价值+安装费+材料费
-                    if (Double.valueOf(transferOfPower2.getPowerValue())!=0.0){
-                        Double aDouble = Double.valueOf(transferOfPower2.getPowerValue());
-                        Double b = Double.valueOf(erpCredit.getOtherTotalFee());
-                        if (powerInstallFee == 0) {
-                            powerStandInFee = 0.0;
-                        } else {
-                            double v = aDouble / powerInstallFee;
-                            double v1 = v * b;
-                            powerStandInFee = v1;
+
+                    //线路为空,分摊规则与04-2安装规则一致
+                    if (null == erpCredit.getTenKvModel()) {
+                        if (Double.valueOf(transferOfPower2.getPowerValue())!=0.0){
+                            double v = allBookedFee;
+                            Double aDouble = Double.valueOf(transferOfPower2.getPowerValue());
+                            Double otherTotalFee = erpCredit.getOtherTotalFee();
+                            double v1 = aDouble / v;
+                            double v2 = otherTotalFee * v1;
+                            powerStandInFee = v2;
+                        }else {
+                            powerStandInFee =0.0;
                         }
                     }else {
-                        powerStandInFee =0.0;
+                        if (Double.valueOf(transferOfPower2.getPowerValue())!=0.0){
+                            double v = materialTotal - powerValueTotal + erpCredit.getConsTotalFee() +allBookedFee;
+                            Double aDouble = Double.valueOf(transferOfPower2.getPowerValue());
+                            Double otherTotalFee = erpCredit.getOtherTotalFee();
+                            double v1 = aDouble / v;
+                            double v2 = otherTotalFee * v1;
+                            powerStandInFee = v2;
+                        }else {
+                            powerStandInFee =0.0;
+                        }
                     }
                     transferOfPower2.setPowerStandInFee(decimalFormat.format(powerStandInFee));//赋值设备分摊费用
                     //添加资产类别

BIN
src/main/resources/freemarker/excelmodel/completionModel.xlsx