Bladeren bron

王子文 月报Cracker Utility Consumption, Cracker Energy Consumption, Aromatics Utility Consumption, Aromatics Energy Consumption

wangggziwen 2 jaren geleden
bovenliggende
commit
98426add6a

+ 2 - 0
master/src/main/java/com/ruoyi/project/production/controller/TMonthlyProductionReportController.java

@@ -65,6 +65,7 @@ public class TMonthlyProductionReportController extends BaseController
     {
         return AjaxResult.success(tMonthlyProductionReportService.selectKbiByYear(year));
     }
+
     /**
      * 按年份查询SCTF Utility Consumption
      */
@@ -74,6 +75,7 @@ public class TMonthlyProductionReportController extends BaseController
     {
         return AjaxResult.success(tMonthlyProductionReportService.selectSCTFUtilityConsumptionByYear(year));
     }
+
     /**
      * 按年份查询SUB Utility Consumption
      */

+ 631 - 1
master/src/main/java/com/ruoyi/project/production/domain/TMonthlyProductionReport.java

@@ -9,7 +9,7 @@ import org.apache.commons.lang3.builder.ToStringStyle;
  * 每月生产报告对象 t_monthly_production_report
  *
  * @author ruoyi
- * @date 2022-11-10
+ * @date 2022-11-14
  */
 public class TMonthlyProductionReport extends BaseEntity
 {
@@ -326,6 +326,186 @@ public class TMonthlyProductionReport extends BaseEntity
     @Excel(name = "Eligible Product Rate C4s")
     private String c4sProductRate;
 
+    /** Cracker Utility Consumption FG(include NG+Offage) */
+    @Excel(name = "Cracker Utility Consumption FG(include NG+Offage)")
+    private String fuelGasOffgasCracker;
+
+    /** Cracker Utility Consumption SS */
+    @Excel(name = "Cracker Utility Consumption SS")
+    private String shpCracker;
+
+    /** Cracker Utility Consumption HS */
+    @Excel(name = "Cracker Utility Consumption HS")
+    private String hpCracker;
+
+    /** Cracker Utility Consumption MS */
+    @Excel(name = "Cracker Utility Consumption MS")
+    private String mpCracker;
+
+    /** Cracker Utility Consumption LS */
+    @Excel(name = "Cracker Utility Consumption LS")
+    private String lpCracker;
+
+    /** Cracker Utility Consumption Electricity */
+    @Excel(name = "Cracker Utility Consumption Electricity")
+    private String electricityCracker;
+
+    /** Cracker Utility Consumption coiling water */
+    @Excel(name = "Cracker Utility Consumption coiling water")
+    private String coolingWaterCracker;
+
+    /** Cracker Utility Consumption Instru. Air */
+    @Excel(name = "Cracker Utility Consumption Instru. Air")
+    private String crackerConsumptionIa;
+
+    /** Cracker Utility Consumption Plant Air */
+    @Excel(name = "Cracker Utility Consumption Plant Air")
+    private String paIaCracker;
+
+    /** Cracker Utility Consumption N2 */
+    @Excel(name = "Cracker Utility Consumption N2")
+    private String n2Cracker;
+
+    /** Cracker Utility Consumption BFW */
+    @Excel(name = "Cracker Utility Consumption BFW")
+    private String hpBfwCracker;
+
+    /** Cracker Utility Consumption Polished Condensate */
+    @Excel(name = "Cracker Utility Consumption Polished Condensate")
+    private String polishedConCracker;
+
+    /** Cracker Utility Consumption P. W. Water */
+    @Excel(name = "Cracker Utility Consumption P. W. Water")
+    private String crackerConsumptionPww;
+
+    /** Cracker Utility Consumption TC */
+    @Excel(name = "Cracker Utility Consumption TC")
+    private String turbineConCracker;
+
+    /** Cracker Utility Consumption CNWW */
+    @Excel(name = "Cracker Utility Consumption CNWW")
+    private String crackerConsumptionCnww;
+
+    /** Cracker Utility Consumption DWW */
+    @Excel(name = "Cracker Utility Consumption DWW")
+    private String crackerConsumptionDww;
+
+    /** Cracker Utility Consumption waste oil */
+    @Excel(name = "Cracker Utility Consumption waste oil")
+    private String crackerConsumptionWo;
+
+    /** Cracker Utility Consumption Potable Water */
+    @Excel(name = "Cracker Utility Consumption Potable Water")
+    private String crackerConsumptionPw;
+
+    /** Cracker Utility Consumption Production Water */
+    @Excel(name = "Cracker Utility Consumption Production Water")
+    private String prodWaterCracker;
+
+    /** Cracker Utility Consumption NG to furnace or offags to SUB */
+    @Excel(name = "Cracker Utility Consumption NG to furnace or offags to SUB")
+    private String crackerConsumptionNg;
+
+    /** Cracker Utility Consumption offage product */
+    @Excel(name = "Cracker Utility Consumption offage product")
+    private String crackerConsumptionOffgas;
+
+    /** Cracker Energy Consumption total energy */
+    @Excel(name = "Cracker Energy Consumption total energy")
+    private String crackerEnergyTeTeo;
+
+    /** Cracker Energy Consumption total energy */
+    @Excel(name = "Cracker Energy Consumption total energy")
+    private String crackerEnergyTeTec;
+
+    /** Cracker Energy Consumption Energy/ethylene */
+    @Excel(name = "Cracker Energy Consumption Energy/ethylene")
+    private String crackerEnergyEeKgeot;
+
+    /** Cracker Energy Consumption Energy/ethylene */
+    @Excel(name = "Cracker Energy Consumption Energy/ethylene")
+    private String crackerEnergyEeKgect;
+
+    /** Aromatics Utility Consumption SS */
+    @Excel(name = "Aromatics Utility Consumption SS")
+    private String shpPguAeu;
+
+    /** Aromatics Utility Consumption HS */
+    @Excel(name = "Aromatics Utility Consumption HS")
+    private String hpPguAeu;
+
+    /** Aromatics Utility Consumption MS */
+    @Excel(name = "Aromatics Utility Consumption MS")
+    private String mpPguAeu;
+
+    /** Aromatics Utility Consumption LS */
+    @Excel(name = "Aromatics Utility Consumption LS")
+    private String lpPguAeu;
+
+    /** Aromatics Utility Consumption Electricity */
+    @Excel(name = "Aromatics Utility Consumption Electricity")
+    private String electricityPguAeu;
+
+    /** Aromatics Utility Consumption coiling water */
+    @Excel(name = "Aromatics Utility Consumption coiling water")
+    private String coolingWaterPguAeu;
+
+    /** Aromatics Utility Consumption Potable Water */
+    @Excel(name = "Aromatics Utility Consumption Potable Water")
+    private String aromaticsConsumptionPw;
+
+    /** Aromatics Utility Consumption Production Water */
+    @Excel(name = "Aromatics Utility Consumption Production Water")
+    private String prodWaterPguAeu;
+
+    /** Aromatics Utility Consumption BFW */
+    @Excel(name = "Aromatics Utility Consumption BFW")
+    private String hpBfwPguAeu;
+
+    /** Aromatics Utility Consumption N2 */
+    @Excel(name = "Aromatics Utility Consumption N2")
+    private String n2PguAeu;
+
+    /** Aromatics Utility Consumption PA&IA */
+    @Excel(name = "Aromatics Utility Consumption PA&IA")
+    private String paIaPguAeu;
+
+    /** Aromatics Utility Consumption Turbine Condensate */
+    @Excel(name = "Aromatics Utility Consumption Turbine Condensate")
+    private String turbineConPguAeu;
+
+    /** Aromatics Utility Consumption Contaminated WW */
+    @Excel(name = "Aromatics Utility Consumption Contaminated WW")
+    private String aromaticsConsumptionCww;
+
+    /** Aromatics Utility Consumption Production WW */
+    @Excel(name = "Aromatics Utility Consumption Production WW")
+    private String aromaticsConsumptionPww;
+
+    /** Aromatics Utility Consumption DWW */
+    @Excel(name = "Aromatics Utility Consumption DWW")
+    private String aromaticsConsumptionDww;
+
+    /** Aromatics Utility Consumption Waste Liquid */
+    @Excel(name = "Aromatics Utility Consumption Waste Liquid")
+    private String aromaticsConsumptionWl;
+
+    /** Aromatics Energy Consumption total energy */
+    @Excel(name = "Aromatics Energy Consumption total energy")
+    private String aromaticsEnergyTeTeo;
+
+    /** Aromatics Energy Consumption total energy */
+    @Excel(name = "Aromatics Energy Consumption total energy")
+    private String aromaticsEnergyTeTec;
+
+    /** Aromatics Energy Consumption Energy/ethylene */
+    @Excel(name = "Aromatics Energy Consumption Energy/ethylene")
+    private String aromaticsEnergyEeKgeot;
+
+    /** Aromatics Energy Consumption Energy/ethylene */
+    @Excel(name = "Aromatics Energy Consumption Energy/ethylene")
+    private String aromaticsEnergyEeKgect;
+
     public void setId(Long id)
     {
         this.id = id;
@@ -1028,6 +1208,411 @@ public class TMonthlyProductionReport extends BaseEntity
     {
         return c4sProductRate;
     }
+    public void setFuelGasOffgasCracker(String fuelGasOffgasCracker)
+    {
+        this.fuelGasOffgasCracker = fuelGasOffgasCracker;
+    }
+
+    public String getFuelGasOffgasCracker()
+    {
+        return fuelGasOffgasCracker;
+    }
+    public void setShpCracker(String shpCracker)
+    {
+        this.shpCracker = shpCracker;
+    }
+
+    public String getShpCracker()
+    {
+        return shpCracker;
+    }
+    public void setHpCracker(String hpCracker)
+    {
+        this.hpCracker = hpCracker;
+    }
+
+    public String getHpCracker()
+    {
+        return hpCracker;
+    }
+    public void setMpCracker(String mpCracker)
+    {
+        this.mpCracker = mpCracker;
+    }
+
+    public String getMpCracker()
+    {
+        return mpCracker;
+    }
+    public void setLpCracker(String lpCracker)
+    {
+        this.lpCracker = lpCracker;
+    }
+
+    public String getLpCracker()
+    {
+        return lpCracker;
+    }
+    public void setElectricityCracker(String electricityCracker)
+    {
+        this.electricityCracker = electricityCracker;
+    }
+
+    public String getElectricityCracker()
+    {
+        return electricityCracker;
+    }
+    public void setCoolingWaterCracker(String coolingWaterCracker)
+    {
+        this.coolingWaterCracker = coolingWaterCracker;
+    }
+
+    public String getCoolingWaterCracker()
+    {
+        return coolingWaterCracker;
+    }
+    public void setCrackerConsumptionIa(String crackerConsumptionIa)
+    {
+        this.crackerConsumptionIa = crackerConsumptionIa;
+    }
+
+    public String getCrackerConsumptionIa()
+    {
+        return crackerConsumptionIa;
+    }
+    public void setPaIaCracker(String paIaCracker)
+    {
+        this.paIaCracker = paIaCracker;
+    }
+
+    public String getPaIaCracker()
+    {
+        return paIaCracker;
+    }
+    public void setN2Cracker(String n2Cracker)
+    {
+        this.n2Cracker = n2Cracker;
+    }
+
+    public String getN2Cracker()
+    {
+        return n2Cracker;
+    }
+    public void setHpBfwCracker(String hpBfwCracker)
+    {
+        this.hpBfwCracker = hpBfwCracker;
+    }
+
+    public String getHpBfwCracker()
+    {
+        return hpBfwCracker;
+    }
+    public void setPolishedConCracker(String polishedConCracker)
+    {
+        this.polishedConCracker = polishedConCracker;
+    }
+
+    public String getPolishedConCracker()
+    {
+        return polishedConCracker;
+    }
+    public void setCrackerConsumptionPww(String crackerConsumptionPww)
+    {
+        this.crackerConsumptionPww = crackerConsumptionPww;
+    }
+
+    public String getCrackerConsumptionPww()
+    {
+        return crackerConsumptionPww;
+    }
+    public void setTurbineConCracker(String turbineConCracker)
+    {
+        this.turbineConCracker = turbineConCracker;
+    }
+
+    public String getTurbineConCracker()
+    {
+        return turbineConCracker;
+    }
+    public void setCrackerConsumptionCnww(String crackerConsumptionCnww)
+    {
+        this.crackerConsumptionCnww = crackerConsumptionCnww;
+    }
+
+    public String getCrackerConsumptionCnww()
+    {
+        return crackerConsumptionCnww;
+    }
+    public void setCrackerConsumptionDww(String crackerConsumptionDww)
+    {
+        this.crackerConsumptionDww = crackerConsumptionDww;
+    }
+
+    public String getCrackerConsumptionDww()
+    {
+        return crackerConsumptionDww;
+    }
+    public void setCrackerConsumptionWo(String crackerConsumptionWo)
+    {
+        this.crackerConsumptionWo = crackerConsumptionWo;
+    }
+
+    public String getCrackerConsumptionWo()
+    {
+        return crackerConsumptionWo;
+    }
+    public void setCrackerConsumptionPw(String crackerConsumptionPw)
+    {
+        this.crackerConsumptionPw = crackerConsumptionPw;
+    }
+
+    public String getCrackerConsumptionPw()
+    {
+        return crackerConsumptionPw;
+    }
+    public void setProdWaterCracker(String prodWaterCracker)
+    {
+        this.prodWaterCracker = prodWaterCracker;
+    }
+
+    public String getProdWaterCracker()
+    {
+        return prodWaterCracker;
+    }
+    public void setCrackerConsumptionNg(String crackerConsumptionNg)
+    {
+        this.crackerConsumptionNg = crackerConsumptionNg;
+    }
+
+    public String getCrackerConsumptionNg()
+    {
+        return crackerConsumptionNg;
+    }
+    public void setCrackerConsumptionOffgas(String crackerConsumptionOffgas)
+    {
+        this.crackerConsumptionOffgas = crackerConsumptionOffgas;
+    }
+
+    public String getCrackerConsumptionOffgas()
+    {
+        return crackerConsumptionOffgas;
+    }
+    public void setCrackerEnergyTeTeo(String crackerEnergyTeTeo)
+    {
+        this.crackerEnergyTeTeo = crackerEnergyTeTeo;
+    }
+
+    public String getCrackerEnergyTeTeo()
+    {
+        return crackerEnergyTeTeo;
+    }
+    public void setCrackerEnergyTeTec(String crackerEnergyTeTec)
+    {
+        this.crackerEnergyTeTec = crackerEnergyTeTec;
+    }
+
+    public String getCrackerEnergyTeTec()
+    {
+        return crackerEnergyTeTec;
+    }
+    public void setCrackerEnergyEeKgeot(String crackerEnergyEeKgeot)
+    {
+        this.crackerEnergyEeKgeot = crackerEnergyEeKgeot;
+    }
+
+    public String getCrackerEnergyEeKgeot()
+    {
+        return crackerEnergyEeKgeot;
+    }
+    public void setCrackerEnergyEeKgect(String crackerEnergyEeKgect)
+    {
+        this.crackerEnergyEeKgect = crackerEnergyEeKgect;
+    }
+
+    public String getCrackerEnergyEeKgect()
+    {
+        return crackerEnergyEeKgect;
+    }
+    public void setShpPguAeu(String shpPguAeu)
+    {
+        this.shpPguAeu = shpPguAeu;
+    }
+
+    public String getShpPguAeu()
+    {
+        return shpPguAeu;
+    }
+    public void setHpPguAeu(String hpPguAeu)
+    {
+        this.hpPguAeu = hpPguAeu;
+    }
+
+    public String getHpPguAeu()
+    {
+        return hpPguAeu;
+    }
+    public void setMpPguAeu(String mpPguAeu)
+    {
+        this.mpPguAeu = mpPguAeu;
+    }
+
+    public String getMpPguAeu()
+    {
+        return mpPguAeu;
+    }
+    public void setLpPguAeu(String lpPguAeu)
+    {
+        this.lpPguAeu = lpPguAeu;
+    }
+
+    public String getLpPguAeu()
+    {
+        return lpPguAeu;
+    }
+    public void setElectricityPguAeu(String electricityPguAeu)
+    {
+        this.electricityPguAeu = electricityPguAeu;
+    }
+
+    public String getElectricityPguAeu()
+    {
+        return electricityPguAeu;
+    }
+    public void setCoolingWaterPguAeu(String coolingWaterPguAeu)
+    {
+        this.coolingWaterPguAeu = coolingWaterPguAeu;
+    }
+
+    public String getCoolingWaterPguAeu()
+    {
+        return coolingWaterPguAeu;
+    }
+    public void setAromaticsConsumptionPw(String aromaticsConsumptionPw)
+    {
+        this.aromaticsConsumptionPw = aromaticsConsumptionPw;
+    }
+
+    public String getAromaticsConsumptionPw()
+    {
+        return aromaticsConsumptionPw;
+    }
+    public void setProdWaterPguAeu(String prodWaterPguAeu)
+    {
+        this.prodWaterPguAeu = prodWaterPguAeu;
+    }
+
+    public String getProdWaterPguAeu()
+    {
+        return prodWaterPguAeu;
+    }
+    public void setHpBfwPguAeu(String hpBfwPguAeu)
+    {
+        this.hpBfwPguAeu = hpBfwPguAeu;
+    }
+
+    public String getHpBfwPguAeu()
+    {
+        return hpBfwPguAeu;
+    }
+    public void setN2PguAeu(String n2PguAeu)
+    {
+        this.n2PguAeu = n2PguAeu;
+    }
+
+    public String getN2PguAeu()
+    {
+        return n2PguAeu;
+    }
+    public void setPaIaPguAeu(String paIaPguAeu)
+    {
+        this.paIaPguAeu = paIaPguAeu;
+    }
+
+    public String getPaIaPguAeu()
+    {
+        return paIaPguAeu;
+    }
+    public void setTurbineConPguAeu(String turbineConPguAeu)
+    {
+        this.turbineConPguAeu = turbineConPguAeu;
+    }
+
+    public String getTurbineConPguAeu()
+    {
+        return turbineConPguAeu;
+    }
+    public void setAromaticsConsumptionCww(String aromaticsConsumptionCww)
+    {
+        this.aromaticsConsumptionCww = aromaticsConsumptionCww;
+    }
+
+    public String getAromaticsConsumptionCww()
+    {
+        return aromaticsConsumptionCww;
+    }
+    public void setAromaticsConsumptionPww(String aromaticsConsumptionPww)
+    {
+        this.aromaticsConsumptionPww = aromaticsConsumptionPww;
+    }
+
+    public String getAromaticsConsumptionPww()
+    {
+        return aromaticsConsumptionPww;
+    }
+    public void setAromaticsConsumptionDww(String aromaticsConsumptionDww)
+    {
+        this.aromaticsConsumptionDww = aromaticsConsumptionDww;
+    }
+
+    public String getAromaticsConsumptionDww()
+    {
+        return aromaticsConsumptionDww;
+    }
+    public void setAromaticsConsumptionWl(String aromaticsConsumptionWl)
+    {
+        this.aromaticsConsumptionWl = aromaticsConsumptionWl;
+    }
+
+    public String getAromaticsConsumptionWl()
+    {
+        return aromaticsConsumptionWl;
+    }
+    public void setAromaticsEnergyTeTeo(String aromaticsEnergyTeTeo)
+    {
+        this.aromaticsEnergyTeTeo = aromaticsEnergyTeTeo;
+    }
+
+    public String getAromaticsEnergyTeTeo()
+    {
+        return aromaticsEnergyTeTeo;
+    }
+    public void setAromaticsEnergyTeTec(String aromaticsEnergyTeTec)
+    {
+        this.aromaticsEnergyTeTec = aromaticsEnergyTeTec;
+    }
+
+    public String getAromaticsEnergyTeTec()
+    {
+        return aromaticsEnergyTeTec;
+    }
+    public void setAromaticsEnergyEeKgeot(String aromaticsEnergyEeKgeot)
+    {
+        this.aromaticsEnergyEeKgeot = aromaticsEnergyEeKgeot;
+    }
+
+    public String getAromaticsEnergyEeKgeot()
+    {
+        return aromaticsEnergyEeKgeot;
+    }
+    public void setAromaticsEnergyEeKgect(String aromaticsEnergyEeKgect)
+    {
+        this.aromaticsEnergyEeKgect = aromaticsEnergyEeKgect;
+    }
+
+    public String getAromaticsEnergyEeKgect()
+    {
+        return aromaticsEnergyEeKgect;
+    }
 
     @Override
     public String toString() {
@@ -1110,6 +1695,51 @@ public class TMonthlyProductionReport extends BaseEntity
             .append("c2ProductRate", getC2ProductRate())
             .append("c3ProductRate", getC3ProductRate())
             .append("c4sProductRate", getC4sProductRate())
+            .append("fuelGasOffgasCracker", getFuelGasOffgasCracker())
+            .append("shpCracker", getShpCracker())
+            .append("hpCracker", getHpCracker())
+            .append("mpCracker", getMpCracker())
+            .append("lpCracker", getLpCracker())
+            .append("electricityCracker", getElectricityCracker())
+            .append("coolingWaterCracker", getCoolingWaterCracker())
+            .append("crackerConsumptionIa", getCrackerConsumptionIa())
+            .append("paIaCracker", getPaIaCracker())
+            .append("n2Cracker", getN2Cracker())
+            .append("hpBfwCracker", getHpBfwCracker())
+            .append("polishedConCracker", getPolishedConCracker())
+            .append("crackerConsumptionPww", getCrackerConsumptionPww())
+            .append("turbineConCracker", getTurbineConCracker())
+            .append("crackerConsumptionCnww", getCrackerConsumptionCnww())
+            .append("crackerConsumptionDww", getCrackerConsumptionDww())
+            .append("crackerConsumptionWo", getCrackerConsumptionWo())
+            .append("crackerConsumptionPw", getCrackerConsumptionPw())
+            .append("prodWaterCracker", getProdWaterCracker())
+            .append("crackerConsumptionNg", getCrackerConsumptionNg())
+            .append("crackerConsumptionOffgas", getCrackerConsumptionOffgas())
+            .append("crackerEnergyTeTeo", getCrackerEnergyTeTeo())
+            .append("crackerEnergyTeTec", getCrackerEnergyTeTec())
+            .append("crackerEnergyEeKgeot", getCrackerEnergyEeKgeot())
+            .append("crackerEnergyEeKgect", getCrackerEnergyEeKgect())
+            .append("shpPguAeu", getShpPguAeu())
+            .append("hpPguAeu", getHpPguAeu())
+            .append("mpPguAeu", getMpPguAeu())
+            .append("lpPguAeu", getLpPguAeu())
+            .append("electricityPguAeu", getElectricityPguAeu())
+            .append("coolingWaterPguAeu", getCoolingWaterPguAeu())
+            .append("aromaticsConsumptionPw", getAromaticsConsumptionPw())
+            .append("prodWaterPguAeu", getProdWaterPguAeu())
+            .append("hpBfwPguAeu", getHpBfwPguAeu())
+            .append("n2PguAeu", getN2PguAeu())
+            .append("paIaPguAeu", getPaIaPguAeu())
+            .append("turbineConPguAeu", getTurbineConPguAeu())
+            .append("aromaticsConsumptionCww", getAromaticsConsumptionCww())
+            .append("aromaticsConsumptionPww", getAromaticsConsumptionPww())
+            .append("aromaticsConsumptionDww", getAromaticsConsumptionDww())
+            .append("aromaticsConsumptionWl", getAromaticsConsumptionWl())
+            .append("aromaticsEnergyTeTeo", getAromaticsEnergyTeTeo())
+            .append("aromaticsEnergyTeTec", getAromaticsEnergyTeTec())
+            .append("aromaticsEnergyEeKgeot", getAromaticsEnergyEeKgeot())
+            .append("aromaticsEnergyEeKgect", getAromaticsEnergyEeKgect())
             .toString();
     }
 }

+ 308 - 4
master/src/main/java/com/ruoyi/project/production/service/impl/TMonthlyProductionReportServiceImpl.java

@@ -842,7 +842,122 @@ public class TMonthlyProductionReportServiceImpl implements ITMonthlyProductionR
      */
     @Override
     public List<MonthlyProductionReportVO> selectCrackerUtilityConsumptionByYear(Long year) {
-        return  null;
+        // 当前日期
+        Date currentDate = new Date();
+        // 当前年份
+        Long currentYear = Long.parseLong(currentDate.getYear() + 1900 + "");
+        // 当前月份
+        Long currentMonth = Long.parseLong(currentDate.getMonth() + 1 + "");
+        // 从数据库中查出的当前year的月报数据集合,每个元素对应当前year某个月的数据
+        List<TMonthlyProductionReport> tMonthlyProductionReports = tMonthlyProductionReportMapper.selectCrackerUtilityConsumptionByYear(year);
+        // 前端月报数据集合,每个元素对应当前某个指标的title、unit、1~12月的数据以及年度汇总数据
+        List<MonthlyProductionReportVO> monthlyProductionReportVOs = new ArrayList<>();
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("fuel_gas_offgas_cracker","FG(include NG+Offage)","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("shp_cracker","SS","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("hp_cracker","HS","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("mp_cracker","MS","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("lp_cracker","LS","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("electricity_cracker","Electricity","MWh"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cooling_water_cracker","coiling water","kt"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_consumption_ia","Instru. Air","km3"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("pa_ia_cracker","Plant Air","km3"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("n2_cracker","N2","km3"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("hp_bfw_cracker","BFW","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("polished_con_cracker","Polished Condensate","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_consumption_pww","P. W. Water","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("turbine_con_cracker","TC","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_consumption_cnww","CNWW","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_consumption_dww","DWW","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_consumption_wo","waste oil","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_consumption_pw","Potable Water","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("prod_water_cracker","Production Water","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_consumption_ng","NG to furnace or offags to SUB","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_consumption_offgas","offage product","t"));
+        // 遍历从数据库中查出的月报数据集合,结果为0~12条数据不等
+        for (int i = 0; i < tMonthlyProductionReports.size(); i++) {
+            TMonthlyProductionReport tMonthlyProductionReport = tMonthlyProductionReports.get(i);
+            String fuelGasOffgasCracker = tMonthlyProductionReport.getFuelGasOffgasCracker();
+            String shpCracker = tMonthlyProductionReport.getShpCracker();
+            String hpCracker = tMonthlyProductionReport.getHpCracker();
+            String mpCracker = tMonthlyProductionReport.getMpCracker();
+            String lpCracker = tMonthlyProductionReport.getLpCracker();
+            String electricityCracker = tMonthlyProductionReport.getElectricityCracker();
+            String coolingWaterCracker = tMonthlyProductionReport.getCoolingWaterCracker();
+            String crackerConsumptionIa = tMonthlyProductionReport.getCrackerConsumptionIa();
+            String paIaCracker = tMonthlyProductionReport.getPaIaCracker();
+            String n2Cracker = tMonthlyProductionReport.getN2Cracker();
+            String hpBfwCracker = tMonthlyProductionReport.getHpBfwCracker();
+            String polishedConCracker = tMonthlyProductionReport.getPolishedConCracker();
+            String crackerConsumptionPww = tMonthlyProductionReport.getCrackerConsumptionPww();
+            String turbineConCracker = tMonthlyProductionReport.getTurbineConCracker();
+            String crackerConsumptionCnww = tMonthlyProductionReport.getCrackerConsumptionCnww();
+            String crackerConsumptionDww = tMonthlyProductionReport.getCrackerConsumptionDww();
+            String crackerConsumptionWo = tMonthlyProductionReport.getCrackerConsumptionWo();
+            String crackerConsumptionPw = tMonthlyProductionReport.getCrackerConsumptionPw();
+            String prodWaterCracker = tMonthlyProductionReport.getProdWaterCracker();
+            String crackerConsumptionNg = tMonthlyProductionReport.getCrackerConsumptionNg();
+            String crackerConsumptionOffgas = tMonthlyProductionReport.getCrackerConsumptionOffgas();
+            Long reportMonth = tMonthlyProductionReport.getReportMonth();   // 当前元素的所属月份
+            Long reportYear = tMonthlyProductionReport.getReportYear();     // 当前元素的所属年份
+            // 前端数据集合的class
+            Class clazz = null;
+            // 当前元素调用的set方法
+            Method method = null;
+            try {
+                clazz = Class.forName("com.ruoyi.project.production.service.impl.vo.MonthlyProductionReportVO");
+                method = this.getSetMethod(reportMonth, clazz);
+                // 按照当前元素的所属月份调取相应set方法
+                method.invoke(monthlyProductionReportVOs.get(0), fuelGasOffgasCracker);
+                method.invoke(monthlyProductionReportVOs.get(1), shpCracker);
+                method.invoke(monthlyProductionReportVOs.get(2), hpCracker);
+                method.invoke(monthlyProductionReportVOs.get(3), mpCracker);
+                method.invoke(monthlyProductionReportVOs.get(4), lpCracker);
+                method.invoke(monthlyProductionReportVOs.get(5), electricityCracker);
+                method.invoke(monthlyProductionReportVOs.get(6), coolingWaterCracker);
+                method.invoke(monthlyProductionReportVOs.get(7), crackerConsumptionIa);
+                method.invoke(monthlyProductionReportVOs.get(8), paIaCracker);
+                method.invoke(monthlyProductionReportVOs.get(9), n2Cracker);
+                method.invoke(monthlyProductionReportVOs.get(10), hpBfwCracker);
+                method.invoke(monthlyProductionReportVOs.get(11), polishedConCracker);
+                method.invoke(monthlyProductionReportVOs.get(12), crackerConsumptionPww);
+                method.invoke(monthlyProductionReportVOs.get(13), turbineConCracker);
+                method.invoke(monthlyProductionReportVOs.get(14), crackerConsumptionCnww);
+                method.invoke(monthlyProductionReportVOs.get(15), crackerConsumptionDww);
+                method.invoke(monthlyProductionReportVOs.get(16), crackerConsumptionWo);
+                method.invoke(monthlyProductionReportVOs.get(17), crackerConsumptionPw);
+                method.invoke(monthlyProductionReportVOs.get(18), prodWaterCracker);
+                method.invoke(monthlyProductionReportVOs.get(19), crackerConsumptionNg);
+                method.invoke(monthlyProductionReportVOs.get(20), crackerConsumptionOffgas);
+                // 当前年份=所属年份,当前月份=所属月份
+                if (currentMonth.equals(reportMonth) && currentYear.equals(reportYear)) {
+                    monthlyProductionReportVOs.get(0).setCurrently(fuelGasOffgasCracker);
+                    monthlyProductionReportVOs.get(1).setCurrently(shpCracker);
+                    monthlyProductionReportVOs.get(2).setCurrently(hpCracker);
+                    monthlyProductionReportVOs.get(3).setCurrently(mpCracker);
+                    monthlyProductionReportVOs.get(4).setCurrently(lpCracker);
+                    monthlyProductionReportVOs.get(5).setCurrently(electricityCracker);
+                    monthlyProductionReportVOs.get(6).setCurrently(coolingWaterCracker);
+                    monthlyProductionReportVOs.get(7).setCurrently(crackerConsumptionIa);
+                    monthlyProductionReportVOs.get(8).setCurrently(paIaCracker);
+                    monthlyProductionReportVOs.get(9).setCurrently(n2Cracker);
+                    monthlyProductionReportVOs.get(10).setCurrently(hpBfwCracker);
+                    monthlyProductionReportVOs.get(11).setCurrently(polishedConCracker);
+                    monthlyProductionReportVOs.get(12).setCurrently(crackerConsumptionPww);
+                    monthlyProductionReportVOs.get(13).setCurrently(turbineConCracker);
+                    monthlyProductionReportVOs.get(14).setCurrently(crackerConsumptionCnww);
+                    monthlyProductionReportVOs.get(15).setCurrently(crackerConsumptionDww);
+                    monthlyProductionReportVOs.get(16).setCurrently(crackerConsumptionWo);
+                    monthlyProductionReportVOs.get(17).setCurrently(crackerConsumptionPw);
+                    monthlyProductionReportVOs.get(18).setCurrently(prodWaterCracker);
+                    monthlyProductionReportVOs.get(19).setCurrently(crackerConsumptionNg);
+                    monthlyProductionReportVOs.get(20).setCurrently(crackerConsumptionOffgas);
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+        this.calcTotal(monthlyProductionReportVOs);
+        return monthlyProductionReportVOs;
     }
 
     /**
@@ -850,7 +965,54 @@ public class TMonthlyProductionReportServiceImpl implements ITMonthlyProductionR
      */
     @Override
     public List<MonthlyProductionReportVO> selectCrackerEnergyConsumptionByYear(Long year) {
-        return  null;
+        // 当前日期
+        Date currentDate = new Date();
+        // 当前年份
+        Long currentYear = Long.parseLong(currentDate.getYear() + 1900 + "");
+        // 当前月份
+        Long currentMonth = Long.parseLong(currentDate.getMonth() + 1 + "");
+        // 从数据库中查出的当前year的月报数据集合,每个元素对应当前year某个月的数据
+        List<TMonthlyProductionReport> tMonthlyProductionReports = tMonthlyProductionReportMapper.selectCrackerEnergyConsumptionByYear(year);
+        // 前端月报数据集合,每个元素对应当前某个指标的title、unit、1~12月的数据以及年度汇总数据
+        List<MonthlyProductionReportVO> monthlyProductionReportVOs = new ArrayList<>();
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_energy_te_teo","total energy","TEO"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_energy_te_tec","total energy","TEC"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_energy_ee_kgeot","Energy/ethylene","kgEO/t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cracker_energy_ee_kgect","Energy/ethylene","kgEC/t"));
+        // 遍历从数据库中查出的月报数据集合,结果为0~12条数据不等
+        for (int i = 0; i < tMonthlyProductionReports.size(); i++) {
+            TMonthlyProductionReport tMonthlyProductionReport = tMonthlyProductionReports.get(i);
+            String crackerEnergyTeTeo = tMonthlyProductionReport.getCrackerEnergyTeTeo();
+            String crackerEnergyTeTec = tMonthlyProductionReport.getCrackerEnergyTeTec();
+            String crackerEnergyEeKgeot = tMonthlyProductionReport.getCrackerEnergyEeKgeot();
+            String crackerEnergyEeKgect = tMonthlyProductionReport.getCrackerEnergyEeKgect();
+            Long reportMonth = tMonthlyProductionReport.getReportMonth();   // 当前元素的所属月份
+            Long reportYear = tMonthlyProductionReport.getReportYear();     // 当前元素的所属年份
+            // 前端数据集合的class
+            Class clazz = null;
+            // 当前元素调用的set方法
+            Method method = null;
+            try {
+                clazz = Class.forName("com.ruoyi.project.production.service.impl.vo.MonthlyProductionReportVO");
+                method = this.getSetMethod(reportMonth, clazz);
+                // 按照当前元素的所属月份调取相应set方法
+                method.invoke(monthlyProductionReportVOs.get(0), crackerEnergyTeTeo);
+                method.invoke(monthlyProductionReportVOs.get(1), crackerEnergyTeTec);
+                method.invoke(monthlyProductionReportVOs.get(2), crackerEnergyEeKgeot);
+                method.invoke(monthlyProductionReportVOs.get(3), crackerEnergyEeKgect);
+                // 当前年份=所属年份,当前月份=所属月份
+                if (currentMonth.equals(reportMonth) && currentYear.equals(reportYear)) {
+                    monthlyProductionReportVOs.get(0).setCurrently(crackerEnergyTeTeo);
+                    monthlyProductionReportVOs.get(1).setCurrently(crackerEnergyTeTec);
+                    monthlyProductionReportVOs.get(2).setCurrently(crackerEnergyEeKgeot);
+                    monthlyProductionReportVOs.get(3).setCurrently(crackerEnergyEeKgect);
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+        this.calcTotal(monthlyProductionReportVOs);
+        return monthlyProductionReportVOs;
     }
 
     /**
@@ -858,7 +1020,102 @@ public class TMonthlyProductionReportServiceImpl implements ITMonthlyProductionR
      */
     @Override
     public List<MonthlyProductionReportVO> selectAromaticsUtilityConsumptionByYear(Long year) {
-        return  null;
+        // 当前日期
+        Date currentDate = new Date();
+        // 当前年份
+        Long currentYear = Long.parseLong(currentDate.getYear() + 1900 + "");
+        // 当前月份
+        Long currentMonth = Long.parseLong(currentDate.getMonth() + 1 + "");
+        // 从数据库中查出的当前year的月报数据集合,每个元素对应当前year某个月的数据
+        List<TMonthlyProductionReport> tMonthlyProductionReports = tMonthlyProductionReportMapper.selectAromaticsUtilityConsumptionByYear(year);
+        // 前端月报数据集合,每个元素对应当前某个指标的title、unit、1~12月的数据以及年度汇总数据
+        List<MonthlyProductionReportVO> monthlyProductionReportVOs = new ArrayList<>();
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("shp_pgu_aeu","SS","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("hp_pgu_aeu","HS","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("mp_pgu_aeu","MS","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("lp_pgu_aeu","LS","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("electricity_pgu_aeu","Electricity","MWh"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("cooling_water_pgu_aeu","coiling water","kt"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("aromatics_consumption_pw","Potable Water","km3"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("prod_water_pgu_aeu","Production Water","km3"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("hp_bfw_pgu_aeu","BFW","km3"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("n2_pgu_aeu","N2","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("pa_ia_pgu_aeu","PA&IA","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("turbine_con_pgu_aeu","Turbine Condensate","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("aromatics_consumption_cww","Contaminated WW","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("aromatics_consumption_pww","Production WW","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("aromatics_consumption_dww","DWW","t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("aromatics_consumption_wl","Waste Liquid","t"));
+        // 遍历从数据库中查出的月报数据集合,结果为0~12条数据不等
+        for (int i = 0; i < tMonthlyProductionReports.size(); i++) {
+            TMonthlyProductionReport tMonthlyProductionReport = tMonthlyProductionReports.get(i);
+            String shpPguAeu = tMonthlyProductionReport.getShpPguAeu();
+            String hpPguAeu = tMonthlyProductionReport.getHpPguAeu();
+            String mpPguAeu = tMonthlyProductionReport.getMpPguAeu();
+            String lpPguAeu = tMonthlyProductionReport.getLpPguAeu();
+            String electricityPguAeu = tMonthlyProductionReport.getElectricityPguAeu();
+            String coolingWaterPguAeu = tMonthlyProductionReport.getCoolingWaterPguAeu();
+            String aromaticsConsumptionPw = tMonthlyProductionReport.getAromaticsConsumptionPw();
+            String prodWaterPguAeu = tMonthlyProductionReport.getProdWaterPguAeu();
+            String hpBfwPguAeu = tMonthlyProductionReport.getHpBfwPguAeu();
+            String n2PguAeu = tMonthlyProductionReport.getN2PguAeu();
+            String paIaPguAeu = tMonthlyProductionReport.getPaIaPguAeu();
+            String turbineConPguAeu = tMonthlyProductionReport.getTurbineConPguAeu();
+            String aromaticsConsumptionCww = tMonthlyProductionReport.getAromaticsConsumptionCww();
+            String aromaticsConsumptionPww = tMonthlyProductionReport.getAromaticsConsumptionPww();
+            String aromaticsConsumptionDww = tMonthlyProductionReport.getAromaticsConsumptionDww();
+            String aromaticsConsumptionWl = tMonthlyProductionReport.getAromaticsConsumptionWl();
+            Long reportMonth = tMonthlyProductionReport.getReportMonth();   // 当前元素的所属月份
+            Long reportYear = tMonthlyProductionReport.getReportYear();     // 当前元素的所属年份
+            // 前端数据集合的class
+            Class clazz = null;
+            // 当前元素调用的set方法
+            Method method = null;
+            try {
+                clazz = Class.forName("com.ruoyi.project.production.service.impl.vo.MonthlyProductionReportVO");
+                method = this.getSetMethod(reportMonth, clazz);
+                // 按照当前元素的所属月份调取相应set方法
+                method.invoke(monthlyProductionReportVOs.get(0), shpPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(1), hpPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(2), mpPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(3), lpPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(4), electricityPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(5), coolingWaterPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(6), aromaticsConsumptionPw);
+                method.invoke(monthlyProductionReportVOs.get(7), prodWaterPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(8), hpBfwPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(9), n2PguAeu);
+                method.invoke(monthlyProductionReportVOs.get(10), paIaPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(11), turbineConPguAeu);
+                method.invoke(monthlyProductionReportVOs.get(12), aromaticsConsumptionCww);
+                method.invoke(monthlyProductionReportVOs.get(13), aromaticsConsumptionPww);
+                method.invoke(monthlyProductionReportVOs.get(14), aromaticsConsumptionDww);
+                method.invoke(monthlyProductionReportVOs.get(15), aromaticsConsumptionWl);
+                // 当前年份=所属年份,当前月份=所属月份
+                if (currentMonth.equals(reportMonth) && currentYear.equals(reportYear)) {
+                    monthlyProductionReportVOs.get(0).setCurrently(shpPguAeu);
+                    monthlyProductionReportVOs.get(1).setCurrently(hpPguAeu);
+                    monthlyProductionReportVOs.get(2).setCurrently(mpPguAeu);
+                    monthlyProductionReportVOs.get(3).setCurrently(lpPguAeu);
+                    monthlyProductionReportVOs.get(4).setCurrently(electricityPguAeu);
+                    monthlyProductionReportVOs.get(5).setCurrently(coolingWaterPguAeu);
+                    monthlyProductionReportVOs.get(6).setCurrently(aromaticsConsumptionPw);
+                    monthlyProductionReportVOs.get(7).setCurrently(prodWaterPguAeu);
+                    monthlyProductionReportVOs.get(8).setCurrently(hpBfwPguAeu);
+                    monthlyProductionReportVOs.get(9).setCurrently(n2PguAeu);
+                    monthlyProductionReportVOs.get(10).setCurrently(paIaPguAeu);
+                    monthlyProductionReportVOs.get(11).setCurrently(turbineConPguAeu);
+                    monthlyProductionReportVOs.get(12).setCurrently(aromaticsConsumptionCww);
+                    monthlyProductionReportVOs.get(13).setCurrently(aromaticsConsumptionPww);
+                    monthlyProductionReportVOs.get(14).setCurrently(aromaticsConsumptionDww);
+                    monthlyProductionReportVOs.get(15).setCurrently(aromaticsConsumptionWl);
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+        this.calcTotal(monthlyProductionReportVOs);
+        return monthlyProductionReportVOs;
     }
 
     /**
@@ -866,7 +1123,54 @@ public class TMonthlyProductionReportServiceImpl implements ITMonthlyProductionR
      */
     @Override
     public List<MonthlyProductionReportVO> selectAromaticsEnergyConsumptionByYear(Long year) {
-        return  null;
+        // 当前日期
+        Date currentDate = new Date();
+        // 当前年份
+        Long currentYear = Long.parseLong(currentDate.getYear() + 1900 + "");
+        // 当前月份
+        Long currentMonth = Long.parseLong(currentDate.getMonth() + 1 + "");
+        // 从数据库中查出的当前year的月报数据集合,每个元素对应当前year某个月的数据
+        List<TMonthlyProductionReport> tMonthlyProductionReports = tMonthlyProductionReportMapper.selectAromaticsEnergyConsumptionByYear(year);
+        // 前端月报数据集合,每个元素对应当前某个指标的title、unit、1~12月的数据以及年度汇总数据
+        List<MonthlyProductionReportVO> monthlyProductionReportVOs = new ArrayList<>();
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("aromatics_energy_te_teo","total energy","TEO"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("aromatics_energy_te_tec","total energy","TEC"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("aromatics_energy_ee_kgeot","Energy/ethylene","kgEO/t"));
+        monthlyProductionReportVOs.add(new MonthlyProductionReportVO("aromatics_energy_ee_kgect","Energy/ethylene","kgEC/t"));
+        // 遍历从数据库中查出的月报数据集合,结果为0~12条数据不等
+        for (int i = 0; i < tMonthlyProductionReports.size(); i++) {
+            TMonthlyProductionReport tMonthlyProductionReport = tMonthlyProductionReports.get(i);
+            String aromaticsEnergyTeTeo = tMonthlyProductionReport.getAromaticsEnergyTeTeo();
+            String aromaticsEnergyTeTec = tMonthlyProductionReport.getAromaticsEnergyTeTec();
+            String aromaticsEnergyEeKgeot = tMonthlyProductionReport.getAromaticsEnergyEeKgeot();
+            String aromaticsEnergyEeKgect = tMonthlyProductionReport.getAromaticsEnergyEeKgect();
+            Long reportMonth = tMonthlyProductionReport.getReportMonth();   // 当前元素的所属月份
+            Long reportYear = tMonthlyProductionReport.getReportYear();     // 当前元素的所属年份
+            // 前端数据集合的class
+            Class clazz = null;
+            // 当前元素调用的set方法
+            Method method = null;
+            try {
+                clazz = Class.forName("com.ruoyi.project.production.service.impl.vo.MonthlyProductionReportVO");
+                method = this.getSetMethod(reportMonth, clazz);
+                // 按照当前元素的所属月份调取相应set方法
+                method.invoke(monthlyProductionReportVOs.get(0), aromaticsEnergyTeTeo);
+                method.invoke(monthlyProductionReportVOs.get(1), aromaticsEnergyTeTec);
+                method.invoke(monthlyProductionReportVOs.get(2), aromaticsEnergyEeKgeot);
+                method.invoke(monthlyProductionReportVOs.get(3), aromaticsEnergyEeKgect);
+                // 当前年份=所属年份,当前月份=所属月份
+                if (currentMonth.equals(reportMonth) && currentYear.equals(reportYear)) {
+                    monthlyProductionReportVOs.get(0).setCurrently(aromaticsEnergyTeTeo);
+                    monthlyProductionReportVOs.get(1).setCurrently(aromaticsEnergyTeTec);
+                    monthlyProductionReportVOs.get(2).setCurrently(aromaticsEnergyEeKgeot);
+                    monthlyProductionReportVOs.get(3).setCurrently(aromaticsEnergyEeKgect);
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+        this.calcTotal(monthlyProductionReportVOs);
+        return monthlyProductionReportVOs;
     }
 
     /**

+ 124 - 0
master/src/main/java/com/ruoyi/project/production/service/impl/thread/SyncMonthlyThread.java

@@ -339,6 +339,130 @@ public class SyncMonthlyThread extends Thread {
         }
         monthly.setTotalLossRate(totalLossRate.toString());
 
+        String fuelGasOffgasCrackerStr = daily.getFuelGasOffgasCracker();
+        String shpCrackerStr = daily.getShpCracker();
+        String hpCrackerStr = daily.getHpCracker();
+        String mpCrackerStr = daily.getMpCracker();
+        String lpCrackerStr = daily.getLpCracker();
+        String electricityCrackerStr = daily.getElectricityCracker();
+        String coolingWaterCrackerStr = daily.getCoolingWaterCracker();
+        String paIaCrackerStr = daily.getPaIaCracker();
+        String n2CrackerStr = daily.getN2Cracker();
+        String hpBfwCrackerStr = daily.getHpBfwCracker();
+        String polishedConCrackerStr = daily.getPolishedConCracker();
+        String turbineConCrackerStr = daily.getTurbineConCracker();
+        String prodWaterCrackerStr = daily.getProdWaterCracker();
+        String shpPguAeuStr = daily.getShpPguAeu();
+        String hpPguAeuStr = daily.getHpPguAeu();
+        String mpPguAeuStr = daily.getMpPguAeu();
+        String lpPguAeuStr = daily.getLpPguAeu();
+        String electricityPguAeuStr = daily.getElectricityPguAeu();
+        String coolingWaterPguAeuStr = daily.getCoolingWaterPguAeu();
+        String prodWaterPguAeuStr = daily.getProdWaterPguAeu();
+        String hpBfwPguAeuStr = daily.getHpBfwPguAeu();
+        String n2PguAeuStr = daily.getN2PguAeu();
+        String paIaPguAeuStr = daily.getPaIaPguAeu();
+        String turbineConPguAeuStr = daily.getTurbineConPguAeu();
+        BigDecimal fuelGasOffgasCracker = new BigDecimal(fuelGasOffgasCrackerStr == null ? "0" : fuelGasOffgasCrackerStr);
+        BigDecimal shpCracker = new BigDecimal(shpCrackerStr == null ? "0" : shpCrackerStr);
+        BigDecimal hpCracker = new BigDecimal(hpCrackerStr == null ? "0" : hpCrackerStr);
+        BigDecimal mpCracker = new BigDecimal(mpCrackerStr == null ? "0" : mpCrackerStr);
+        BigDecimal lpCracker = new BigDecimal(lpCrackerStr == null ? "0" : lpCrackerStr);
+        BigDecimal electricityCracker = new BigDecimal(electricityCrackerStr == null ? "0" : electricityCrackerStr);
+        BigDecimal coolingWaterCracker = new BigDecimal(coolingWaterCrackerStr == null ? "0" : coolingWaterCrackerStr);
+        BigDecimal paIaCracker = new BigDecimal(paIaCrackerStr == null ? "0" : paIaCrackerStr);
+        BigDecimal n2Cracker = new BigDecimal(n2CrackerStr == null ? "0" : n2CrackerStr);
+        BigDecimal hpBfwCracker = new BigDecimal(hpBfwCrackerStr == null ? "0" : hpBfwCrackerStr);
+        BigDecimal polishedConCracker = new BigDecimal(polishedConCrackerStr == null ? "0" : polishedConCrackerStr);
+        BigDecimal turbineConCracker = new BigDecimal(turbineConCrackerStr == null ? "0" : turbineConCrackerStr);
+        BigDecimal prodWaterCracker = new BigDecimal(prodWaterCrackerStr == null ? "0" : prodWaterCrackerStr);
+        BigDecimal crackerEnergyTeTeo = new BigDecimal("0");
+//        crackerEnergyTeTeo = (fuelGasOffgasCracker.multiply(new BigDecimal("1.2")))
+//                .add(shpCracker.multiply(new BigDecimal("0.092")))
+//                .add(hpCracker.multiply(new BigDecimal("0.088")))
+//                .add(mpCracker.multiply(new BigDecimal("0.08")))
+//                .add(lpCracker.multiply(new BigDecimal("0.066")))
+//                .add(electricityCracker.multiply(new BigDecimal("0.233")))
+//                .add(coolingWaterCracker.multiply(new BigDecimal("0.1")))
+//                .add((D93+D94).multiply(new BigDecimal("0.038")))
+//                .add(n2Cracker.multiply(new BigDecimal("0.15")))
+//                .add(hpBfwCracker.multiply(new BigDecimal("0.0092")))
+//                .add(polishedConCracker.multiply(new BigDecimal("0.0023")))
+//                .add(turbineConCracker.multiply(new BigDecimal("0.00365")))
+//                .add((D103+D104).multiply(new BigDecimal("0.00017")));
+        BigDecimal crackerEnergyTeTec = new BigDecimal("0");
+        crackerEnergyTeTec = crackerEnergyTeTeo.divide(new BigDecimal("0.7"), 2, RoundingMode.HALF_UP);
+        BigDecimal crackerEnergyEeKgeot = new BigDecimal("0");
+        if (ethylenProduced.compareTo(BigDecimal.ZERO) != 0) {
+            crackerEnergyEeKgeot = crackerEnergyTeTeo.divide(ethylenProduced, 2, RoundingMode.HALF_UP)
+                    .multiply(new BigDecimal("1000"));
+        }
+        BigDecimal crackerEnergyEeKgect = new BigDecimal("0");
+        if (ethylenProduced.compareTo(BigDecimal.ZERO) != 0) {
+            crackerEnergyEeKgect = crackerEnergyTeTec.divide(ethylenProduced, 2, RoundingMode.HALF_UP)
+                    .multiply(new BigDecimal("1000"));
+        }
+        BigDecimal shpPguAeu = new BigDecimal(shpPguAeuStr == null ? "0" : shpPguAeuStr);
+        BigDecimal hpPguAeu = new BigDecimal(hpPguAeuStr == null ? "0" : hpPguAeuStr);
+        BigDecimal mpPguAeu = new BigDecimal(mpPguAeuStr == null ? "0" : mpPguAeuStr);
+        BigDecimal lpPguAeu = new BigDecimal(lpPguAeuStr == null ? "0" : lpPguAeuStr);
+        BigDecimal electricityPguAeu = new BigDecimal(electricityPguAeuStr == null ? "0" : electricityPguAeuStr);
+        BigDecimal coolingWaterPguAeu = new BigDecimal(coolingWaterPguAeuStr == null ? "0" : coolingWaterPguAeuStr);
+        BigDecimal prodWaterPguAeu = new BigDecimal(prodWaterPguAeuStr == null ? "0" : prodWaterPguAeuStr);
+        BigDecimal hpBfwPguAeu = new BigDecimal(hpBfwPguAeuStr == null ? "0" : hpBfwPguAeuStr);
+        BigDecimal n2PguAeu = new BigDecimal(n2PguAeuStr == null ? "0" : n2PguAeuStr);
+        BigDecimal paIaPguAeu = new BigDecimal(paIaPguAeuStr == null ? "0" : paIaPguAeuStr);
+        BigDecimal turbineConPguAeu = new BigDecimal(turbineConPguAeuStr == null ? "0" : turbineConPguAeuStr);
+        BigDecimal aromaticsEnergyTeTeo = new BigDecimal("0");
+        aromaticsEnergyTeTeo = (shpPguAeu.multiply(new BigDecimal("0.092")))
+                .add(hpPguAeu.multiply(new BigDecimal("0.088")))
+                .add(mpPguAeu.multiply(new BigDecimal("0.08")))
+                .add(lpPguAeu.multiply(new BigDecimal("0.0666")))
+                .add(electricityPguAeu.multiply(new BigDecimal("0.233")))
+                .add(coolingWaterPguAeu.multiply(new BigDecimal("0.1")));
+        BigDecimal aromaticsEnergyTeTec = new BigDecimal("0");
+        aromaticsEnergyTeTec = aromaticsEnergyTeTeo.divide(new BigDecimal("0.7"), 2, RoundingMode.HALF_UP);
+        BigDecimal aromaticsEnergyEeKgeot = new BigDecimal("0");
+        if (pguBtxProduced.compareTo(BigDecimal.ZERO) != 0) {
+            aromaticsEnergyEeKgeot = aromaticsEnergyTeTeo.divide(pguBtxProduced, 2, RoundingMode.HALF_UP)
+                    .multiply(new BigDecimal("1000"));
+        }
+        BigDecimal aromaticsEnergyEeKgect = new BigDecimal("0");
+        aromaticsEnergyEeKgect = aromaticsEnergyEeKgeot.divide(new BigDecimal("0.7"), 2, RoundingMode.HALF_UP);
+        monthly.setFuelGasOffgasCracker(fuelGasOffgasCracker.toString());
+        monthly.setShpCracker(shpCracker.toString());
+        monthly.setHpCracker(hpCracker.toString());
+        monthly.setMpCracker(mpCracker.toString());
+        monthly.setLpCracker(lpCracker.toString());
+        monthly.setElectricityCracker(electricityCracker.toString());
+        monthly.setCoolingWaterCracker(coolingWaterCracker.toString());
+        monthly.setPaIaCracker(paIaCracker.toString());
+        monthly.setN2Cracker(n2Cracker.toString());
+        monthly.setHpBfwCracker(hpBfwCracker.toString());
+        monthly.setPolishedConCracker(polishedConCracker.toString());
+        monthly.setTurbineConCracker(turbineConCracker.toString());
+        monthly.setProdWaterCracker(prodWaterCracker.toString());
+        monthly.setCrackerConsumptionOffgas(offgasProduced.toString());
+        monthly.setCrackerEnergyTeTeo(crackerEnergyTeTeo.toString());
+        monthly.setCrackerEnergyTeTec(crackerEnergyTeTec.toString());
+        monthly.setCrackerEnergyEeKgeot(crackerEnergyEeKgeot.toString());
+        monthly.setCrackerEnergyEeKgect(crackerEnergyEeKgect.toString());
+        monthly.setShpPguAeu(shpPguAeu.toString());
+        monthly.setHpPguAeu(hpPguAeu.toString());
+        monthly.setMpPguAeu(mpPguAeu.toString());
+        monthly.setLpPguAeu(lpPguAeu.toString());
+        monthly.setElectricityPguAeu(electricityPguAeu.toString());
+        monthly.setCoolingWaterPguAeu(coolingWaterPguAeu.toString());
+        monthly.setProdWaterPguAeu(prodWaterPguAeu.toString());
+        monthly.setHpBfwPguAeu(hpBfwPguAeu.toString());
+        monthly.setN2PguAeu(n2PguAeu.toString());
+        monthly.setPaIaPguAeu(paIaPguAeu.toString());
+        monthly.setTurbineConPguAeu(turbineConPguAeu.toString());
+        monthly.setAromaticsEnergyTeTeo(aromaticsEnergyTeTeo.toString());
+        monthly.setAromaticsEnergyTeTec(aromaticsEnergyTeTec.toString());
+        monthly.setAromaticsEnergyEeKgeot(aromaticsEnergyEeKgeot.toString());
+        monthly.setAromaticsEnergyEeKgect(aromaticsEnergyEeKgect.toString());
+
         // 查询年份=reportYear,月份=reportMonth的月报数据
         int count = tMonthlyProductionReportMapper.selectTMonthlyProductionReportCountByDate(reportYear, reportMonth);
         if (count == 0) {   // 新增月报数据

+ 25 - 1
master/src/main/resources/mybatis/production/TDailyProductionReportMapper.xml

@@ -669,7 +669,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         sum(d.pgu_offgas_produced) as pguOffgasProduced,
         sum(d.pgu_btx_change) as pguBtxChange,
         sum(d.aeu_toluene_produced) as aeuTolueneProduced,
-        sum(d.aeu_toluene_to_eu) as aeuTolueneToEu
+        sum(d.aeu_toluene_to_eu) as aeuTolueneToEu,
+        sum(d.fuel_gas_offgas_cracker) as fuelGasOffgasCracker,
+        sum(d.shp_cracker) as shpCracker,
+        sum(d.hp_cracker) as hpCracker,
+        sum(d.mp_cracker) as mpCracker,
+        sum(d.lp_cracker) as lpCracker,
+        sum(d.electricity_cracker) as electricityCracker,
+        sum(d.cooling_water_cracker) as coolingWaterCracker,
+        sum(d.pa_ia_cracker) as paIaCracker,
+        sum(d.n2_cracker) as n2Cracker,
+        sum(d.hp_bfw_cracker) as hpBfwCracker,
+        sum(d.polished_con_cracker) as polishedConCracker,
+        sum(d.turbine_con_cracker) as turbineConCracker,
+        sum(d.prod_water_cracker) as prodWaterCracker,
+        sum(d.shp_pgu_aeu) as shpPguAeu,
+        sum(d.hp_pgu_aeu) as hpPguAeu,
+        sum(d.mp_pgu_aeu) as mpPguAeu,
+        sum(d.lp_pgu_aeu) as lpPguAeu,
+        sum(d.electricity_pgu_aeu) as electricityPguAeu,
+        sum(d.cooling_water_pgu_aeu) as coolingWaterPguAeu,
+        sum(d.prod_water_pgu_aeu) as prodWaterPguAeu,
+        sum(d.hp_bfw_pgu_aeu) as hpBfwPguAeu,
+        sum(d.n2_pgu_aeu) as n2PguAeu,
+        sum(d.pa_ia_pgu_aeu) as paIaPguAeu,
+        sum(d.turbine_con_pgu_aeu) as turbineConPguAeu
         from T_DAILY_PRODUCTION_REPORT d
         where extract(year from d.REPORT_DATE) = #{reportYear}
         and extract(month from d.REPORT_DATE) = #{reportMonth}

+ 217 - 4
master/src/main/resources/mybatis/production/TMonthlyProductionReportMapper.xml

@@ -83,6 +83,51 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="c2ProductRate"            column="c2_product_rate"    />
         <result property="c3ProductRate"            column="c3_product_rate"    />
         <result property="c4sProductRate"           column="c4s_product_rate"    />
+        <result property="fuelGasOffgasCracker"     column="fuel_gas_offgas_cracker"    />
+        <result property="shpCracker"               column="shp_cracker"    />
+        <result property="hpCracker"                column="hp_cracker"    />
+        <result property="mpCracker"                column="mp_cracker"    />
+        <result property="lpCracker"                column="lp_cracker"    />
+        <result property="electricityCracker"       column="electricity_cracker"    />
+        <result property="coolingWaterCracker"      column="cooling_water_cracker"    />
+        <result property="crackerConsumptionIa"     column="cracker_consumption_ia"    />
+        <result property="paIaCracker"              column="pa_ia_cracker"    />
+        <result property="n2Cracker"                column="n2_cracker"    />
+        <result property="hpBfwCracker"             column="hp_bfw_cracker"    />
+        <result property="polishedConCracker"       column="polished_con_cracker"    />
+        <result property="crackerConsumptionPww"    column="cracker_consumption_pww"    />
+        <result property="turbineConCracker"        column="turbine_con_cracker"    />
+        <result property="crackerConsumptionCnww"   column="cracker_consumption_cnww"    />
+        <result property="crackerConsumptionDww"    column="cracker_consumption_dww"    />
+        <result property="crackerConsumptionWo"     column="cracker_consumption_wo"    />
+        <result property="crackerConsumptionPw"     column="cracker_consumption_pw"    />
+        <result property="prodWaterCracker"         column="prod_water_cracker"    />
+        <result property="crackerConsumptionNg"     column="cracker_consumption_ng"    />
+        <result property="crackerConsumptionOffgas" column="cracker_consumption_offgas"    />
+        <result property="crackerEnergyTeTeo"       column="cracker_energy_te_teo"    />
+        <result property="crackerEnergyTeTec"       column="cracker_energy_te_tec"    />
+        <result property="crackerEnergyEeKgeot"     column="cracker_energy_ee_kgeot"    />
+        <result property="crackerEnergyEeKgect"     column="cracker_energy_ee_kgect"    />
+        <result property="shpPguAeu"                column="shp_pgu_aeu"    />
+        <result property="hpPguAeu"                 column="hp_pgu_aeu"    />
+        <result property="mpPguAeu"                 column="mp_pgu_aeu"    />
+        <result property="lpPguAeu"                 column="lp_pgu_aeu"    />
+        <result property="electricityPguAeu"        column="electricity_pgu_aeu"    />
+        <result property="coolingWaterPguAeu"       column="cooling_water_pgu_aeu"    />
+        <result property="aromaticsConsumptionPw"   column="aromatics_consumption_pw"    />
+        <result property="prodWaterPguAeu"          column="prod_water_pgu_aeu"    />
+        <result property="hpBfwPguAeu"              column="hp_bfw_pgu_aeu"    />
+        <result property="n2PguAeu"                 column="n2_pgu_aeu"    />
+        <result property="paIaPguAeu"               column="pa_ia_pgu_aeu"    />
+        <result property="turbineConPguAeu"         column="turbine_con_pgu_aeu"    />
+        <result property="aromaticsConsumptionCww"  column="aromatics_consumption_cww"    />
+        <result property="aromaticsConsumptionPww"  column="aromatics_consumption_pww"    />
+        <result property="aromaticsConsumptionDww"  column="aromatics_consumption_dww"    />
+        <result property="aromaticsConsumptionWl"   column="aromatics_consumption_wl"    />
+        <result property="aromaticsEnergyTeTeo"     column="aromatics_energy_te_teo"    />
+        <result property="aromaticsEnergyTeTec"     column="aromatics_energy_te_tec"    />
+        <result property="aromaticsEnergyEeKgeot"   column="aromatics_energy_ee_kgeot"    />
+        <result property="aromaticsEnergyEeKgect"   column="aromatics_energy_ee_kgect"    />
     </resultMap>
 
     <select id="selectCrackerRawMaterialByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult">
@@ -139,10 +184,43 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
              t_monthly_production_report d
         where d.report_year = #{year}
     </select>
-    <select id="selectCrackerUtilityConsumptionByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult"></select>
-    <select id="selectCrackerEnergyConsumptionByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult"></select>
-    <select id="selectAromaticsUtilityConsumptionByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult"></select>
-    <select id="selectAromaticsEnergyConsumptionByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult"></select>
+    <select id="selectCrackerUtilityConsumptionByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult">
+        select
+               d.id, d.report_month, d.report_year, d.fuel_gas_offgas_cracker, d.shp_cracker, d.hp_cracker,
+               d.mp_cracker, d.lp_cracker, d.electricity_cracker, d.cooling_water_cracker, d.cracker_consumption_ia,
+               d.pa_ia_cracker, d.n2_cracker, d.hp_bfw_cracker, d.polished_con_cracker, d.cracker_consumption_pww,
+               d.turbine_con_cracker, d.cracker_consumption_cnww, d.cracker_consumption_dww, d.cracker_consumption_wo,
+               d.cracker_consumption_pw, d.prod_water_cracker, d.cracker_consumption_ng, d.cracker_consumption_offgas
+        from
+             t_monthly_production_report d
+        where d.report_year = #{year}
+    </select>
+    <select id="selectCrackerEnergyConsumptionByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult">
+        select
+               d.id, d.report_month, d.report_year, d.cracker_energy_te_teo, d.cracker_energy_te_tec,
+               d.cracker_energy_ee_kgeot, d.cracker_energy_ee_kgect
+        from
+             t_monthly_production_report d
+        where d.report_year = #{year}
+    </select>
+    <select id="selectAromaticsUtilityConsumptionByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult">
+        select
+               d.id, d.report_month, d.report_year, d.shp_pgu_aeu, d.hp_pgu_aeu, d.mp_pgu_aeu, d.lp_pgu_aeu,
+               d.electricity_pgu_aeu, d.cooling_water_pgu_aeu, d.aromatics_consumption_pw, d.prod_water_pgu_aeu,
+               d.hp_bfw_pgu_aeu, d.n2_pgu_aeu, d.pa_ia_pgu_aeu, d.turbine_con_pgu_aeu, d.aromatics_consumption_cww,
+               d.aromatics_consumption_pww, d.aromatics_consumption_dww, d.aromatics_consumption_wl
+        from
+             t_monthly_production_report d
+        where d.report_year = #{year}
+    </select>
+    <select id="selectAromaticsEnergyConsumptionByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult">
+        select
+               d.id, d.report_month, d.report_year, d.aromatics_energy_te_teo, d.aromatics_energy_te_tec,
+               d.aromatics_energy_ee_kgeot, d.aromatics_energy_ee_kgect
+        from
+             t_monthly_production_report d
+        where d.report_year = #{year}
+    </select>
     <select id="selectPlantLoadByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult"></select>
     <select id="selectCostFrEthyleneByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult"></select>
     <select id="selectRuningRateByYear" parameterType="Long" resultMap="TMonthlyProductionReportResult"></select>
@@ -252,6 +330,51 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="c2ProductRate != null">c2_product_rate,</if>
             <if test="c3ProductRate != null">c3_product_rate,</if>
             <if test="c4sProductRate != null">c4s_product_rate,</if>
+            <if test="fuelGasOffgasCracker != null">fuel_gas_offgas_cracker,</if>
+            <if test="shpCracker != null">shp_cracker,</if>
+            <if test="hpCracker != null">hp_cracker,</if>
+            <if test="mpCracker != null">mp_cracker,</if>
+            <if test="lpCracker != null">lp_cracker,</if>
+            <if test="electricityCracker != null">electricity_cracker,</if>
+            <if test="coolingWaterCracker != null">cooling_water_cracker,</if>
+            <if test="crackerConsumptionIa != null">cracker_consumption_ia,</if>
+            <if test="paIaCracker != null">pa_ia_cracker,</if>
+            <if test="n2Cracker != null">n2_cracker,</if>
+            <if test="hpBfwCracker != null">hp_bfw_cracker,</if>
+            <if test="polishedConCracker != null">polished_con_cracker,</if>
+            <if test="crackerConsumptionPww != null">cracker_consumption_pww,</if>
+            <if test="turbineConCracker != null">turbine_con_cracker,</if>
+            <if test="crackerConsumptionCnww != null">cracker_consumption_cnww,</if>
+            <if test="crackerConsumptionDww != null">cracker_consumption_dww,</if>
+            <if test="crackerConsumptionWo != null">cracker_consumption_wo,</if>
+            <if test="crackerConsumptionPw != null">cracker_consumption_pw,</if>
+            <if test="prodWaterCracker != null">prod_water_cracker,</if>
+            <if test="crackerConsumptionNg != null">cracker_consumption_ng,</if>
+            <if test="crackerConsumptionOffgas != null">cracker_consumption_offgas,</if>
+            <if test="crackerEnergyTeTeo != null">cracker_energy_te_teo,</if>
+            <if test="crackerEnergyTeTec != null">cracker_energy_te_tec,</if>
+            <if test="crackerEnergyEeKgeot != null">cracker_energy_ee_kgeot,</if>
+            <if test="crackerEnergyEeKgect != null">cracker_energy_ee_kgect,</if>
+            <if test="shpPguAeu != null">shp_pgu_aeu,</if>
+            <if test="hpPguAeu != null">hp_pgu_aeu,</if>
+            <if test="mpPguAeu != null">mp_pgu_aeu,</if>
+            <if test="lpPguAeu != null">lp_pgu_aeu,</if>
+            <if test="electricityPguAeu != null">electricity_pgu_aeu,</if>
+            <if test="coolingWaterPguAeu != null">cooling_water_pgu_aeu,</if>
+            <if test="aromaticsConsumptionPw != null">aromatics_consumption_pw,</if>
+            <if test="prodWaterPguAeu != null">prod_water_pgu_aeu,</if>
+            <if test="hpBfwPguAeu != null">hp_bfw_pgu_aeu,</if>
+            <if test="n2PguAeu != null">n2_pgu_aeu,</if>
+            <if test="paIaPguAeu != null">pa_ia_pgu_aeu,</if>
+            <if test="turbineConPguAeu != null">turbine_con_pgu_aeu,</if>
+            <if test="aromaticsConsumptionCww != null">aromatics_consumption_cww,</if>
+            <if test="aromaticsConsumptionPww != null">aromatics_consumption_pww,</if>
+            <if test="aromaticsConsumptionDww != null">aromatics_consumption_dww,</if>
+            <if test="aromaticsConsumptionWl != null">aromatics_consumption_wl,</if>
+            <if test="aromaticsEnergyTeTeo != null">aromatics_energy_te_teo,</if>
+            <if test="aromaticsEnergyTeTec != null">aromatics_energy_te_tec,</if>
+            <if test="aromaticsEnergyEeKgeot != null">aromatics_energy_ee_kgeot,</if>
+            <if test="aromaticsEnergyEeKgect != null">aromatics_energy_ee_kgect,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="id != null">#{id},</if>
@@ -332,6 +455,51 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="c2ProductRate != null">#{c2ProductRate},</if>
             <if test="c3ProductRate != null">#{c3ProductRate},</if>
             <if test="c4sProductRate != null">#{c4sProductRate},</if>
+            <if test="fuelGasOffgasCracker != null">#{fuelGasOffgasCracker},</if>
+            <if test="shpCracker != null">#{shpCracker},</if>
+            <if test="hpCracker != null">#{hpCracker},</if>
+            <if test="mpCracker != null">#{mpCracker},</if>
+            <if test="lpCracker != null">#{lpCracker},</if>
+            <if test="electricityCracker != null">#{electricityCracker},</if>
+            <if test="coolingWaterCracker != null">#{coolingWaterCracker},</if>
+            <if test="crackerConsumptionIa != null">#{crackerConsumptionIa},</if>
+            <if test="paIaCracker != null">#{paIaCracker},</if>
+            <if test="n2Cracker != null">#{n2Cracker},</if>
+            <if test="hpBfwCracker != null">#{hpBfwCracker},</if>
+            <if test="polishedConCracker != null">#{polishedConCracker},</if>
+            <if test="crackerConsumptionPww != null">#{crackerConsumptionPww},</if>
+            <if test="turbineConCracker != null">#{turbineConCracker},</if>
+            <if test="crackerConsumptionCnww != null">#{crackerConsumptionCnww},</if>
+            <if test="crackerConsumptionDww != null">#{crackerConsumptionDww},</if>
+            <if test="crackerConsumptionWo != null">#{crackerConsumptionWo},</if>
+            <if test="crackerConsumptionPw != null">#{crackerConsumptionPw},</if>
+            <if test="prodWaterCracker != null">#{prodWaterCracker},</if>
+            <if test="crackerConsumptionNg != null">#{crackerConsumptionNg},</if>
+            <if test="crackerConsumptionOffgas != null">#{crackerConsumptionOffgas},</if>
+            <if test="crackerEnergyTeTeo != null">#{crackerEnergyTeTeo},</if>
+            <if test="crackerEnergyTeTec != null">#{crackerEnergyTeTec},</if>
+            <if test="crackerEnergyEeKgeot != null">#{crackerEnergyEeKgeot},</if>
+            <if test="crackerEnergyEeKgect != null">#{crackerEnergyEeKgect},</if>
+            <if test="shpPguAeu != null">#{shpPguAeu},</if>
+            <if test="hpPguAeu != null">#{hpPguAeu},</if>
+            <if test="mpPguAeu != null">#{mpPguAeu},</if>
+            <if test="lpPguAeu != null">#{lpPguAeu},</if>
+            <if test="electricityPguAeu != null">#{electricityPguAeu},</if>
+            <if test="coolingWaterPguAeu != null">#{coolingWaterPguAeu},</if>
+            <if test="aromaticsConsumptionPw != null">#{aromaticsConsumptionPw},</if>
+            <if test="prodWaterPguAeu != null">#{prodWaterPguAeu},</if>
+            <if test="hpBfwPguAeu != null">#{hpBfwPguAeu},</if>
+            <if test="n2PguAeu != null">#{n2PguAeu},</if>
+            <if test="paIaPguAeu != null">#{paIaPguAeu},</if>
+            <if test="turbineConPguAeu != null">#{turbineConPguAeu},</if>
+            <if test="aromaticsConsumptionCww != null">#{aromaticsConsumptionCww},</if>
+            <if test="aromaticsConsumptionPww != null">#{aromaticsConsumptionPww},</if>
+            <if test="aromaticsConsumptionDww != null">#{aromaticsConsumptionDww},</if>
+            <if test="aromaticsConsumptionWl != null">#{aromaticsConsumptionWl},</if>
+            <if test="aromaticsEnergyTeTeo != null">#{aromaticsEnergyTeTeo},</if>
+            <if test="aromaticsEnergyTeTec != null">#{aromaticsEnergyTeTec},</if>
+            <if test="aromaticsEnergyEeKgeot != null">#{aromaticsEnergyEeKgeot},</if>
+            <if test="aromaticsEnergyEeKgect != null">#{aromaticsEnergyEeKgect},</if>
         </trim>
     </insert>
 
@@ -413,6 +581,51 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="c2ProductRate != null">c2_product_rate = #{c2ProductRate},</if>
             <if test="c3ProductRate != null">c3_product_rate = #{c3ProductRate},</if>
             <if test="c4sProductRate != null">c4s_product_rate = #{c4sProductRate},</if>
+            <if test="fuelGasOffgasCracker != null">fuel_gas_offgas_cracker = #{fuelGasOffgasCracker},</if>
+            <if test="shpCracker != null">shp_cracker = #{shpCracker},</if>
+            <if test="hpCracker != null">hp_cracker = #{hpCracker},</if>
+            <if test="mpCracker != null">mp_cracker = #{mpCracker},</if>
+            <if test="lpCracker != null">lp_cracker = #{lpCracker},</if>
+            <if test="electricityCracker != null">electricity_cracker = #{electricityCracker},</if>
+            <if test="coolingWaterCracker != null">cooling_water_cracker = #{coolingWaterCracker},</if>
+            <if test="crackerConsumptionIa != null">cracker_consumption_ia = #{crackerConsumptionIa},</if>
+            <if test="paIaCracker != null">pa_ia_cracker = #{paIaCracker},</if>
+            <if test="n2Cracker != null">n2_cracker = #{n2Cracker},</if>
+            <if test="hpBfwCracker != null">hp_bfw_cracker = #{hpBfwCracker},</if>
+            <if test="polishedConCracker != null">polished_con_cracker = #{polishedConCracker},</if>
+            <if test="crackerConsumptionPww != null">cracker_consumption_pww = #{crackerConsumptionPww},</if>
+            <if test="turbineConCracker != null">turbine_con_cracker = #{turbineConCracker},</if>
+            <if test="crackerConsumptionCnww != null">cracker_consumption_cnww = #{crackerConsumptionCnww},</if>
+            <if test="crackerConsumptionDww != null">cracker_consumption_dww = #{crackerConsumptionDww},</if>
+            <if test="crackerConsumptionWo != null">cracker_consumption_wo = #{crackerConsumptionWo},</if>
+            <if test="crackerConsumptionPw != null">cracker_consumption_pw = #{crackerConsumptionPw},</if>
+            <if test="prodWaterCracker != null">prod_water_cracker = #{prodWaterCracker},</if>
+            <if test="crackerConsumptionNg != null">cracker_consumption_ng = #{crackerConsumptionNg},</if>
+            <if test="crackerConsumptionOffgas != null">cracker_consumption_offgas = #{crackerConsumptionOffgas},</if>
+            <if test="crackerEnergyTeTeo != null">cracker_energy_te_teo = #{crackerEnergyTeTeo},</if>
+            <if test="crackerEnergyTeTec != null">cracker_energy_te_tec = #{crackerEnergyTeTec},</if>
+            <if test="crackerEnergyEeKgeot != null">cracker_energy_ee_kgeot = #{crackerEnergyEeKgeot},</if>
+            <if test="crackerEnergyEeKgect != null">cracker_energy_ee_kgect = #{crackerEnergyEeKgect},</if>
+            <if test="shpPguAeu != null">shp_pgu_aeu = #{shpPguAeu},</if>
+            <if test="hpPguAeu != null">hp_pgu_aeu = #{hpPguAeu},</if>
+            <if test="mpPguAeu != null">mp_pgu_aeu = #{mpPguAeu},</if>
+            <if test="lpPguAeu != null">lp_pgu_aeu = #{lpPguAeu},</if>
+            <if test="electricityPguAeu != null">electricity_pgu_aeu = #{electricityPguAeu},</if>
+            <if test="coolingWaterPguAeu != null">cooling_water_pgu_aeu = #{coolingWaterPguAeu},</if>
+            <if test="aromaticsConsumptionPw != null">aromatics_consumption_pw = #{aromaticsConsumptionPw},</if>
+            <if test="prodWaterPguAeu != null">prod_water_pgu_aeu = #{prodWaterPguAeu},</if>
+            <if test="hpBfwPguAeu != null">hp_bfw_pgu_aeu = #{hpBfwPguAeu},</if>
+            <if test="n2PguAeu != null">n2_pgu_aeu = #{n2PguAeu},</if>
+            <if test="paIaPguAeu != null">pa_ia_pgu_aeu = #{paIaPguAeu},</if>
+            <if test="turbineConPguAeu != null">turbine_con_pgu_aeu = #{turbineConPguAeu},</if>
+            <if test="aromaticsConsumptionCww != null">aromatics_consumption_cww = #{aromaticsConsumptionCww},</if>
+            <if test="aromaticsConsumptionPww != null">aromatics_consumption_pww = #{aromaticsConsumptionPww},</if>
+            <if test="aromaticsConsumptionDww != null">aromatics_consumption_dww = #{aromaticsConsumptionDww},</if>
+            <if test="aromaticsConsumptionWl != null">aromatics_consumption_wl = #{aromaticsConsumptionWl},</if>
+            <if test="aromaticsEnergyTeTeo != null">aromatics_energy_te_teo = #{aromaticsEnergyTeTeo},</if>
+            <if test="aromaticsEnergyTeTec != null">aromatics_energy_te_tec = #{aromaticsEnergyTeTec},</if>
+            <if test="aromaticsEnergyEeKgeot != null">aromatics_energy_ee_kgeot = #{aromaticsEnergyEeKgeot},</if>
+            <if test="aromaticsEnergyEeKgect != null">aromatics_energy_ee_kgect = #{aromaticsEnergyEeKgect},</if>
         </trim>
         where report_month = #{reportMonth} and report_year = #{reportYear}
     </update>

+ 12 - 12
ui/src/views/production/monthly/index.vue

@@ -1170,18 +1170,18 @@ export default {
       getProductYield(year).then(response => {
         this.tableProductYield = response.data;
       });
-      // getCrackerUtilityConsumption(year).then(response => {
-      //   this.tableCrackerUtilityConsumption = response.data;
-      // });
-      // getCrackerEnergyConsumption(year).then(response => {
-      //   this.tableCrackerEnergyConsumption = response.data;
-      // });
-      // getAromaticsUtilityConsumption(year).then(response => {
-      //   this.tableAromaticsUtilityConsumption = response.data;
-      // });
-      // getAromaticsEnergyConsumption(year).then(response => {
-      //   this.tableAromaticsEnergyConsumption = response.data;
-      // });
+      getCrackerUtilityConsumption(year).then(response => {
+        this.tableCrackerUtilityConsumption = response.data;
+      });
+      getCrackerEnergyConsumption(year).then(response => {
+        this.tableCrackerEnergyConsumption = response.data;
+      });
+      getAromaticsUtilityConsumption(year).then(response => {
+        this.tableAromaticsUtilityConsumption = response.data;
+      });
+      getAromaticsEnergyConsumption(year).then(response => {
+        this.tableAromaticsEnergyConsumption = response.data;
+      });
       // getPlantLoad(year).then(response => {
       //   this.tablePlantLoad = response.data;
       // });