Просмотр исходного кода

能报,报表2中没有库存和外购,但报表2-1有能源投入时,计算综合能耗时需要加上能源投入量

huangcaizhen 2 недель назад
Родитель
Сommit
8b3d377c93

+ 22 - 3
app/jljc-app/src/main/java/com/nantian/cloud/jljc/controller/TReportEnergyOutController.java

@@ -180,9 +180,28 @@ public class TReportEnergyOutController {
             }
             for (TReportEnergyOut out : outList) {
                 //报表2中没有库存和外购,但报表2-1有能源投入
-                if (tructure.getEnergyCodeName().equals(out.getEnergyCodeName())
-                        && (tructure.getStartInventory()+tructure.getObject()) == 0 && out.getProConTotal() != 0  ) {
-                    proConTotal += out.getProConTotal();
+                double proConTotalTmp = out.getProConTotal() != null ? out.getProConTotal() : (
+                        (out.getThermalPower() != null ? out.getThermalPower() : 0)
+                        + (out.getHeating() != null ? out.getHeating() : 0)
+                        + (out.getCoalWashing() != null ? out.getCoalWashing() : 0)
+                        + (out.getWastePower() != null ? out.getWastePower() : 0)
+                        + (out.getGasPower() != null ? out.getGasPower() : 0)
+                        + (out.getCoking() != null ? out.getCoking() : 0)
+                        + (out.getOil() != null ? out.getOil() : 0)
+                        + (out.getGasification() != null ? out.getGasification() : 0)
+                        + (out.getGasLiquefaction() != null ? out.getGasLiquefaction() : 0)
+                        + (out.getCoalProducts() != null ? out.getCoalProducts() : 0));
+                if (tructure.getEnergyCodeName() != null && tructure.getEnergyCodeName().equals(out.getEnergyCodeName())
+                        && (tructure.getStartInventory()+tructure.getObject()) == 0 && proConTotalTmp != 0  ) {
+                    String modulus = out.getModulus() != null ? out.getModulus() : out.getRefModulus();
+                    if (modulus != null && !"".equals(modulus)) {
+                        String[] split = modulus.split("-");
+                        //当量值
+                        Double value = split.length > 0 ? Double.parseDouble(split[0]) : 0;
+                        proConTotal += proConTotalTmp * value;
+                    }else{
+                        proConTotal += proConTotalTmp;
+                    }
                 }
             }
         }