Przeglądaj źródła

电厂大屏数据抓取test

Wang Zi Wen 3 lat temu
rodzic
commit
645851207d

+ 0 - 290
src/main/java/io/renren/modules/test/TestPullDataCsv.java

@@ -1,290 +0,0 @@
-package io.renren.modules.test;
-
-import com.opencsv.CSVReader;
-import io.renren.modules.aspen.entity.TDashboarddayelecEntity;
-import io.renren.modules.aspen.service.TDashboarddayelecService;
-import io.renren.modules.sys.controller.AbstractController;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.scheduling.annotation.EnableScheduling;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-
-import java.io.FileReader;
-import java.io.IOException;
-import java.math.BigDecimal;
-import java.util.Calendar;
-import java.util.Date;
-
-/**
- * 电厂大屏抓取数据测试类(.csv文件)
- *
- * @author Wang Zi Wen
- * @email wangggziwen@163.com
- * @date 2022/04/15 11:09:02
- */
-@Component
-@Configuration      //1.主要用于标记配置类,兼备Component的效果。
-@EnableScheduling   // 2.开启定时任务
-public class TestPullDataCsv extends AbstractController {
-
-    @Autowired
-    private TDashboarddayelecService tDashboarddayelecService;
-
-    public static void main(String[] args) {
-//        TestPullDataCsv testPullDataCsv = new TestPullDataCsv();
-//        testPullDataCsv.getCsvData();
-    }
-
-//    @Scheduled(cron = "9,19,29,39,49,59 * * * * ?" )
-    public void getCsvData(){
-        logger.info("实时获取数据");
-//        String csvFile = "D://ssyFile/物料.csv";
-        String csvFile = "D://elecdashboardaspen/elecDashboardData1.csv";
-        TDashboarddayelecEntity tDashboarddayelecEntity = new TDashboarddayelecEntity();
-        CSVReader reader = null;
-        try {
-            reader = new CSVReader(new FileReader(csvFile));
-            String[] line;
-            //定义行数
-            int i = 0;
-            while ((line = reader.readNext()) != null) {
-                i++;
-                if (i == 2) {
-                    logger.info("第" + i + "行");
-                    for (int j = 2; j < 7; j++) {
-                        logger.info("读数:" + line[j]);
-                        if (line[j].equals("")) {
-                            line[j] = "0.0";
-                        }else {
-                            if (!Character.isDigit(line[j].charAt(0))) {
-                                line[j] = "0.0";
-                            }else {
-                                BigDecimal b = new BigDecimal(Double.parseDouble(line[j]));
-                                double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                                line[j] = String.valueOf(f);
-                            }
-                        }
-                        logger.info(line[j]);
-                    }
-                    tDashboarddayelecEntity.setGtg1Lv(line[2]);
-                    tDashboarddayelecEntity.setGtg2Lv(line[3]);
-                    tDashboarddayelecEntity.setGtg3Lv(line[4]);
-                    tDashboarddayelecEntity.setStg1Lv(line[5]);
-                    tDashboarddayelecEntity.setMwhLv(line[6]);
-                }
-                if (i == 3) {
-                    logger.info("第" + i + "行");
-                    for (int j = 0; j < 6; j++) {
-                        logger.info("读数:" + line[j]);
-                        if (line[j].equals("")) {
-                            line[j] = "0.0";
-                        }else {
-                            if (!Character.isDigit(line[j].charAt(0))) {
-                                line[j] = "0.0";
-                            }else {
-                                BigDecimal b = new BigDecimal(Double.parseDouble(line[j]));
-                                double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                                line[j] = String.valueOf(f);
-                            }
-                        }
-                        logger.info(line[j]);
-                    }
-                    tDashboarddayelecEntity.setGtg1Wr(line[2]);
-                    tDashboarddayelecEntity.setGtg2Wr(line[3]);
-                    tDashboarddayelecEntity.setGtg3Wr(line[4]);
-                    tDashboarddayelecEntity.setStg1Wr(line[5]);
-                }
-                if (i == 4) {
-                    logger.info("第" + i + "行");
-                    for (int j = 0; j < 6; j++) {
-                        logger.info("读数:" + line[j]);
-                        if (line[j].equals("")) {
-                            line[j] = "0.0";
-                        }else {
-                            if (!Character.isDigit(line[j].charAt(0))) {
-                                line[j] = "0.0";
-                            }else {
-                                BigDecimal b = new BigDecimal(Double.parseDouble(line[j]));
-                                double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                                line[j] = String.valueOf(f);
-                            }
-                        }
-                        logger.info(line[j]);
-                    }
-                    tDashboarddayelecEntity.setMwhWr(line[6]);
-                }
-                if (i == 6) {
-                    logger.info("第" + i + "行");
-                    for (int j = 2; j < 7; j++) {
-                        logger.info("读数:" + line[j]);
-                        if (line[j].equals("")) {
-                            line[j] = "0";
-                        }else {
-                            if (!Character.isDigit(line[j].charAt(0))) {
-                                line[j] = "0";
-                            }else {
-                                BigDecimal b = new BigDecimal(Double.parseDouble(line[j]));
-                                double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                                line[j] = String.valueOf(f);
-                            }
-                        }
-                        logger.info(line[j]);
-                    }
-                    tDashboarddayelecEntity.setHhp(line[2]);
-                    tDashboarddayelecEntity.setHp(line[3]);
-                    tDashboarddayelecEntity.setLp(line[4]);
-                    tDashboarddayelecEntity.setMp(line[5]);
-                    tDashboarddayelecEntity.setTotalConsumption(line[6]);
-                }
-                if (i == 9) {
-                    logger.info("第" + i + "行");
-                    for (int j = 2; j < 6; j++) {
-                        logger.info("读数:" + line[j]);
-                        if (line[j].equals("")) {
-                            line[j] = "0.0";
-                        }else {
-                            if (!Character.isDigit(line[j].charAt(0))) {
-                                line[j] = "0.0";
-                            }else {
-                                BigDecimal b = new BigDecimal(Double.parseDouble(line[j]));
-                                double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                                line[j] = String.valueOf(f);
-                            }
-                        }
-                        logger.info(line[j]);
-                    }
-//                    Integer HhpNum=new Integer(line[2]).intValue();
-//                    Integer HpNum=new Integer(line[3]).intValue();
-//                    Integer LpNum=new Integer(line[4]).intValue();
-//                    Integer MpNum=new Integer(line[5]).intValue();
-                    tDashboarddayelecEntity.setHhpNum(line[2]);
-                    tDashboarddayelecEntity.setHpNum(line[3]);
-                    tDashboarddayelecEntity.setLpNum(line[4]);
-                    tDashboarddayelecEntity.setMpNum(line[5]);
-
-                }
-                if (i == 10) {
-                    logger.info("第" + i + "行");
-                    for (int j = 2; j < 6; j++) {
-                        logger.info("读数:" + line[j]);
-                        if (line[j].equals("")) {
-                            line[j] = "0";
-                        }else {
-                            if (!Character.isDigit(line[j].charAt(0))) {
-                                line[j] = "0";
-                            }else {
-                                BigDecimal b = new BigDecimal(Double.parseDouble(line[j]));
-                                double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                                line[j] = String.valueOf(f);
-                            }
-                        }
-                        logger.info(line[j]);
-                    }
-                    tDashboarddayelecEntity.setHhpTemp(line[2]);
-                    tDashboarddayelecEntity.setHpTemp(line[3]);
-                    tDashboarddayelecEntity.setLpTemp(line[4]);
-                    tDashboarddayelecEntity.setMpTemp(line[5]);
-                }
-                /* SS */
-                if (i == 13) {
-                    logger.info("第" + i + "行");
-                    for(int j=2;j<5;j++){
-                        if (line[j].equals("")) {
-                            line[j] = "0.0";
-                        }else {
-                            if (!Character.isDigit(line[j].charAt(0))) {
-                                line[j] = "0.0";
-                            }else {
-                                BigDecimal b = new BigDecimal(Double.parseDouble(line[j]));
-                                double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                                line[j] = String.valueOf(f);
-                            }
-                        }
-                        logger.info(line[j]);
-                    }
-                    tDashboarddayelecEntity.setShihua(line[2]);
-                    tDashboarddayelecEntity.setShiyou(line[3]);
-                    tDashboarddayelecEntity.setShunshiliang(line[4]);
-                }
-                if (i == 18) {
-                    logger.info("第" + i + "行");
-                    for(int j=2;j<6;j++){
-                        if (line[j].equals("")) {
-                            line[j] = "0.0";
-                        }else {
-                            if (!Character.isDigit(line[j].charAt(0))) {
-                                line[j] = "0.0";
-                            }else {
-                                BigDecimal b = new BigDecimal(Double.parseDouble(line[j]));
-                                double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                                line[j] = String.valueOf(f);
-                            }
-                        }
-                        logger.info(line[j]);
-                    }
-                    tDashboarddayelecEntity.setYpg(line[2]);
-                    tDashboarddayelecEntity.setDaodianliang(line[3]);
-                    tDashboarddayelecEntity.setEveLec(line[4]);
-                    tDashboarddayelecEntity.setFenggucha(rounding(line[5]));
-                }
-                if (i == 20) {
-                    logger.info("第" + i + "行");
-                    for(int j=2;j<4;j++){
-                        if (line[j].equals("")) {
-                            line[j] = "0.0";
-                        }else {
-                            if (!Character.isDigit(line[j].charAt(0))) {
-                                line[j] = "0.0";
-                            }else {
-                                BigDecimal b = new BigDecimal(Double.parseDouble(line[j]));
-                                double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                                line[j] = String.valueOf(f);
-                            }
-                        }
-                        logger.info(line[j]);
-                    }
-                    tDashboarddayelecEntity.setBycElec(line[2]);
-                    tDashboarddayelecEntity.setBocElec(line[3]);
-                }
-            }
-            tDashboarddayelecEntity.setCreatedate(new Date());
-            tDashboarddayelecEntity.setDataDate(new Date());
-            Calendar now = Calendar.getInstance();
-            tDashboarddayelecEntity.setDateDay(String.valueOf(now.get(Calendar.DAY_OF_MONTH)));
-            logger.info("dashboardData:" + tDashboarddayelecEntity);
-            tDashboarddayelecService.save(tDashboarddayelecEntity);
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-    }
-
-    public String rounding(String lineNum) {
-        try {
-            logger.info("读数:" + lineNum);
-            if (lineNum.equals("")) {
-                lineNum = "0.0";
-            }else {
-                if (!Character.isDigit(lineNum.charAt(0))) {
-                    if ("-".equals(lineNum.substring(0,1))){
-                        BigDecimal b = new BigDecimal(Double.parseDouble(lineNum));
-                        double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                        lineNum = String.valueOf(f);
-                    }else {
-                        lineNum = "0.0";
-                    }
-                }else {
-                    BigDecimal b = new BigDecimal(Double.parseDouble(lineNum));
-                    double f = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
-                    lineNum = String.valueOf(f);
-                }
-            }
-            logger.info(lineNum);
-            return lineNum;
-        }catch (Exception e) {
-            logger.error(String.valueOf(e));
-            return "0.0";
-        }
-    }
-
-}

+ 6 - 8
src/main/java/io/renren/modules/test/TestPullDataExcel.java

@@ -8,6 +8,7 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
+import java.util.Date;
 
 /**
  * 电厂大屏抓取数据测试类(.xls/.xlsx文件)
@@ -18,17 +19,15 @@ import java.io.InputStream;
  */
 public class TestPullDataExcel {
 
-    public static void main(String[] args) {
-        TestPullDataExcel testPullDataExcel = new TestPullDataExcel();
-        testPullDataExcel.getExcelData();
-    }
-
     /**
      * 抓取excel数据
+     * @return 电厂大屏数据
      */
-    private void getExcelData() {
+    private TElecDashboardData getExcelData() {
         // excel对象
         Workbook workbook = null;
+        // 电厂大屏数据对象
+        TElecDashboardData tElecDashboardData = new TElecDashboardData();
         try {
             // 文件读取路径
             String filePath = "C://elecdashboard/elecDashboardData.xlsx";
@@ -44,8 +43,6 @@ public class TestPullDataExcel {
             Sheet sheet1 = workbook.getSheetAt(0);  // 数据监控
             Sheet sheet2 = workbook.getSheetAt(1);  // 蒸汽平衡
             Sheet sheet3 = workbook.getSheetAt(2);  // 环保监控
-            // 电厂大屏数据对象
-            TElecDashboardData tElecDashboardData = new TElecDashboardData();
             //========================================电厂大屏数据第一页:数据监控========================================
             // 发电机
             String gtg1PowerGenLevel = this.getCellData(sheet1, 2, 2);  // 1#GTG发电水平
@@ -515,6 +512,7 @@ public class TestPullDataExcel {
                 e.printStackTrace();
             }
         }
+        return tElecDashboardData;
     }
 
     /**

+ 2 - 3
src/main/java/io/renren/modules/test/entity/TElecDashboardData.java

@@ -9,7 +9,7 @@ import lombok.Data;
 import java.io.Serializable;
 
 /**
- * 电厂大屏数据(第一页)
+ * 电厂大屏数据
  *
  * @author: Wang Zi Wen
  * @email: wangggziwen@163.com
@@ -454,8 +454,7 @@ public class TElecDashboardData implements Serializable {
                 "hrsg3Air32558: " + this.hrsg3Air32558 + "\n" +
                 "hrsg3Qi32240: " + this.hrsg3Qi32240  + "\n" +
                 "hrsg3Qi32241: " + this.hrsg3Qi32241  + "\n" +
-                "hrsg3Qi32242: " + this.hrsg3Qi32242 + "\n" +
-                "";
+                "hrsg3Qi32242: " + this.hrsg3Qi32242 + "\n";
     }
 
     public Integer getId() {