wangggziwen 3 роки тому
батько
коміт
53d82614cf

+ 13 - 0
src/main/java/io/renren/RenrenApplication.java

@@ -8,6 +8,8 @@
 
 package io.renren;
 
+import io.renren.modules.aspen.entity.TElecdashboardRealtimeEntity;
+import io.renren.modules.aspen.utils.DashboardDataPullUtils;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
@@ -19,6 +21,17 @@ public class RenrenApplication {
 
     public static void main(String[] args) {
         SpringApplication.run(RenrenApplication.class, args);
+        System.out.println("==========数据抓取测试==========");
+        DashboardDataPullUtils dashboardDataPullUtils = new DashboardDataPullUtils();
+        System.out.println("----------抓取csv数据----------");
+        System.out.println("-> Sheet 1");
+        dashboardDataPullUtils.getCsvData1();
+        System.out.println("-> Sheet 2");
+        dashboardDataPullUtils.getCsvData2();
+        System.out.println("-> Sheet 3");
+        dashboardDataPullUtils.getCsvData3();
+        System.out.println("----------抓取excel数据----------");
+        dashboardDataPullUtils.getExcelData(new TElecdashboardRealtimeEntity());
     }
 
 }

+ 1 - 1
src/main/java/io/renren/modules/aspen/controller/TElecdashboardRealtimeController.java

@@ -29,7 +29,7 @@ public class TElecdashboardRealtimeController {
     /**
      * 每5秒抓取实时数据,存入数据库
      */
-    @Scheduled(cron = "*/5 * * * * ?" )
+//    @Scheduled(cron = "*/5 * * * * ?" )
     public void getExcelDataEvery5Seconds(){
         DashboardDataPullUtils dashboardDataPullUtils = new DashboardDataPullUtils();
         TElecdashboard tElecdashboard = dashboardDataPullUtils.getExcelData(new TElecdashboardRealtimeEntity());

+ 6 - 6
src/main/java/io/renren/modules/aspen/entity/base/TElecdashboard.java

@@ -221,7 +221,7 @@ public abstract class TElecdashboard {
     private String hrsg2Air22555;    // 2# HRSG AIR22555
     private String hrsg2Air22556;    // 2# HRSG AIR22556
     private String hrsg2Air22557;    // 2# HRSG AIR22557
-    private String hrsg2AiR22558;    // 2# HRSG AIR22558
+    private String hrsg2Air22558;    // 2# HRSG AIR22558
     private String hrsg2Qi22240;     // 2# HRSG QI22240
     private String hrsg2Qi22241;     // 2# HRSG QI22241
     private String hrsg2Qi22242;     // 2# HRSG QI22242
@@ -417,7 +417,7 @@ public abstract class TElecdashboard {
                         "hrsg2Air22555: " + this.hrsg2Air22555 + "\n" +
                         "hrsg2Air22556: " + this.hrsg2Air22556 + "\n" +
                         "hrsg2Air22557: " + this.hrsg2Air22557 + "\n" +
-                        "hrsg2AiR22558: " + this.hrsg2AiR22558 + "\n" +
+                        "hrsg2AiR22558: " + this.hrsg2Air22558 + "\n" +
                         "hrsg2Qi22240: " + this.hrsg2Qi22240 + "\n" +
                         "hrsg2Qi22241: " + this.hrsg2Qi22241 + "\n" +
                         "hrsg2Qi22242: " + this.hrsg2Qi22242 + "\n" +
@@ -1990,12 +1990,12 @@ public abstract class TElecdashboard {
         this.hrsg2Air22557 = hrsg2Air22557;
     }
 
-    public String getHrsg2AiR22558() {
-        return hrsg2AiR22558;
+    public String getHrsg2Air22558() {
+        return hrsg2Air22558;
     }
 
-    public void setHrsg2AiR22558(String hrsg2AiR22558) {
-        this.hrsg2AiR22558 = hrsg2AiR22558;
+    public void setHrsg2Air22558(String hrsg2Air22558) {
+        this.hrsg2Air22558 = hrsg2Air22558;
     }
 
     public String getHrsg2Qi22240() {

+ 327 - 237
src/main/java/io/renren/modules/aspen/utils/DashboardDataPullUtils.java

@@ -1,13 +1,14 @@
 package io.renren.modules.aspen.utils;
 
+import com.opencsv.CSVReader;
 import io.renren.modules.aspen.entity.TElecdashboardRealtimeEntity;
-import io.renren.modules.aspen.entity.TElecdashboradDayEntity;
 import io.renren.modules.aspen.entity.base.TElecdashboard;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 
 import java.io.FileInputStream;
+import java.io.FileReader;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.Date;
@@ -21,6 +22,88 @@ import java.util.Date;
  */
 public class DashboardDataPullUtils {
 
+    /**
+     * 抓取csv数据
+     */
+    public void getCsvData1(){
+        String csvFile = "C://elecdashboard/elecDashboardData1.csv";
+        CSVReader reader = null;
+        try {
+            reader = new CSVReader(new FileReader(csvFile));
+            String[] line;
+            int i = 0;
+            while ((line = reader.readNext()) != null) {
+                i++;
+                if (i == 3) {
+                    System.out.println("第" + i + "行");
+                    for (int j = 2; j < 7; j++) {
+                        System.out.println("第" + (j + 1) + "格:" + line[j]);
+                    }
+                }
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+        } finally {
+            try {
+                reader.close();
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+    public void getCsvData2(){
+        String csvFile = "C://elecdashboard/elecDashboardData2.csv";
+        CSVReader reader = null;
+        try {
+            reader = new CSVReader(new FileReader(csvFile));
+            String[] line;
+            int i = 0;
+            while ((line = reader.readNext()) != null) {
+                i++;
+                if (i == 3) {
+                    System.out.println("第" + i + "行");
+                    for (int j = 1; j < 6; j++) {
+                        System.out.println("第" + (j + 1) + "格:" + line[j]);
+                    }
+                }
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+        } finally {
+            try {
+                reader.close();
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+    public void getCsvData3(){
+        String csvFile = "C://elecdashboard/elecDashboardData3.csv";
+        CSVReader reader = null;
+        try {
+            reader = new CSVReader(new FileReader(csvFile));
+            String[] line;
+            int i = 0;
+            while ((line = reader.readNext()) != null) {
+                i++;
+                if (i == 2) {
+                    System.out.println("第" + i + "行");
+                    for (int j = 2; j < 5; j++) {
+                        System.out.println("第" + (j + 1) + "列: " + line[j]);
+                    }
+                }
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+        } finally {
+            try {
+                reader.close();
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
     /**
      * 抓取excel数据
      *
@@ -30,12 +113,12 @@ public class DashboardDataPullUtils {
     public TElecdashboard getExcelData(TElecdashboard TElecDashboard) {
         // 设置对象创建时间
         TElecDashboard.setPullDate(new Date());
-        // 判断电厂大屏数据类型
-        if (TElecDashboard instanceof TElecdashboardRealtimeEntity) {   // 抓取实时数据
-
-        } else if (TElecDashboard instanceof TElecdashboradDayEntity) { // 抓取每日数据
-
-        }
+//        // 判断电厂大屏数据类型
+//        if (TElecDashboard instanceof TElecdashboardRealtimeEntity) {   // 抓取实时数据
+//
+//        } else if (TElecDashboard instanceof TElecdashboradDayEntity) { // 抓取每日数据
+//
+//        }
         // excel对象
         Workbook workbook = null;
         try {
@@ -44,9 +127,9 @@ public class DashboardDataPullUtils {
             // 文件输入流
             InputStream inputStream = new FileInputStream(filePath);
             // 根据文件后缀名,决定excel(workbook)对象的具体实现
-            if (filePath.substring(filePath.lastIndexOf(".") + 1).equals("xls")){
+            if (filePath.substring(filePath.lastIndexOf(".") + 1).equals("xls")) {
                 workbook = new HSSFWorkbook(inputStream);
-            }else if (filePath.substring(filePath.lastIndexOf(".") + 1).equals("xlsx")){
+            } else if (filePath.substring(filePath.lastIndexOf(".") + 1).equals("xlsx")){
                 workbook = new XSSFWorkbook(inputStream);
             }
             // 根据sheet index,获取sheet对象
@@ -55,15 +138,15 @@ public class DashboardDataPullUtils {
             Sheet sheet3 = workbook.getSheetAt(2);  // 环保监控
             //========================================电厂大屏数据第一页:数据监控========================================
             // 发电机
-            String gtg1PowerGenLevel = this.getCellData(sheet1, 2, 2);  // 1#GTG发电水平
-            String gtg1Efficiency = this.getCellData(sheet1, 3, 2);     // 1#GTG效率(百分比)
-            String gtg2PowerGenLevel = this.getCellData(sheet1, 2, 3);  // 2#GTG发电水平
-            String gtg2Efficiency = this.getCellData(sheet1, 3, 3);     // 2#GTG效率(百分比)
-            String gtg3PowerGenLevel = this.getCellData(sheet1, 2, 4);  // 3#GTG发电水平
-            String gtg3Efficiency = this.getCellData(sheet1, 3, 4);     // 3#GTG效率(百分比)
-            String stgPowerGenLevel = this.getCellData(sheet1, 2, 5);   // STG发电水平
-            String stgEfficiency = this.getCellData(sheet1, 3, 5);      // STG效率(百分比)
-            String totalPowerGen = this.getCellData(sheet1, 2, 6);      // 总发电量
+            String gtg1PowerGenLevel = this.getCellData(true, sheet1, 2, 2);  // 1#GTG发电水平
+            String gtg1Efficiency = this.getCellData(true, sheet1, 3, 2);     // 1#GTG效率(百分比)
+            String gtg2PowerGenLevel = this.getCellData(true, sheet1, 2, 3);  // 2#GTG发电水平
+            String gtg2Efficiency = this.getCellData(true, sheet1, 3, 3);     // 2#GTG效率(百分比)
+            String gtg3PowerGenLevel = this.getCellData(true, sheet1, 2, 4);  // 3#GTG发电水平
+            String gtg3Efficiency = this.getCellData(true, sheet1, 3, 4);     // 3#GTG效率(百分比)
+            String stgPowerGenLevel = this.getCellData(true, sheet1, 2, 5);   // STG发电水平
+            String stgEfficiency = this.getCellData(true, sheet1, 3, 5);      // STG效率(百分比)
+            String totalPowerGen = this.getCellData(true, sheet1, 2, 6);      // 总发电量
             TElecDashboard.setGtg1PowerGenLevel(gtg1PowerGenLevel);
             TElecDashboard.setGtg1Efficiency(gtg1Efficiency);
             TElecDashboard.setGtg2PowerGenLevel(gtg2PowerGenLevel);
@@ -74,23 +157,23 @@ public class DashboardDataPullUtils {
             TElecDashboard.setStgEfficiency(stgEfficiency);
             TElecDashboard.setTotalPowerGen(totalPowerGen);
             // 蒸汽
-            String steamHhp = this.getCellData(sheet1, 6, 2);    // 蒸汽HHP
-            String steamHp = this.getCellData(sheet1, 6, 3);     // 蒸汽HP
-            String steamMp = this.getCellData(sheet1, 6, 4);     // 蒸汽MP
-            String steamLp = this.getCellData(sheet1, 6, 5);     // 蒸汽LP
+            String steamHhp = this.getCellData(true, sheet1, 6, 2);    // 蒸汽HHP
+            String steamHp = this.getCellData(true, sheet1, 6, 3);     // 蒸汽HP
+            String steamMp = this.getCellData(true, sheet1, 6, 4);     // 蒸汽MP
+            String steamLp = this.getCellData(true, sheet1, 6, 5);     // 蒸汽LP
             TElecDashboard.setSteamHhp(steamHhp);
             TElecDashboard.setSteamHp(steamHp);
             TElecDashboard.setSteamMp(steamMp);
             TElecDashboard.setSteamLp(steamLp);
             // 天然气
-            String gasRealTime = this.getCellData(sheet1, 9, 2);    // 瞬时量
-            String gasLeft = this.getCellData(sheet1, 9, 3);        // 日剩余量
-            String gasUsed = this.getCellData(sheet1, 9, 4);        // 日消耗量(实际)
-            String gasPlan = this.getCellData(sheet1, 9, 5);        // 日消耗量(计划)
-            String gasElec = this.getCellData(sheet1, 11, 2);       // 电厂
-            String gasSynGas = this.getCellData(sheet1, 11, 3);     // 合成气
-            String gasU2 = this.getCellData(sheet1, 11, 4);         // U2
-            String gasStyrene = this.getCellData(sheet1, 11, 5);    // 苯乙烯
+            String gasRealTime = this.getCellData(true, sheet1, 9, 2);    // 瞬时量
+            String gasLeft = this.getCellData(true, sheet1, 9, 3);        // 日剩余量
+            String gasUsed = this.getCellData(true, sheet1, 9, 4);        // 日消耗量(实际)
+            String gasPlan = this.getCellData(true, sheet1, 9, 5);        // 日消耗量(计划)
+            String gasElec = this.getCellData(true, sheet1, 11, 2);       // 电厂
+            String gasSynGas = this.getCellData(true, sheet1, 11, 3);     // 合成气
+            String gasU2 = this.getCellData(true, sheet1, 11, 4);         // U2
+            String gasStyrene = this.getCellData(true, sheet1, 11, 5);    // 苯乙烯
             TElecDashboard.setGasRealTime(gasRealTime);
             TElecDashboard.setGasLeft(gasLeft);
             TElecDashboard.setGasUsed(gasUsed);
@@ -100,12 +183,12 @@ public class DashboardDataPullUtils {
             TElecDashboard.setGasU2(gasU2);
             TElecDashboard.setGasStyrene(gasStyrene);
             // 电量
-            String elecPowerGen = this.getCellData(sheet1, 14, 2);    // 昨日发电量
-            String elecPowerSwitch = this.getCellData(sheet1, 14, 3); // 倒电量
-            String elecUsed = this.getCellData(sheet1, 14, 4);        // 每日用电量
-            String elecDiff = this.getCellData(sheet1, 14, 5);        // 每日峰谷差
-            String elecBycUsed = this.getCellData(sheet1, 16, 2);     // BYC用电量
-            String elecBocUsed = this.getCellData(sheet1, 16, 3);     // BOC用电量
+            String elecPowerGen = this.getCellData(true, sheet1, 14, 2);    // 昨日发电量
+            String elecPowerSwitch = this.getCellData(true, sheet1, 14, 3); // 倒电量
+            String elecUsed = this.getCellData(true, sheet1, 14, 4);        // 每日用电量
+            String elecDiff = this.getCellData(true, sheet1, 14, 5);        // 每日峰谷差
+            String elecBycUsed = this.getCellData(true, sheet1, 16, 2);     // BYC用电量
+            String elecBocUsed = this.getCellData(true, sheet1, 16, 3);     // BOC用电量
             TElecDashboard.setElecPowerGen(elecPowerGen);
             TElecDashboard.setElecPowerSwitch(elecPowerSwitch);
             TElecDashboard.setElecUsed(elecUsed);
@@ -113,35 +196,35 @@ public class DashboardDataPullUtils {
             TElecDashboard.setElecBycUsed(elecBycUsed);
             TElecDashboard.setElecBocUsed(elecBocUsed);
             // 煤耗
-            String carbonUsed = this.getCellData(sheet1, 19, 2);        // 每日煤耗量
-            String carbonRealTime = this.getCellData(sheet1, 19, 3);    // 瞬时煤耗量
+            String carbonUsed = this.getCellData(true, sheet1, 19, 2);        // 每日煤耗量
+            String carbonRealTime = this.getCellData(true, sheet1, 19, 3);    // 瞬时煤耗量
             TElecDashboard.setCarbonUsed(carbonUsed);
             TElecDashboard.setCarbonRealTime(carbonRealTime);
             // SUB
-            String sub = this.getCellData(sheet1, 22, 2);               // SUB
-            String subFurnaceLoad = this.getCellData(sheet1, 22, 3);    // SUB开工锅炉负荷(百分比)
+            String sub = this.getCellData(true, sheet1, 22, 2);               // SUB
+            String subFurnaceLoad = this.getCellData(true, sheet1, 22, 3);    // SUB开工锅炉负荷(百分比)
             TElecDashboard.setSub(sub);
             TElecDashboard.setSubFurnaceLoad(subFurnaceLoad);
             //========================================电厂大屏数据第二页:蒸汽平衡=======================================
             // HHP
-            String hhpPphhp = this.getCellData(sheet2, 2, 1);   // HHP PPHHP
-            String hhpAaae = this.getCellData(sheet2, 2, 2);    // HHP AA/AE
-            String hhpGaa = this.getCellData(sheet2, 2, 3);     // HHP GAA
-            String hhpSyn = this.getCellData(sheet2, 2, 4);     // HHP SYN
-            String hhpP3802 = this.getCellData(sheet2, 2, 5);   // HHP P3802
+            String hhpPphhp = this.getCellData(true, sheet2, 2, 1);   // HHP PPHHP
+            String hhpAaae = this.getCellData(true, sheet2, 2, 2);    // HHP AA/AE
+            String hhpGaa = this.getCellData(true, sheet2, 2, 3);     // HHP GAA
+            String hhpSyn = this.getCellData(true, sheet2, 2, 4);     // HHP SYN
+            String hhpP3802 = this.getCellData(true, sheet2, 2, 5);   // HHP P3802
             TElecDashboard.setHhpPphhp(hhpPphhp);
             TElecDashboard.setHhpAaae(hhpAaae);
             TElecDashboard.setHhpGaa(hhpGaa);
             TElecDashboard.setHhpSyn(hhpSyn);
             TElecDashboard.setHhpP3802(hhpP3802);
             // HP
-            String hpLpg = this.getCellData(sheet2, 5, 1);          // HP LPG(百分比)
-            String hpSub = this.getCellData(sheet2, 5, 2);          // HP SUB(百分比)
-            String hpNg = this.getCellData(sheet2, 5, 3);           // HP NG
-            String hpJ1501 = this.getCellData(sheet2, 5, 4);        // HP J1501(百分比)
-            String hpJ1504In = this.getCellData(sheet2, 5, 5);      // HP J1504入
-            String hpJ1504Out = this.getCellData(sheet2, 5, 6);     // HP J1504出
-            String hpUser = this.getCellData(sheet2, 5, 7);         // HP HP用户
+            String hpLpg = this.getCellData(true, sheet2, 5, 1);          // HP LPG(百分比)
+            String hpSub = this.getCellData(true, sheet2, 5, 2);          // HP SUB(百分比)
+            String hpNg = this.getCellData(true, sheet2, 5, 3);           // HP NG
+            String hpJ1501 = this.getCellData(true, sheet2, 5, 4);        // HP J1501(百分比)
+            String hpJ1504In = this.getCellData(true, sheet2, 5, 5);      // HP J1504入
+            String hpJ1504Out = this.getCellData(true, sheet2, 5, 6);     // HP J1504出
+            String hpUser = this.getCellData(true, sheet2, 5, 7);         // HP HP用户
             TElecDashboard.setHpLpg(hpLpg);
             TElecDashboard.setHpSub(hpSub);
             TElecDashboard.setHpNg(hpNg);
@@ -150,14 +233,14 @@ public class DashboardDataPullUtils {
             TElecDashboard.setHpJ1504Out(hpJ1504Out);
             TElecDashboard.setHpUser(hpUser);
             // MP
-            String mpNcipmp = this.getCellData(sheet2, 8, 1);   // MP NCI MP
-            String mp150511 = this.getCellData(sheet2, 8, 2);   // MP 15051_2(百分比)
-            String mp150512 = this.getCellData(sheet2, 8, 3);   // MP 15051_2(百分比)
-            String mpPpmp = this.getCellData(sheet2, 8, 4);     // MP PPMP
-            String mpP9801In = this.getCellData(sheet2, 8, 5);  // MP P9801入
-            String mpP9801Out = this.getCellData(sheet2, 8, 6); // MP P9801出
-            String mpJ1502 = this.getCellData(sheet2, 8, 7);    // MP J1502(百分比)
-            String mpUser = this.getCellData(sheet2, 8, 8);     // MP MP用户
+            String mpNcipmp = this.getCellData(true, sheet2, 8, 1);   // MP NCI MP
+            String mp150511 = this.getCellData(true, sheet2, 8, 2);   // MP 15051_2(百分比)
+            String mp150512 = this.getCellData(true, sheet2, 8, 3);   // MP 15051_2(百分比)
+            String mpPpmp = this.getCellData(true, sheet2, 8, 4);     // MP PPMP
+            String mpP9801In = this.getCellData(true, sheet2, 8, 5);  // MP P9801入
+            String mpP9801Out = this.getCellData(true, sheet2, 8, 6); // MP P9801出
+            String mpJ1502 = this.getCellData(true, sheet2, 8, 7);    // MP J1502(百分比)
+            String mpUser = this.getCellData(true, sheet2, 8, 8);     // MP MP用户
             TElecDashboard.setMpNcipMp(mpNcipmp);
             TElecDashboard.setMp150511(mp150511);
             TElecDashboard.setMp150512(mp150512);
@@ -167,14 +250,14 @@ public class DashboardDataPullUtils {
             TElecDashboard.setMpJ1502(mpJ1502);
             TElecDashboard.setMpUser(mpUser);
             // LP
-            String lpPpLp = this.getCellData(sheet2, 11, 1);        // LP PP LP
-            String lpEmpty = this.getCellData(sheet2, 11, 2);       // LP防空
-            String lpMpLetdown = this.getCellData(sheet2, 11, 3);   // LP MP LETDOWN
-            String lpJ1509 = this.getCellData(sheet2, 11, 4);       // LP J1509(百分比)
-            String lpJ1503 = this.getCellData(sheet2, 11, 5);       // LP J1503(百分比)
-            String lpLdpeTs = this.getCellData(sheet2, 11, 6);      // LP LDPE TS
-            String lpLdpeDm = this.getCellData(sheet2, 11, 7);      // LP LDPE DM
-            String lpUser = this.getCellData(sheet2, 11, 8);        // LP用户
+            String lpPpLp = this.getCellData(true, sheet2, 11, 1);        // LP PP LP
+            String lpEmpty = this.getCellData(true, sheet2, 11, 2);       // LP防空
+            String lpMpLetdown = this.getCellData(true, sheet2, 11, 3);   // LP MP LETDOWN
+            String lpJ1509 = this.getCellData(true, sheet2, 11, 4);       // LP J1509(百分比)
+            String lpJ1503 = this.getCellData(true, sheet2, 11, 5);       // LP J1503(百分比)
+            String lpLdpeTs = this.getCellData(true, sheet2, 11, 6);      // LP LDPE TS
+            String lpLdpeDm = this.getCellData(true, sheet2, 11, 7);      // LP LDPE DM
+            String lpUser = this.getCellData(true, sheet2, 11, 8);        // LP用户
             TElecDashboard.setLpPpLp(lpPpLp);
             TElecDashboard.setLpEmpty(lpEmpty);
             TElecDashboard.setLpMpLetdown(lpMpLetdown);
@@ -184,21 +267,21 @@ public class DashboardDataPullUtils {
             TElecDashboard.setLpLdpeDm(lpLdpeDm);
             TElecDashboard.setLpUser(lpUser);
             // BCC
-            String bccSyn = this.getCellData(sheet2, 14, 1);    // BCC SYN
-            String bccYpc = this.getCellData(sheet2, 14, 2);    // BCC YPC
+            String bccSyn = this.getCellData(true, sheet2, 14, 1);    // BCC SYN
+            String bccYpc = this.getCellData(true, sheet2, 14, 2);    // BCC YPC
             TElecDashboard.setBccSyn(bccSyn);
             TElecDashboard.setBccYpc(bccYpc);
             //========================================电厂大屏数据第三页:环保监控=======================================
             // HRSG
-            String hrsg1SmokeConvert = this.getCellData(sheet3, 2, 2);  // HRSG 1# 烟尘折算
-            String hrsg1So2Convert = this.getCellData(sheet3, 2, 3);    // HRSG 1# SO2 折算
-            String hrsg1NoxConvert = this.getCellData(sheet3, 2, 4);    // HRSG 1# NOx 折算
-            String hrsg2SmokeConvert = this.getCellData(sheet3, 3, 2);  // HRSG 2# 烟尘折算
-            String hrsg2So2Convert = this.getCellData(sheet3, 3, 3);    // HRSG 2# SO2 折算
-            String hrsg2NoxConvert = this.getCellData(sheet3, 3, 4);    // HRSG 2# NOx 折算
-            String hrsg3SmokeConvert = this.getCellData(sheet3, 4, 2);  // HRSG 3# 烟尘折算
-            String hrsg3So2Convert = this.getCellData(sheet3, 4, 3);    // HRSG 3# SO2 折算
-            String hrsg3NoxConvert = this.getCellData(sheet3, 4, 4);    // HRSG 3# NOx 折算
+            String hrsg1SmokeConvert = this.getCellData(true, sheet3, 2, 2);  // HRSG 1# 烟尘折算
+            String hrsg1So2Convert = this.getCellData(true, sheet3, 2, 3);    // HRSG 1# SO2 折算
+            String hrsg1NoxConvert = this.getCellData(true, sheet3, 2, 4);    // HRSG 1# NOx 折算
+            String hrsg2SmokeConvert = this.getCellData(true, sheet3, 3, 2);  // HRSG 2# 烟尘折算
+            String hrsg2So2Convert = this.getCellData(true, sheet3, 3, 3);    // HRSG 2# SO2 折算
+            String hrsg2NoxConvert = this.getCellData(true, sheet3, 3, 4);    // HRSG 2# NOx 折算
+            String hrsg3SmokeConvert = this.getCellData(true, sheet3, 4, 2);  // HRSG 3# 烟尘折算
+            String hrsg3So2Convert = this.getCellData(true, sheet3, 4, 3);    // HRSG 3# SO2 折算
+            String hrsg3NoxConvert = this.getCellData(true, sheet3, 4, 4);    // HRSG 3# NOx 折算
             TElecDashboard.setHrsg1SmokeConvert(hrsg1SmokeConvert);
             TElecDashboard.setHrsg1So2Convert(hrsg1So2Convert);
             TElecDashboard.setHrsg1NoxConvert(hrsg1NoxConvert);
@@ -209,31 +292,31 @@ public class DashboardDataPullUtils {
             TElecDashboard.setHrsg3So2Convert(hrsg3So2Convert);
             TElecDashboard.setHrsg3NoxConvert(hrsg3NoxConvert);
             // Rain Water
-            String rainPh = this.getCellData(sheet3, 7, 2);         // 雨水 PH
-            String rainCod = this.getCellData(sheet3, 7, 3);;       // 雨水 COD
+            String rainPh = this.getCellData(true, sheet3, 7, 2);   // 雨水 PH
+            String rainCod = this.getCellData(true, sheet3, 7, 3);  // 雨水 COD
             TElecDashboard.setRainPh(rainPh);
             TElecDashboard.setRainCod(rainCod);
             // Waste Water
-            String wastePh = this.getCellData(sheet3, 10, 2);;      // 废水 PH
-            String wasteCod = this.getCellData(sheet3, 10, 3);;     // 废水 COD
+            String wastePh = this.getCellData(true, sheet3, 10, 2);     // 废水 PH
+            String wasteCod = this.getCellData(true, sheet3, 10, 3);    // 废水 COD
             TElecDashboard.setWastePh(wastePh);
             TElecDashboard.setWasteCod(wasteCod);
             // 1# GTG
-            String gtg45ha1 = this.getCellData(sheet3, 12, 3);   // 1#GTG 45HA1
-            String gtg45ha2 = this.getCellData(sheet3, 13, 3);   // 1#GTG 45HA2
-            String gtg45ha3 = this.getCellData(sheet3, 14, 3);   // 1#GTG 45HA3
-            String gtg45ha4 = this.getCellData(sheet3, 15, 3);   // 1#GTG 45HA4
-            String gtg45ha5 = this.getCellData(sheet3, 16, 3);   // 1#GTG 45HA5
-            String gtg45ha6 = this.getCellData(sheet3, 17, 3);   // 1#GTG 45HA6
-            String gtg45ha7 = this.getCellData(sheet3, 18, 3);   // 1#GTG 45HA7
-            String gtg45ha8 = this.getCellData(sheet3, 19, 3);   // 1#GTG 45HA8
-            String gtg45ha9 = this.getCellData(sheet3, 20, 3);   // 1#GTG 45HA9
-            String gtg45ht1 = this.getCellData(sheet3, 21, 3);   // 1#GTG 45HT1
-            String gtg45ht2 = this.getCellData(sheet3, 22, 3);   // 1#GTG 45HT2
-            String gtg45ht3 = this.getCellData(sheet3, 23, 3);   // 1#GTG 45HT3
-            String gtg45ht4 = this.getCellData(sheet3, 24, 3);   // 1#GTG 45HT4
-            String gtg45ht5 = this.getCellData(sheet3, 25, 3);   // 1#GTG 45HT5
-            String gtg45ht6 = this.getCellData(sheet3, 26, 3);   // 1#GTG 45HT6
+            String gtg45ha1 = this.getCellData(false, sheet3, 12, 3);   // 1#GTG 45HA1
+            String gtg45ha2 = this.getCellData(false, sheet3, 13, 3);   // 1#GTG 45HA2
+            String gtg45ha3 = this.getCellData(false, sheet3, 14, 3);   // 1#GTG 45HA3
+            String gtg45ha4 = this.getCellData(false, sheet3, 15, 3);   // 1#GTG 45HA4
+            String gtg45ha5 = this.getCellData(false, sheet3, 16, 3);   // 1#GTG 45HA5
+            String gtg45ha6 = this.getCellData(false, sheet3, 17, 3);   // 1#GTG 45HA6
+            String gtg45ha7 = this.getCellData(false, sheet3, 18, 3);   // 1#GTG 45HA7
+            String gtg45ha8 = this.getCellData(false, sheet3, 19, 3);   // 1#GTG 45HA8
+            String gtg45ha9 = this.getCellData(false, sheet3, 20, 3);   // 1#GTG 45HA9
+            String gtg45ht1 = this.getCellData(false, sheet3, 21, 3);   // 1#GTG 45HT1
+            String gtg45ht2 = this.getCellData(false, sheet3, 22, 3);   // 1#GTG 45HT2
+            String gtg45ht3 = this.getCellData(false, sheet3, 23, 3);   // 1#GTG 45HT3
+            String gtg45ht4 = this.getCellData(false, sheet3, 24, 3);   // 1#GTG 45HT4
+            String gtg45ht5 = this.getCellData(false, sheet3, 25, 3);   // 1#GTG 45HT5
+            String gtg45ht6 = this.getCellData(false, sheet3, 26, 3);   // 1#GTG 45HT6
             TElecDashboard.setGtg45ha1(gtg45ha1);
             TElecDashboard.setGtg45ha2(gtg45ha2);
             TElecDashboard.setGtg45ha3(gtg45ha3);
@@ -250,69 +333,69 @@ public class DashboardDataPullUtils {
             TElecDashboard.setGtg45ht5(gtg45ht5);
             TElecDashboard.setGtg45ht6(gtg45ht6);
             // BP
-            String qt61001 = this.getCellData(sheet3, 28, 3); // BP QT61001
-            String qt61002 = this.getCellData(sheet3, 29, 3); // BP QT61002
-            String qt61003 = this.getCellData(sheet3, 30, 3); // BP QT61003
-            String qt61004 = this.getCellData(sheet3, 31, 3); // BP QT61004
-            String qt61005 = this.getCellData(sheet3, 32, 3); // BP QT61005
-            String qt61101 = this.getCellData(sheet3, 33, 3); // BP QT61101
-            String qt61102 = this.getCellData(sheet3, 34, 3); // BP QT61102
-            String qt61103 = this.getCellData(sheet3, 35, 3); // BP QT61103
-            String qt61104 = this.getCellData(sheet3, 36, 3); // BP QT61104
-            String qt61105 = this.getCellData(sheet3, 37, 3); // BP QT61105
-            String qt76001 = this.getCellData(sheet3, 38, 3); // BP QT76001
-            String qt76002 = this.getCellData(sheet3, 39, 3); // BP QT76002
-            String qt76041 = this.getCellData(sheet3, 40, 3); // BP QT76041
-            String qt80001 = this.getCellData(sheet3, 41, 3); // BP QT80001
-            String qt80002 = this.getCellData(sheet3, 42, 3); // BP QT80002
-            String qt80003 = this.getCellData(sheet3, 43, 3); // BP QT80003
-            String qt91001 = this.getCellData(sheet3, 44, 3); // BP QT91001
-            String qt91002 = this.getCellData(sheet3, 45, 3); // BP QT91002
-            String qt91003 = this.getCellData(sheet3, 46, 3); // BP QT91003
-            String qt91004 = this.getCellData(sheet3, 47, 3); // BP QT91004
-            String qt91005 = this.getCellData(sheet3, 48, 3); // BP QT91005
-            String qt91006 = this.getCellData(sheet3, 49, 3); // BP QT91006
-            String qt91011 = this.getCellData(sheet3, 50, 3); // BP QT91011
-            String qt91012 = this.getCellData(sheet3, 51, 3); // BP QT91012
-            String qt91013 = this.getCellData(sheet3, 52, 3); // BP QT91013
-            String at83001 = this.getCellData(sheet3, 53, 3); // BP AT83001
-            String at83002 = this.getCellData(sheet3, 54, 3); // BP AT83002
-            String at83003 = this.getCellData(sheet3, 55, 3); // BP AT83003
-            String at83004 = this.getCellData(sheet3, 56, 3); // BP AT83004
-            String qt12001 = this.getCellData(sheet3, 57, 3); // BP QT12001
-            String qt12501 = this.getCellData(sheet3, 58, 3); // BP QT12501
-            String qt12502 = this.getCellData(sheet3, 59, 3); // BP QT12502
-            String qt22001 = this.getCellData(sheet3, 60, 3); // BP QT22001
-            String qt22501 = this.getCellData(sheet3, 61, 3); // BP QT22501
-            String qt22502 = this.getCellData(sheet3, 62, 3); // BP QT22502
-            String qt32001 = this.getCellData(sheet3, 63, 3); // BP QT32001
-            String qt32002 = this.getCellData(sheet3, 64, 3); // BP QT32002
-            String qt32005 = this.getCellData(sheet3, 65, 3); // BP QT32005
-            String qt32003 = this.getCellData(sheet3, 66, 3); // BP QT32003
-            String qt32004 = this.getCellData(sheet3, 67, 3); // BP QT32004
-            String ai82002 = this.getCellData(sheet3, 68, 3); // BP AI82002
-            String ai82003 = this.getCellData(sheet3, 69, 3); // BP AI82003
-            String ai82004 = this.getCellData(sheet3, 70, 3); // BP AI82004
-            String ai82005 = this.getCellData(sheet3, 71, 3); // BP AI82005
-            String ai82006 = this.getCellData(sheet3, 72, 3); // BP AI82006
-            String ai82007 = this.getCellData(sheet3, 73, 3); // BP AI82007
-            String ai82008 = this.getCellData(sheet3, 74, 3); // BP AI82008
-            String ai82009 = this.getCellData(sheet3, 75, 3); // BP AI82009
-            String ai82010 = this.getCellData(sheet3, 76, 3); // BP AI82010
-            String ai82011 = this.getCellData(sheet3, 77, 3); // BP AI82011
-            String ai82101 = this.getCellData(sheet3, 78, 3); // BP AI82101
-            String ai82102 = this.getCellData(sheet3, 79, 3); // BP AI82102
-            String ai82103 = this.getCellData(sheet3, 80, 3); // BP AI82103
-            String ai82104 = this.getCellData(sheet3, 81, 3); // BP AI82104
-            String ai82105 = this.getCellData(sheet3, 82, 3); // BP AI82105
-            String ai82106 = this.getCellData(sheet3, 83, 3); // BP AI82106
-            String ai82107 = this.getCellData(sheet3, 84, 3); // BP AI82107
-            String ai82108 = this.getCellData(sheet3, 85, 3); // BP AI82108
-            String ai82109 = this.getCellData(sheet3, 86, 3); // BP AI82109
-            String ai82110 = this.getCellData(sheet3, 87, 3); // BP AI82110
-            String ai82111 = this.getCellData(sheet3, 88, 3); // BP AI82111
-            String ai82112 = this.getCellData(sheet3, 89, 3); // BP AI82112
-            String ai82113 = this.getCellData(sheet3, 90, 3); // BP AI82113
+            String qt61001 = this.getCellData(false, sheet3, 28, 3); // BP QT61001
+            String qt61002 = this.getCellData(false, sheet3, 29, 3); // BP QT61002
+            String qt61003 = this.getCellData(false, sheet3, 30, 3); // BP QT61003
+            String qt61004 = this.getCellData(false, sheet3, 31, 3); // BP QT61004
+            String qt61005 = this.getCellData(false, sheet3, 32, 3); // BP QT61005
+            String qt61101 = this.getCellData(false, sheet3, 33, 3); // BP QT61101
+            String qt61102 = this.getCellData(false, sheet3, 34, 3); // BP QT61102
+            String qt61103 = this.getCellData(false, sheet3, 35, 3); // BP QT61103
+            String qt61104 = this.getCellData(false, sheet3, 36, 3); // BP QT61104
+            String qt61105 = this.getCellData(false, sheet3, 37, 3); // BP QT61105
+            String qt76001 = this.getCellData(false, sheet3, 38, 3); // BP QT76001
+            String qt76002 = this.getCellData(false, sheet3, 39, 3); // BP QT76002
+            String qt76041 = this.getCellData(false, sheet3, 40, 3); // BP QT76041
+            String qt80001 = this.getCellData(false, sheet3, 41, 3); // BP QT80001
+            String qt80002 = this.getCellData(false, sheet3, 42, 3); // BP QT80002
+            String qt80003 = this.getCellData(false, sheet3, 43, 3); // BP QT80003
+            String qt91001 = this.getCellData(false, sheet3, 44, 3); // BP QT91001
+            String qt91002 = this.getCellData(false, sheet3, 45, 3); // BP QT91002
+            String qt91003 = this.getCellData(false, sheet3, 46, 3); // BP QT91003
+            String qt91004 = this.getCellData(false, sheet3, 47, 3); // BP QT91004
+            String qt91005 = this.getCellData(false, sheet3, 48, 3); // BP QT91005
+            String qt91006 = this.getCellData(false, sheet3, 49, 3); // BP QT91006
+            String qt91011 = this.getCellData(false, sheet3, 50, 3); // BP QT91011
+            String qt91012 = this.getCellData(false, sheet3, 51, 3); // BP QT91012
+            String qt91013 = this.getCellData(false, sheet3, 52, 3); // BP QT91013
+            String at83001 = this.getCellData(false, sheet3, 53, 3); // BP AT83001
+            String at83002 = this.getCellData(false, sheet3, 54, 3); // BP AT83002
+            String at83003 = this.getCellData(false, sheet3, 55, 3); // BP AT83003
+            String at83004 = this.getCellData(false, sheet3, 56, 3); // BP AT83004
+            String qt12001 = this.getCellData(false, sheet3, 57, 3); // BP QT12001
+            String qt12501 = this.getCellData(false, sheet3, 58, 3); // BP QT12501
+            String qt12502 = this.getCellData(false, sheet3, 59, 3); // BP QT12502
+            String qt22001 = this.getCellData(false, sheet3, 60, 3); // BP QT22001
+            String qt22501 = this.getCellData(false, sheet3, 61, 3); // BP QT22501
+            String qt22502 = this.getCellData(false, sheet3, 62, 3); // BP QT22502
+            String qt32001 = this.getCellData(false, sheet3, 63, 3); // BP QT32001
+            String qt32002 = this.getCellData(false, sheet3, 64, 3); // BP QT32002
+            String qt32005 = this.getCellData(false, sheet3, 65, 3); // BP QT32005
+            String qt32003 = this.getCellData(false, sheet3, 66, 3); // BP QT32003
+            String qt32004 = this.getCellData(false, sheet3, 67, 3); // BP QT32004
+            String ai82002 = this.getCellData(false, sheet3, 68, 3); // BP AI82002
+            String ai82003 = this.getCellData(false, sheet3, 69, 3); // BP AI82003
+            String ai82004 = this.getCellData(false, sheet3, 70, 3); // BP AI82004
+            String ai82005 = this.getCellData(false, sheet3, 71, 3); // BP AI82005
+            String ai82006 = this.getCellData(false, sheet3, 72, 3); // BP AI82006
+            String ai82007 = this.getCellData(false, sheet3, 73, 3); // BP AI82007
+            String ai82008 = this.getCellData(false, sheet3, 74, 3); // BP AI82008
+            String ai82009 = this.getCellData(false, sheet3, 75, 3); // BP AI82009
+            String ai82010 = this.getCellData(false, sheet3, 76, 3); // BP AI82010
+            String ai82011 = this.getCellData(false, sheet3, 77, 3); // BP AI82011
+            String ai82101 = this.getCellData(false, sheet3, 78, 3); // BP AI82101
+            String ai82102 = this.getCellData(false, sheet3, 79, 3); // BP AI82102
+            String ai82103 = this.getCellData(false, sheet3, 80, 3); // BP AI82103
+            String ai82104 = this.getCellData(false, sheet3, 81, 3); // BP AI82104
+            String ai82105 = this.getCellData(false, sheet3, 82, 3); // BP AI82105
+            String ai82106 = this.getCellData(false, sheet3, 83, 3); // BP AI82106
+            String ai82107 = this.getCellData(false, sheet3, 84, 3); // BP AI82107
+            String ai82108 = this.getCellData(false, sheet3, 85, 3); // BP AI82108
+            String ai82109 = this.getCellData(false, sheet3, 86, 3); // BP AI82109
+            String ai82110 = this.getCellData(false, sheet3, 87, 3); // BP AI82110
+            String ai82111 = this.getCellData(false, sheet3, 88, 3); // BP AI82111
+            String ai82112 = this.getCellData(false, sheet3, 89, 3); // BP AI82112
+            String ai82113 = this.getCellData(false, sheet3, 90, 3); // BP AI82113
             TElecDashboard.setQt61001(qt61001);
             TElecDashboard.setQt61002(qt61002);
             TElecDashboard.setQt61003(qt61003);
@@ -377,26 +460,26 @@ public class DashboardDataPullUtils {
             TElecDashboard.setAi82112(ai82112);
             TElecDashboard.setAi82113(ai82113);
             // 1# HRSG
-            String hrsg1Ai82201 = this.getCellData(sheet3, 92, 3);      // 1# HRSG AI82201
-            String hrsg1Ai82202 = this.getCellData(sheet3, 93, 3);      // 1# HRSG AI82202
-            String hrsg1Ai82203 = this.getCellData(sheet3, 94, 3);      // 1# HRSG AI82203
-            String hrsg1Ai82204 = this.getCellData(sheet3, 95, 3);      // 1# HRSG AI82204
-            String hrsg1Ai82205 = this.getCellData(sheet3, 96, 3);      // 1# HRSG AI82205
-            String hrsg1Ai82206 = this.getCellData(sheet3, 97, 3);      // 1# HRSG AI82206
-            String hrsg1Ai82207 = this.getCellData(sheet3, 98, 3);      // 1# HRSG AI82207
-            String hrsg1Ai82208 = this.getCellData(sheet3, 99, 3);      // 1# HRSG AI82208
-            String hrsg1Ai82209 = this.getCellData(sheet3, 100, 3);     // 1# HRSG AI82209
-            String hrsg1Ai82210 = this.getCellData(sheet3, 101, 3);     // 1# HRSG AI82210
-            String hrsg1Ai82211 = this.getCellData(sheet3, 102, 3);     // 1# HRSG AI82211
-            String hrsg1Ai82212 = this.getCellData(sheet3, 103, 3);     // 1# HRSG AI82212
-            String hrsg1Air12551 = this.getCellData(sheet3, 104,3);     // 1# HRSG AIR12551
-            String hrsg1Air12552 = this.getCellData(sheet3, 105,3);     // 1# HRSG AIR12552
-            String hrsg1Air12553 = this.getCellData(sheet3, 106,3);     // 1# HRSG AIR12553
-            String hrsg1Air12554 = this.getCellData(sheet3, 107,3);     // 1# HRSG AIR12554
-            String hrsg1Air12555 = this.getCellData(sheet3, 108,3);     // 1# HRSG AIR12555
-            String hrsg1Air12556 = this.getCellData(sheet3, 109,3);     // 1# HRSG AIR12556
-            String hrsg1Air12557 = this.getCellData(sheet3, 110,3);     // 1# HRSG AIR12557
-            String hrsg1Air12558 = this.getCellData(sheet3, 111,3);     // 1# HRSG AIR12558
+            String hrsg1Ai82201 = this.getCellData(false, sheet3, 92, 3);      // 1# HRSG AI82201
+            String hrsg1Ai82202 = this.getCellData(false, sheet3, 93, 3);      // 1# HRSG AI82202
+            String hrsg1Ai82203 = this.getCellData(false, sheet3, 94, 3);      // 1# HRSG AI82203
+            String hrsg1Ai82204 = this.getCellData(false, sheet3, 95, 3);      // 1# HRSG AI82204
+            String hrsg1Ai82205 = this.getCellData(false, sheet3, 96, 3);      // 1# HRSG AI82205
+            String hrsg1Ai82206 = this.getCellData(false, sheet3, 97, 3);      // 1# HRSG AI82206
+            String hrsg1Ai82207 = this.getCellData(false, sheet3, 98, 3);      // 1# HRSG AI82207
+            String hrsg1Ai82208 = this.getCellData(false, sheet3, 99, 3);      // 1# HRSG AI82208
+            String hrsg1Ai82209 = this.getCellData(false, sheet3, 100, 3);     // 1# HRSG AI82209
+            String hrsg1Ai82210 = this.getCellData(false, sheet3, 101, 3);     // 1# HRSG AI82210
+            String hrsg1Ai82211 = this.getCellData(false, sheet3, 102, 3);     // 1# HRSG AI82211
+            String hrsg1Ai82212 = this.getCellData(false, sheet3, 103, 3);     // 1# HRSG AI82212
+            String hrsg1Air12551 = this.getCellData(false, sheet3, 104,3);     // 1# HRSG AIR12551
+            String hrsg1Air12552 = this.getCellData(false, sheet3, 105,3);     // 1# HRSG AIR12552
+            String hrsg1Air12553 = this.getCellData(false, sheet3, 106,3);     // 1# HRSG AIR12553
+            String hrsg1Air12554 = this.getCellData(false, sheet3, 107,3);     // 1# HRSG AIR12554
+            String hrsg1Air12555 = this.getCellData(false, sheet3, 108,3);     // 1# HRSG AIR12555
+            String hrsg1Air12556 = this.getCellData(false, sheet3, 109,3);     // 1# HRSG AIR12556
+            String hrsg1Air12557 = this.getCellData(false, sheet3, 110,3);     // 1# HRSG AIR12557
+            String hrsg1Air12558 = this.getCellData(false, sheet3, 111,3);     // 1# HRSG AIR12558
             TElecDashboard.setHrsg1Ai82201(hrsg1Ai82201);
             TElecDashboard.setHrsg1Ai82202(hrsg1Ai82202);
             TElecDashboard.setHrsg1Ai82203(hrsg1Ai82203);
@@ -418,29 +501,29 @@ public class DashboardDataPullUtils {
             TElecDashboard.setHrsg1Air12557(hrsg1Air12557);
             TElecDashboard.setHrsg1Air12558(hrsg1Air12558);
             // 2# HRSG
-            String hrsg2Ai82301 = this.getCellData(sheet3, 113, 3);     // 2# HRSG AI82301
-            String hrsg2Ai82302 = this.getCellData(sheet3, 114, 3);     // 2# HRSG AI82302
-            String hrsg2Ai82303 = this.getCellData(sheet3, 115, 3);     // 2# HRSG AI82303
-            String hrsg2Ai82304 = this.getCellData(sheet3, 116, 3);     // 2# HRSG AI82304
-            String hrsg2Ai82305 = this.getCellData(sheet3, 117, 3);     // 2# HRSG AI82305
-            String hrsg2Ai82306 = this.getCellData(sheet3, 118, 3);     // 2# HRSG AI82306
-            String hrsg2Ai82307 = this.getCellData(sheet3, 119, 3);     // 2# HRSG AI82307
-            String hrsg2Ai82308 = this.getCellData(sheet3, 120, 3);     // 2# HRSG AI82308
-            String hrsg2Ai82309 = this.getCellData(sheet3, 121, 3);     // 2# HRSG AI82309
-            String hrsg2Ai82310 = this.getCellData(sheet3, 122, 3);     // 2# HRSG AI82310
-            String hrsg2Ai82311 = this.getCellData(sheet3, 123, 3);     // 2# HRSG AI82311
-            String hrsg2Ai82312 = this.getCellData(sheet3, 124, 3);     // 2# HRSG AI82312
-            String hrsg2Air22551 = this.getCellData(sheet3, 125, 3);    // 2# HRSG AIR22551
-            String hrsg2Air22552 = this.getCellData(sheet3, 126, 3);    // 2# HRSG AIR22552
-            String hrsg2Air22553 = this.getCellData(sheet3, 127, 3);    // 2# HRSG AIR22553
-            String hrsg2Air22554 = this.getCellData(sheet3, 128, 3);    // 2# HRSG AIR22554
-            String hrsg2Air22555 = this.getCellData(sheet3, 129, 3);    // 2# HRSG AIR22555
-            String hrsg2Air22556 = this.getCellData(sheet3, 130, 3);    // 2# HRSG AIR22556
-            String hrsg2Air22557 = this.getCellData(sheet3, 131, 3);    // 2# HRSG AIR22557
-            String hrsg2AiR22558 = this.getCellData(sheet3, 132, 3);    // 2# HRSG AIR22558
-            String hrsg2Qi22240 = this.getCellData(sheet3, 133, 3);     // 2# HRSG QI22240
-            String hrsg2Qi22241 = this.getCellData(sheet3, 134, 3);     // 2# HRSG QI22241
-            String hrsg2Qi22242 = this.getCellData(sheet3, 135, 3);     // 2# HRSG QI22242
+            String hrsg2Ai82301 = this.getCellData(false, sheet3, 113, 3);     // 2# HRSG AI82301
+            String hrsg2Ai82302 = this.getCellData(false, sheet3, 114, 3);     // 2# HRSG AI82302
+            String hrsg2Ai82303 = this.getCellData(false, sheet3, 115, 3);     // 2# HRSG AI82303
+            String hrsg2Ai82304 = this.getCellData(false, sheet3, 116, 3);     // 2# HRSG AI82304
+            String hrsg2Ai82305 = this.getCellData(false, sheet3, 117, 3);     // 2# HRSG AI82305
+            String hrsg2Ai82306 = this.getCellData(false, sheet3, 118, 3);     // 2# HRSG AI82306
+            String hrsg2Ai82307 = this.getCellData(false, sheet3, 119, 3);     // 2# HRSG AI82307
+            String hrsg2Ai82308 = this.getCellData(false, sheet3, 120, 3);     // 2# HRSG AI82308
+            String hrsg2Ai82309 = this.getCellData(false, sheet3, 121, 3);     // 2# HRSG AI82309
+            String hrsg2Ai82310 = this.getCellData(false, sheet3, 122, 3);     // 2# HRSG AI82310
+            String hrsg2Ai82311 = this.getCellData(false, sheet3, 123, 3);     // 2# HRSG AI82311
+            String hrsg2Ai82312 = this.getCellData(false, sheet3, 124, 3);     // 2# HRSG AI82312
+            String hrsg2Air22551 = this.getCellData(false, sheet3, 125, 3);    // 2# HRSG AIR22551
+            String hrsg2Air22552 = this.getCellData(false, sheet3, 126, 3);    // 2# HRSG AIR22552
+            String hrsg2Air22553 = this.getCellData(false, sheet3, 127, 3);    // 2# HRSG AIR22553
+            String hrsg2Air22554 = this.getCellData(false, sheet3, 128, 3);    // 2# HRSG AIR22554
+            String hrsg2Air22555 = this.getCellData(false, sheet3, 129, 3);    // 2# HRSG AIR22555
+            String hrsg2Air22556 = this.getCellData(false, sheet3, 130, 3);    // 2# HRSG AIR22556
+            String hrsg2Air22557 = this.getCellData(false, sheet3, 131, 3);    // 2# HRSG AIR22557
+            String hrsg2Air22558 = this.getCellData(false, sheet3, 132, 3);    // 2# HRSG AIR22558
+            String hrsg2Qi22240 = this.getCellData(false, sheet3, 133, 3);     // 2# HRSG QI22240
+            String hrsg2Qi22241 = this.getCellData(false, sheet3, 134, 3);     // 2# HRSG QI22241
+            String hrsg2Qi22242 = this.getCellData(false, sheet3, 135, 3);     // 2# HRSG QI22242
             TElecDashboard.setHrsg2Ai82301(hrsg2Ai82301);
             TElecDashboard.setHrsg2Ai82302(hrsg2Ai82302);
             TElecDashboard.setHrsg2Ai82303(hrsg2Ai82303);
@@ -460,34 +543,34 @@ public class DashboardDataPullUtils {
             TElecDashboard.setHrsg2Air22555(hrsg2Air22555);
             TElecDashboard.setHrsg2Air22556(hrsg2Air22556);
             TElecDashboard.setHrsg2Air22557(hrsg2Air22557);
-            TElecDashboard.setHrsg2AiR22558(hrsg2AiR22558);
+            TElecDashboard.setHrsg2Air22558(hrsg2Air22558);
             TElecDashboard.setHrsg2Qi22240(hrsg2Qi22240);
             TElecDashboard.setHrsg2Qi22241(hrsg2Qi22241);
             TElecDashboard.setHrsg2Qi22242(hrsg2Qi22242);
             // 3# HRSG
-            String hrsg3Ai82401 = this.getCellData(sheet3, 137, 3);;    // 3# HRSG AI82401
-            String hrsg3Ai82402 = this.getCellData(sheet3, 138, 3);;    // 3# HRSG AI82402
-            String hrsg3Ai82403 = this.getCellData(sheet3, 139, 3);;    // 3# HRSG AI82403
-            String hrsg3Ai82404 = this.getCellData(sheet3, 140, 3);;    // 3# HRSG AI82404
-            String hrsg3Ai82405 = this.getCellData(sheet3, 141, 3);;    // 3# HRSG AI82405
-            String hrsg3Ai82406 = this.getCellData(sheet3, 142, 3);;    // 3# HRSG AI82406
-            String hrsg3Ai82407 = this.getCellData(sheet3, 143, 3);;    // 3# HRSG AI82407
-            String hrsg3Ai82408 = this.getCellData(sheet3, 144, 3);;    // 3# HRSG AI82408
-            String hrsg3Ai82409 = this.getCellData(sheet3, 145, 3);;    // 3# HRSG AI82409
-            String hrsg3Ai82410 = this.getCellData(sheet3, 146, 3);;    // 3# HRSG AI82410
-            String hrsg3Ai82411 = this.getCellData(sheet3, 147, 3);;    // 3# HRSG AI82411
-            String hrsg3Ai82412 = this.getCellData(sheet3, 148, 3);;    // 3# HRSG AI82412
-            String hrsg3Air32551 = this.getCellData(sheet3, 149, 3);;   // 3# HRSG AIR32551
-            String hrsg3Air32552 = this.getCellData(sheet3, 150, 3);;   // 3# HRSG AIR32552
-            String hrsg3Air32553 = this.getCellData(sheet3, 151, 3);;   // 3# HRSG AIR32553
-            String hrsg3Air32554 = this.getCellData(sheet3, 152, 3);;   // 3# HRSG AIR32554
-            String hrsg3Air32555 = this.getCellData(sheet3, 153, 3);;   // 3# HRSG AIR32555
-            String hrsg3Air32556 = this.getCellData(sheet3, 154, 3);;   // 3# HRSG AIR32556
-            String hrsg3Air32557 = this.getCellData(sheet3, 155, 3);;   // 3# HRSG AIR32557
-            String hrsg3Air32558 = this.getCellData(sheet3, 156, 3);;   // 3# HRSG AIR32558
-            String hrsg3Qi32240 = this.getCellData(sheet3, 157, 3);;    // 3# HRSG QI32240
-            String hrsg3Qi32241 = this.getCellData(sheet3, 158, 3);;    // 3# HRSG QI32241
-            String hrsg3Qi32242 = this.getCellData(sheet3, 159, 3);;    // 3# HRSG QI32242
+            String hrsg3Ai82401 = this.getCellData(false, sheet3, 137, 3);;    // 3# HRSG AI82401
+            String hrsg3Ai82402 = this.getCellData(false, sheet3, 138, 3);;    // 3# HRSG AI82402
+            String hrsg3Ai82403 = this.getCellData(false, sheet3, 139, 3);;    // 3# HRSG AI82403
+            String hrsg3Ai82404 = this.getCellData(false, sheet3, 140, 3);;    // 3# HRSG AI82404
+            String hrsg3Ai82405 = this.getCellData(false, sheet3, 141, 3);;    // 3# HRSG AI82405
+            String hrsg3Ai82406 = this.getCellData(false, sheet3, 142, 3);;    // 3# HRSG AI82406
+            String hrsg3Ai82407 = this.getCellData(false, sheet3, 143, 3);;    // 3# HRSG AI82407
+            String hrsg3Ai82408 = this.getCellData(false, sheet3, 144, 3);;    // 3# HRSG AI82408
+            String hrsg3Ai82409 = this.getCellData(false, sheet3, 145, 3);;    // 3# HRSG AI82409
+            String hrsg3Ai82410 = this.getCellData(false, sheet3, 146, 3);;    // 3# HRSG AI82410
+            String hrsg3Ai82411 = this.getCellData(false, sheet3, 147, 3);;    // 3# HRSG AI82411
+            String hrsg3Ai82412 = this.getCellData(false, sheet3, 148, 3);;    // 3# HRSG AI82412
+            String hrsg3Air32551 = this.getCellData(false, sheet3, 149, 3);;   // 3# HRSG AIR32551
+            String hrsg3Air32552 = this.getCellData(false, sheet3, 150, 3);;   // 3# HRSG AIR32552
+            String hrsg3Air32553 = this.getCellData(false, sheet3, 151, 3);;   // 3# HRSG AIR32553
+            String hrsg3Air32554 = this.getCellData(false, sheet3, 152, 3);;   // 3# HRSG AIR32554
+            String hrsg3Air32555 = this.getCellData(false, sheet3, 153, 3);;   // 3# HRSG AIR32555
+            String hrsg3Air32556 = this.getCellData(false, sheet3, 154, 3);;   // 3# HRSG AIR32556
+            String hrsg3Air32557 = this.getCellData(false, sheet3, 155, 3);;   // 3# HRSG AIR32557
+            String hrsg3Air32558 = this.getCellData(false, sheet3, 156, 3);;   // 3# HRSG AIR32558
+            String hrsg3Qi32240 = this.getCellData(false, sheet3, 157, 3);;    // 3# HRSG QI32240
+            String hrsg3Qi32241 = this.getCellData(false, sheet3, 158, 3);;    // 3# HRSG QI32241
+            String hrsg3Qi32242 = this.getCellData(false, sheet3, 159, 3);;    // 3# HRSG QI32242
             TElecDashboard.setHrsg3Ai82401(hrsg3Ai82401);
             TElecDashboard.setHrsg3Ai82402(hrsg3Ai82402);
             TElecDashboard.setHrsg3Ai82403(hrsg3Ai82403);
@@ -512,7 +595,7 @@ public class DashboardDataPullUtils {
             TElecDashboard.setHrsg3Qi32241(hrsg3Qi32241);
             TElecDashboard.setHrsg3Qi32242(hrsg3Qi32242);
             // 控制台打印电厂大屏数据
-//            System.out.println(TElecDashboard.toString());
+            System.out.println(TElecDashboard.toString());
         } catch (Exception e) {
             e.printStackTrace();
         } finally {
@@ -534,7 +617,7 @@ public class DashboardDataPullUtils {
      * @param cellIndex 列下标
      * @return 单元格数据
      */
-    private String getCellData(Sheet sheet, int rowIndex, int cellIndex) {
+    private String getCellData(boolean isString, Sheet sheet, int rowIndex, int cellIndex) {
         // 单元格数据
         String cellValue = "";
         try {
@@ -543,13 +626,20 @@ public class DashboardDataPullUtils {
             // 根据列下表,获取单元格对象,如果单元格的值为空,则返回null
             Cell cell = row.getCell(cellIndex, Row.MissingCellPolicy.RETURN_BLANK_AS_NULL);
             if (cell != null) {
-                // 设置单元格格式
-                cell.setCellType(CellType.STRING);
-                // 获取单元格数据
-                cellValue = cell.getStringCellValue();
-                // 将excel空单元格中取到的"#NAME?"转换为空字符串
-                if ("#NAME?".equals(cellValue)) {
-                    cellValue = "";
+                if (isString) {
+                    // 设置单元格格式
+                    cell.setCellType(CellType.STRING);
+                } else {
+                    // 设置单元格格式
+                    cell.setCellType(CellType.FORMULA);
+                }
+                // 判断excel单元格格式
+                if (cell.getCellType() == CellType.FORMULA) {
+                    cellValue = null;
+                } else {
+                    // 获取单元格数据
+                    String value = cell.getStringCellValue();
+                    cellValue = value.equals("#NAME?") ? null : value;
                 }
             }
         } catch (Exception e) {

+ 436 - 0
src/main/resources/mapper/aspen/TElecdashboardRealtimeDao.xml

@@ -11,10 +11,446 @@
         <trim prefix="(" suffix=")" suffixOverrides=",">
             <if test="id != null">id,</if>
             <if test="pullDate != null">pull_date,</if>
+            <if test="gtg1PowerGenLevel != null">gtg1_power_gen_level,</if>
+            <if test="gtg1Efficiency != null">gtg1_efficiency,</if>
+            <if test="gtg2PowerGenLevel != null">gtg2_power_gen_level,</if>
+            <if test="gtg2Efficiency != null">gtg2_efficiency,</if>
+            <if test="gtg3PowerGenLevel != null">gtg3_power_gen_level,</if>
+            <if test="gtg3Efficiency != null">gtg3_efficiency,</if>
+            <if test="stgPowerGenLevel != null">stg_power_gen_level,</if>
+            <if test="stgEfficiency != null">stg_efficiency,</if>
+            <if test="totalPowerGen != null">total_power_gen,</if>
+            <if test="steamHhp != null">steam_hhp,</if>
+            <if test="steamHp != null">steam_hp,</if>
+            <if test="steamMp != null">steam_mp,</if>
+            <if test="steamLp != null">steam_lp,</if>
+            <if test="gasRealTime != null">gas_real_time,</if>
+            <if test="gasLeft != null">gas_left,</if>
+            <if test="gasUsed != null">gas_used,</if>
+            <if test="gasPlan != null">gas_plan,</if>
+            <if test="gasElec != null">gas_elec,</if>
+            <if test="gasSynGas != null">gas_syn_gas,</if>
+            <if test="gasU2 != null">gas_u2,</if>
+            <if test="gasStyrene != null">gas_styrene,</if>
+            <if test="elecPowerGen != null">elec_power_gen,</if>
+            <if test="elecPowerSwitch != null">elec_power_switch,</if>
+            <if test="elecUsed != null">elec_used,</if>
+            <if test="elecDiff != null">elec_diff,</if>
+            <if test="elecBycUsed != null">elec_byc_used,</if>
+            <if test="elecBocUsed != null">elec_boc_used,</if>
+            <if test="carbonUsed != null">carbon_used,</if>
+            <if test="carbonRealTime != null">carbon_real_time,</if>
+            <if test="sub != null">sub,</if>
+            <if test="subFurnaceLoad != null">sub_furnace_load,</if>
+            <if test="hhpPphhp != null">hhp_pphhp,</if>
+            <if test="hhpAaae != null">hhp_aaae,</if>
+            <if test="hhpGaa != null">hhp_gaa,</if>
+            <if test="hhpSyn != null">hhp_syn,</if>
+            <if test="hhpP3802 != null">hhp_p3802,</if>
+            <if test="hpLpg != null">hp_lpg,</if>
+            <if test="hpSub != null">hp_sub,</if>
+            <if test="hpNg != null">hp_ng,</if>
+            <if test="hpJ1501 != null">hp_j1501,</if>
+            <if test="hpJ1504In != null">hp_j1504_in,</if>
+            <if test="hpJ1504Out != null">hp_j1504_out,</if>
+            <if test="hpUser != null">hp_user,</if>
+            <if test="mpNcipMp != null">mp_ncip_mp,</if>
+            <if test="mp150511 != null">mp150511,</if>
+            <if test="mp150512 != null">mp150512,</if>
+            <if test="mpPpMp != null">mp_pp_mp,</if>
+            <if test="mpP9801In != null">mp_p9801_in,</if>
+            <if test="mpP9801Out != null">mp_p9801_out,</if>
+            <if test="mpJ1502 != null">mp_j1502,</if>
+            <if test="mpUser != null">mp_user,</if>
+            <if test="lpPpLp != null">lp_pp_lp,</if>
+            <if test="lpEmpty != null">lp_empty,</if>
+            <if test="lpMpLetdown != null">lp_mp_letdown,</if>
+            <if test="lpJ1509 != null">lp_j1509,</if>
+            <if test="lpJ1503 != null">lp_j1503,</if>
+            <if test="lpLdpeTs != null">lp_ldpe_ts,</if>
+            <if test="lpLdpeDm != null">lp_ldpe_dm,</if>
+            <if test="lpUser != null">lp_user,</if>
+            <if test="bccSyn != null">bcc_syn,</if>
+            <if test="bccYpc != null">bcc_ypc,</if>
+            <if test="hrsg1SmokeConvert != null">hrsg1_smoke_convert,</if>
+            <if test="hrsg1So2Convert != null">hrsg1_so2_convert,</if>
+            <if test="hrsg1NoxConvert != null">hrsg1_nox_convert,</if>
+            <if test="hrsg2SmokeConvert != null">hrsg2_smoke_convert,</if>
+            <if test="hrsg2So2Convert != null">hrsg2_so2_convert,</if>
+            <if test="hrsg2NoxConvert != null">hrsg2_nox_convert,</if>
+            <if test="hrsg3SmokeConvert != null">hrsg3_smoke_convert,</if>
+            <if test="hrsg3So2Convert != null">hrsg3_so2_convert,</if>
+            <if test="hrsg3NoxConvert != null">hrsg3_nox_convert,</if>
+            <if test="rainPh != null">rain_ph,</if>
+            <if test="rainCod != null">rain_cod,</if>
+            <if test="wastePh != null">waste_ph,</if>
+            <if test="wasteCod != null">waste_cod,</if>
+            <if test="gtg45ha1 != null">gtg45ha1,</if>
+            <if test="gtg45ha2 != null">gtg45ha2,</if>
+            <if test="gtg45ha3 != null">gtg45ha3,</if>
+            <if test="gtg45ha4 != null">gtg45ha4,</if>
+            <if test="gtg45ha5 != null">gtg45ha5,</if>
+            <if test="gtg45ha6 != null">gtg45ha6,</if>
+            <if test="gtg45ha7 != null">gtg45ha7,</if>
+            <if test="gtg45ha8 != null">gtg45ha8,</if>
+            <if test="gtg45ha9 != null">gtg45ha9,</if>
+            <if test="gtg45ht1 != null">gtg45ht1,</if>
+            <if test="gtg45ht2 != null">gtg45ht2,</if>
+            <if test="gtg45ht3 != null">gtg45ht3,</if>
+            <if test="gtg45ht4 != null">gtg45ht4,</if>
+            <if test="gtg45ht5 != null">gtg45ht5,</if>
+            <if test="gtg45ht6 != null">gtg45ht6,</if>
+            <if test="qt61001 != null">qt61001,</if>
+            <if test="qt61002 != null">qt61002,</if>
+            <if test="qt61003 != null">qt61003,</if>
+            <if test="qt61004 != null">qt61004,</if>
+            <if test="qt61005 != null">qt61005,</if>
+            <if test="qt61101 != null">qt61101,</if>
+            <if test="qt61102 != null">qt61102,</if>
+            <if test="qt61103 != null">qt61103,</if>
+            <if test="qt61104 != null">qt61104,</if>
+            <if test="qt61105 != null">qt61105,</if>
+            <if test="qt76001 != null">qt76001,</if>
+            <if test="qt76002 != null">qt76002,</if>
+            <if test="qt76041 != null">qt76041,</if>
+            <if test="qt80001 != null">qt80001,</if>
+            <if test="qt80002 != null">qt80002,</if>
+            <if test="qt80003 != null">qt80003,</if>
+            <if test="qt91001 != null">qt91001,</if>
+            <if test="qt91002 != null">qt91002,</if>
+            <if test="qt91003 != null">qt91003,</if>
+            <if test="qt91004 != null">qt91004,</if>
+            <if test="qt91005 != null">qt91005,</if>
+            <if test="qt91006 != null">qt91006,</if>
+            <if test="qt91011 != null">qt91011,</if>
+            <if test="qt91012 != null">qt91012,</if>
+            <if test="qt91013 != null">qt91013,</if>
+            <if test="at83001 != null">at83001,</if>
+            <if test="at83002 != null">at83002,</if>
+            <if test="at83003 != null">at83003,</if>
+            <if test="at83004 != null">at83004,</if>
+            <if test="qt12001 != null">qt12001,</if>
+            <if test="qt12501 != null">qt12501,</if>
+            <if test="qt12502 != null">qt12502,</if>
+            <if test="qt22001 != null">qt22001,</if>
+            <if test="qt22501 != null">qt22501,</if>
+            <if test="qt22502 != null">qt22502,</if>
+            <if test="qt32001 != null">qt32001,</if>
+            <if test="qt32002 != null">qt32002,</if>
+            <if test="qt32005 != null">qt32005,</if>
+            <if test="qt32003 != null">qt32003,</if>
+            <if test="qt32004 != null">qt32004,</if>
+            <if test="ai82002 != null">ai82002,</if>
+            <if test="ai82003 != null">ai82003,</if>
+            <if test="ai82004 != null">ai82004,</if>
+            <if test="ai82005 != null">ai82005,</if>
+            <if test="ai82006 != null">ai82006,</if>
+            <if test="ai82007 != null">ai82007,</if>
+            <if test="ai82008 != null">ai82008,</if>
+            <if test="ai82009 != null">ai82009,</if>
+            <if test="ai82010 != null">ai82010,</if>
+            <if test="ai82011 != null">ai82011,</if>
+            <if test="ai82101 != null">ai82101,</if>
+            <if test="ai82102 != null">ai82102,</if>
+            <if test="ai82103 != null">ai82103,</if>
+            <if test="ai82104 != null">ai82104,</if>
+            <if test="ai82105 != null">ai82105,</if>
+            <if test="ai82106 != null">ai82106,</if>
+            <if test="ai82107 != null">ai82107,</if>
+            <if test="ai82108 != null">ai82108,</if>
+            <if test="ai82109 != null">ai82109,</if>
+            <if test="ai82110 != null">ai82110,</if>
+            <if test="ai82111 != null">ai82111,</if>
+            <if test="ai82112 != null">ai82112,</if>
+            <if test="ai82113 != null">ai82113,</if>
+            <if test="hrsg1Ai82201 != null">hrsg1_ai82201,</if>
+            <if test="hrsg1Ai82202 != null">hrsg1_ai82202,</if>
+            <if test="hrsg1Ai82203 != null">hrsg1_ai82203,</if>
+            <if test="hrsg1Ai82204 != null">hrsg1_ai82204,</if>
+            <if test="hrsg1Ai82205 != null">hrsg1_ai82205,</if>
+            <if test="hrsg1Ai82206 != null">hrsg1_ai82206,</if>
+            <if test="hrsg1Ai82207 != null">hrsg1_ai82207,</if>
+            <if test="hrsg1Ai82208 != null">hrsg1_ai82208,</if>
+            <if test="hrsg1Ai82209 != null">hrsg1_ai82209,</if>
+            <if test="hrsg1Ai82210 != null">hrsg1_ai82210,</if>
+            <if test="hrsg1Ai82211 != null">hrsg1_ai82211,</if>
+            <if test="hrsg1Ai82212 != null">hrsg1_ai82212,</if>
+            <if test="hrsg1Air12551 != null">hrsg1_air12551,</if>
+            <if test="hrsg1Air12552 != null">hrsg1_air12552,</if>
+            <if test="hrsg1Air12553 != null">hrsg1_air12553,</if>
+            <if test="hrsg1Air12554 != null">hrsg1_air12554,</if>
+            <if test="hrsg1Air12555 != null">hrsg1_air12555,</if>
+            <if test="hrsg1Air12556 != null">hrsg1_air12556,</if>
+            <if test="hrsg1Air12557 != null">hrsg1_air12557,</if>
+            <if test="hrsg1Air12558 != null">hrsg1_air12558,</if>
+            <if test="hrsg2Ai82301 != null">hrsg2_ai82301,</if>
+            <if test="hrsg2Ai82302 != null">hrsg2_ai82302,</if>
+            <if test="hrsg2Ai82303 != null">hrsg2_ai82303,</if>
+            <if test="hrsg2Ai82304 != null">hrsg2_ai82304,</if>
+            <if test="hrsg2Ai82305 != null">hrsg2_ai82305,</if>
+            <if test="hrsg2Ai82306 != null">hrsg2_ai82306,</if>
+            <if test="hrsg2Ai82307 != null">hrsg2_ai82307,</if>
+            <if test="hrsg2Ai82308 != null">hrsg2_ai82308,</if>
+            <if test="hrsg2Ai82309 != null">hrsg2_ai82309,</if>
+            <if test="hrsg2Ai82310 != null">hrsg2_ai82310,</if>
+            <if test="hrsg2Ai82311 != null">hrsg2_ai82311,</if>
+            <if test="hrsg2Ai82312 != null">hrsg2_ai82312,</if>
+            <if test="hrsg2Air22551 != null">hrsg2_air22551,</if>
+            <if test="hrsg2Air22552 != null">hrsg2_air22552,</if>
+            <if test="hrsg2Air22553 != null">hrsg2_air22553,</if>
+            <if test="hrsg2Air22554 != null">hrsg2_air22554,</if>
+            <if test="hrsg2Air22555 != null">hrsg2_air22555,</if>
+            <if test="hrsg2Air22556 != null">hrsg2_air22556,</if>
+            <if test="hrsg2Air22557 != null">hrsg2_air22557,</if>
+            <if test="hrsg2Air22558 != null">hrsg2_air22558,</if>
+            <if test="hrsg2Qi22240 != null">hrsg2_qi22240,</if>
+            <if test="hrsg2Qi22241 != null">hrsg2_qi22241,</if>
+            <if test="hrsg2Qi22242 != null">hrsg2_qi22242,</if>
+            <if test="hrsg3Ai82401 != null">hrsg3_ai82401,</if>
+            <if test="hrsg3Ai82402 != null">hrsg3_ai82402,</if>
+            <if test="hrsg3Ai82403 != null">hrsg3_ai82403,</if>
+            <if test="hrsg3Ai82404 != null">hrsg3_ai82404,</if>
+            <if test="hrsg3Ai82405 != null">hrsg3_ai82405,</if>
+            <if test="hrsg3Ai82406 != null">hrsg3_ai82406,</if>
+            <if test="hrsg3Ai82407 != null">hrsg3_ai82407,</if>
+            <if test="hrsg3Ai82408 != null">hrsg3_ai82408,</if>
+            <if test="hrsg3Ai82409 != null">hrsg3_ai82409,</if>
+            <if test="hrsg3Ai82410 != null">hrsg3_ai82410,</if>
+            <if test="hrsg3Ai82411 != null">hrsg3_ai82411,</if>
+            <if test="hrsg3Ai82412 != null">hrsg3_ai82412,</if>
+            <if test="hrsg3Air32551 != null">hrsg3_air32551,</if>
+            <if test="hrsg3Air32552 != null">hrsg3_air32552,</if>
+            <if test="hrsg3Air32553 != null">hrsg3_air32553,</if>
+            <if test="hrsg3Air32554 != null">hrsg3_air32554,</if>
+            <if test="hrsg3Air32555 != null">hrsg3_air32555,</if>
+            <if test="hrsg3Air32556 != null">hrsg3_air32556,</if>
+            <if test="hrsg3Air32557 != null">hrsg3_air32557,</if>
+            <if test="hrsg3Air32558 != null">hrsg3_air32558,</if>
+            <if test="hrsg3Qi32240 != null">hrsg3_qi32240,</if>
+            <if test="hrsg3Qi32241 != null">hrsg3_qi32241,</if>
+            <if test="hrsg3Qi32242 != null">hrsg3_qi32242,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="id != null">#{id},</if>
             <if test="pullDate != null">#{pullDate},</if>
+            <if test="gtg1PowerGenLevel != null">#{gtg1PowerGenLevel},</if>
+            <if test="gtg1Efficiency != null">#{gtg1Efficiency},</if>
+            <if test="gtg2PowerGenLevel != null">#{gtg2PowerGenLevel},</if>
+            <if test="gtg2Efficiency != null">#{gtg2Efficiency},</if>
+            <if test="gtg3PowerGenLevel != null">#{gtg3PowerGenLevel},</if>
+            <if test="gtg3Efficiency != null">#{gtg3Efficiency},</if>
+            <if test="stgPowerGenLevel != null">#{stgPowerGenLevel},</if>
+            <if test="stgEfficiency != null">#{stgEfficiency},</if>
+            <if test="totalPowerGen != null">#{totalPowerGen},</if>
+            <if test="steamHhp != null">#{steamHhp},</if>
+            <if test="steamHp != null">#{steamHp},</if>
+            <if test="steamMp != null">#{steamMp},</if>
+            <if test="steamLp != null">#{steamLp},</if>
+            <if test="gasRealTime != null">#{gasRealTime},</if>
+            <if test="gasLeft != null">#{gasLeft},</if>
+            <if test="gasUsed != null">#{gasUsed},</if>
+            <if test="gasPlan != null">#{gasPlan},</if>
+            <if test="gasElec != null">#{gasElec},</if>
+            <if test="gasSynGas != null">#{gasSynGas},</if>
+            <if test="gasU2 != null">#{gasU2},</if>
+            <if test="gasStyrene != null">#{gasStyrene},</if>
+            <if test="elecPowerGen != null">#{elecPowerGen},</if>
+            <if test="elecPowerSwitch != null">#{elecPowerSwitch},</if>
+            <if test="elecUsed != null">#{elecUsed},</if>
+            <if test="elecDiff != null">#{elecDiff},</if>
+            <if test="elecBycUsed != null">#{elecBycUsed},</if>
+            <if test="elecBocUsed != null">#{elecBocUsed},</if>
+            <if test="carbonUsed != null">#{carbonUsed},</if>
+            <if test="carbonRealTime != null">#{carbonRealTime},</if>
+            <if test="sub != null">#{sub},</if>
+            <if test="subFurnaceLoad != null">#{subFurnaceLoad},</if>
+            <if test="hhpPphhp != null">#{hhpPphhp},</if>
+            <if test="hhpAaae != null">#{hhpAaae},</if>
+            <if test="hhpGaa != null">#{hhpGaa},</if>
+            <if test="hhpSyn != null">#{hhpSyn},</if>
+            <if test="hhpP3802 != null">#{hhpP3802},</if>
+            <if test="hpLpg != null">#{hpLpg},</if>
+            <if test="hpSub != null">#{hpSub},</if>
+            <if test="hpNg != null">#{hpNg},</if>
+            <if test="hpJ1501 != null">#{hpJ1501},</if>
+            <if test="hpJ1504In != null">#{hpJ1504In},</if>
+            <if test="hpJ1504Out != null">#{hpJ1504Out},</if>
+            <if test="hpUser != null">#{hpUser},</if>
+            <if test="mpNcipMp != null">#{mpNcipMp},</if>
+            <if test="mp150511 != null">#{mp150511},</if>
+            <if test="mp150512 != null">#{mp150512},</if>
+            <if test="mpPpMp != null">#{mpPpMp},</if>
+            <if test="mpP9801In != null">#{mpP9801In},</if>
+            <if test="mpP9801Out != null">#{mpP9801Out},</if>
+            <if test="mpJ1502 != null">#{mpJ1502},</if>
+            <if test="mpUser != null">#{mpUser},</if>
+            <if test="lpPpLp != null">#{lpPpLp},</if>
+            <if test="lpEmpty != null">#{lpEmpty},</if>
+            <if test="lpMpLetdown != null">#{lpMpLetdown},</if>
+            <if test="lpJ1509 != null">#{lpJ1509},</if>
+            <if test="lpJ1503 != null">#{lpJ1503},</if>
+            <if test="lpLdpeTs != null">#{lpLdpeTs},</if>
+            <if test="lpLdpeDm != null">#{lpLdpeDm},</if>
+            <if test="lpUser != null">#{lpUser},</if>
+            <if test="bccSyn != null">#{bccSyn},</if>
+            <if test="bccYpc != null">#{bccYpc},</if>
+            <if test="hrsg1SmokeConvert != null">#{hrsg1SmokeConvert},</if>
+            <if test="hrsg1So2Convert != null">#{hrsg1So2Convert},</if>
+            <if test="hrsg1NoxConvert != null">#{hrsg1NoxConvert},</if>
+            <if test="hrsg2SmokeConvert != null">#{hrsg2SmokeConvert},</if>
+            <if test="hrsg2So2Convert != null">#{hrsg2So2Convert},</if>
+            <if test="hrsg2NoxConvert != null">#{hrsg2NoxConvert},</if>
+            <if test="hrsg3SmokeConvert != null">#{hrsg3SmokeConvert},</if>
+            <if test="hrsg3So2Convert != null">#{hrsg3So2Convert},</if>
+            <if test="hrsg3NoxConvert != null">#{hrsg3NoxConvert},</if>
+            <if test="rainPh != null">#{rainPh},</if>
+            <if test="rainCod != null">#{rainCod},</if>
+            <if test="wastePh != null">#{wastePh},</if>
+            <if test="wasteCod != null">#{wasteCod},</if>
+            <if test="gtg45ha1 != null">#{gtg45ha1},</if>
+            <if test="gtg45ha2 != null">#{gtg45ha2},</if>
+            <if test="gtg45ha3 != null">#{gtg45ha3},</if>
+            <if test="gtg45ha4 != null">#{gtg45ha4},</if>
+            <if test="gtg45ha5 != null">#{gtg45ha5},</if>
+            <if test="gtg45ha6 != null">#{gtg45ha6},</if>
+            <if test="gtg45ha7 != null">#{gtg45ha7},</if>
+            <if test="gtg45ha8 != null">#{gtg45ha8},</if>
+            <if test="gtg45ha9 != null">#{gtg45ha9},</if>
+            <if test="gtg45ht1 != null">#{gtg45ht1},</if>
+            <if test="gtg45ht2 != null">#{gtg45ht2},</if>
+            <if test="gtg45ht3 != null">#{gtg45ht3},</if>
+            <if test="gtg45ht4 != null">#{gtg45ht4},</if>
+            <if test="gtg45ht5 != null">#{gtg45ht5},</if>
+            <if test="gtg45ht6 != null">#{gtg45ht6},</if>
+            <if test="qt61001 != null">#{qt61001},</if>
+            <if test="qt61002 != null">#{qt61002},</if>
+            <if test="qt61003 != null">#{qt61003},</if>
+            <if test="qt61004 != null">#{qt61004},</if>
+            <if test="qt61005 != null">#{qt61005},</if>
+            <if test="qt61101 != null">#{qt61101},</if>
+            <if test="qt61102 != null">#{qt61102},</if>
+            <if test="qt61103 != null">#{qt61103},</if>
+            <if test="qt61104 != null">#{qt61104},</if>
+            <if test="qt61105 != null">#{qt61105},</if>
+            <if test="qt76001 != null">#{qt76001},</if>
+            <if test="qt76002 != null">#{qt76002},</if>
+            <if test="qt76041 != null">#{qt76041},</if>
+            <if test="qt80001 != null">#{qt80001},</if>
+            <if test="qt80002 != null">#{qt80002},</if>
+            <if test="qt80003 != null">#{qt80003},</if>
+            <if test="qt91001 != null">#{qt91001},</if>
+            <if test="qt91002 != null">#{qt91002},</if>
+            <if test="qt91003 != null">#{qt91003},</if>
+            <if test="qt91004 != null">#{qt91004},</if>
+            <if test="qt91005 != null">#{qt91005},</if>
+            <if test="qt91006 != null">#{qt91006},</if>
+            <if test="qt91011 != null">#{qt91011},</if>
+            <if test="qt91012 != null">#{qt91012},</if>
+            <if test="qt91013 != null">#{qt91013},</if>
+            <if test="at83001 != null">#{at83001},</if>
+            <if test="at83002 != null">#{at83002},</if>
+            <if test="at83003 != null">#{at83003},</if>
+            <if test="at83004 != null">#{at83004},</if>
+            <if test="qt12001 != null">#{qt12001},</if>
+            <if test="qt12501 != null">#{qt12501},</if>
+            <if test="qt12502 != null">#{qt12502},</if>
+            <if test="qt22001 != null">#{qt22001},</if>
+            <if test="qt22501 != null">#{qt22501},</if>
+            <if test="qt22502 != null">#{qt22502},</if>
+            <if test="qt32001 != null">#{qt32001},</if>
+            <if test="qt32002 != null">#{qt32002},</if>
+            <if test="qt32005 != null">#{qt32005},</if>
+            <if test="qt32003 != null">#{qt32003},</if>
+            <if test="qt32004 != null">#{qt32004},</if>
+            <if test="ai82002 != null">#{ai82002},</if>
+            <if test="ai82003 != null">#{ai82003},</if>
+            <if test="ai82004 != null">#{ai82004},</if>
+            <if test="ai82005 != null">#{ai82005},</if>
+            <if test="ai82006 != null">#{ai82006},</if>
+            <if test="ai82007 != null">#{ai82007},</if>
+            <if test="ai82008 != null">#{ai82008},</if>
+            <if test="ai82009 != null">#{ai82009},</if>
+            <if test="ai82010 != null">#{ai82010},</if>
+            <if test="ai82011 != null">#{ai82011},</if>
+            <if test="ai82101 != null">#{ai82101},</if>
+            <if test="ai82102 != null">#{ai82102},</if>
+            <if test="ai82103 != null">#{ai82103},</if>
+            <if test="ai82104 != null">#{ai82104},</if>
+            <if test="ai82105 != null">#{ai82105},</if>
+            <if test="ai82106 != null">#{ai82106},</if>
+            <if test="ai82107 != null">#{ai82107},</if>
+            <if test="ai82108 != null">#{ai82108},</if>
+            <if test="ai82109 != null">#{ai82109},</if>
+            <if test="ai82110 != null">#{ai82110},</if>
+            <if test="ai82111 != null">#{ai82111},</if>
+            <if test="ai82112 != null">#{ai82112},</if>
+            <if test="ai82113 != null">#{ai82113},</if>
+            <if test="hrsg1Ai82201 != null">#{hrsg1Ai82201},</if>
+            <if test="hrsg1Ai82202 != null">#{hrsg1Ai82202},</if>
+            <if test="hrsg1Ai82203 != null">#{hrsg1Ai82203},</if>
+            <if test="hrsg1Ai82204 != null">#{hrsg1Ai82204},</if>
+            <if test="hrsg1Ai82205 != null">#{hrsg1Ai82205},</if>
+            <if test="hrsg1Ai82206 != null">#{hrsg1Ai82206},</if>
+            <if test="hrsg1Ai82207 != null">#{hrsg1Ai82207},</if>
+            <if test="hrsg1Ai82208 != null">#{hrsg1Ai82208},</if>
+            <if test="hrsg1Ai82209 != null">#{hrsg1Ai82209},</if>
+            <if test="hrsg1Ai82210 != null">#{hrsg1Ai82210},</if>
+            <if test="hrsg1Ai82211 != null">#{hrsg1Ai82211},</if>
+            <if test="hrsg1Ai82212 != null">#{hrsg1Ai82212},</if>
+            <if test="hrsg1Air12551 != null">#{hrsg1Air12551},</if>
+            <if test="hrsg1Air12552 != null">#{hrsg1Air12552},</if>
+            <if test="hrsg1Air12553 != null">#{hrsg1Air12553},</if>
+            <if test="hrsg1Air12554 != null">#{hrsg1Air12554},</if>
+            <if test="hrsg1Air12555 != null">#{hrsg1Air12555},</if>
+            <if test="hrsg1Air12556 != null">#{hrsg1Air12556},</if>
+            <if test="hrsg1Air12557 != null">#{hrsg1Air12557},</if>
+            <if test="hrsg1Air12558 != null">#{hrsg1Air12558},</if>
+            <if test="hrsg2Ai82301 != null">#{hrsg2Ai82301},</if>
+            <if test="hrsg2Ai82302 != null">#{hrsg2Ai82302},</if>
+            <if test="hrsg2Ai82303 != null">#{hrsg2Ai82303},</if>
+            <if test="hrsg2Ai82304 != null">#{hrsg2Ai82304},</if>
+            <if test="hrsg2Ai82305 != null">#{hrsg2Ai82305},</if>
+            <if test="hrsg2Ai82306 != null">#{hrsg2Ai82306},</if>
+            <if test="hrsg2Ai82307 != null">#{hrsg2Ai82307},</if>
+            <if test="hrsg2Ai82308 != null">#{hrsg2Ai82308},</if>
+            <if test="hrsg2Ai82309 != null">#{hrsg2Ai82309},</if>
+            <if test="hrsg2Ai82310 != null">#{hrsg2Ai82310},</if>
+            <if test="hrsg2Ai82311 != null">#{hrsg2Ai82311},</if>
+            <if test="hrsg2Ai82312 != null">#{hrsg2Ai82312},</if>
+            <if test="hrsg2Air22551 != null">#{hrsg2Air22551},</if>
+            <if test="hrsg2Air22552 != null">#{hrsg2Air22552},</if>
+            <if test="hrsg2Air22553 != null">#{hrsg2Air22553},</if>
+            <if test="hrsg2Air22554 != null">#{hrsg2Air22554},</if>
+            <if test="hrsg2Air22555 != null">#{hrsg2Air22555},</if>
+            <if test="hrsg2Air22556 != null">#{hrsg2Air22556},</if>
+            <if test="hrsg2Air22557 != null">#{hrsg2Air22557},</if>
+            <if test="hrsg2Air22558 != null">#{hrsg2Air22558},</if>
+            <if test="hrsg2Qi22240 != null">#{hrsg2Qi22240},</if>
+            <if test="hrsg2Qi22241 != null">#{hrsg2Qi22241},</if>
+            <if test="hrsg2Qi22242 != null">#{hrsg2Qi22242},</if>
+            <if test="hrsg3Ai82401 != null">#{hrsg3Ai82401},</if>
+            <if test="hrsg3Ai82402 != null">#{hrsg3Ai82402},</if>
+            <if test="hrsg3Ai82403 != null">#{hrsg3Ai82403},</if>
+            <if test="hrsg3Ai82404 != null">#{hrsg3Ai82404},</if>
+            <if test="hrsg3Ai82405 != null">#{hrsg3Ai82405},</if>
+            <if test="hrsg3Ai82406 != null">#{hrsg3Ai82406},</if>
+            <if test="hrsg3Ai82407 != null">#{hrsg3Ai82407},</if>
+            <if test="hrsg3Ai82408 != null">#{hrsg3Ai82408},</if>
+            <if test="hrsg3Ai82409 != null">#{hrsg3Ai82409},</if>
+            <if test="hrsg3Ai82410 != null">#{hrsg3Ai82410},</if>
+            <if test="hrsg3Ai82411 != null">#{hrsg3Ai82411},</if>
+            <if test="hrsg3Ai82412 != null">#{hrsg3Ai82412},</if>
+            <if test="hrsg3Air32551 != null">#{hrsg3Air32551},</if>
+            <if test="hrsg3Air32552 != null">#{hrsg3Air32552},</if>
+            <if test="hrsg3Air32553 != null">#{hrsg3Air32553},</if>
+            <if test="hrsg3Air32554 != null">#{hrsg3Air32554},</if>
+            <if test="hrsg3Air32555 != null">#{hrsg3Air32555},</if>
+            <if test="hrsg3Air32556 != null">#{hrsg3Air32556},</if>
+            <if test="hrsg3Air32557 != null">#{hrsg3Air32557},</if>
+            <if test="hrsg3Air32558 != null">#{hrsg3Air32558},</if>
+            <if test="hrsg3Qi32240 != null">#{hrsg3Qi32240},</if>
+            <if test="hrsg3Qi32241 != null">#{hrsg3Qi32241},</if>
+            <if test="hrsg3Qi32242 != null">#{hrsg3Qi32242},</if>
         </trim>
     </insert>