Переглянути джерело

feat: big_table_mode_hour历史数据处理

sunxiao 8 місяців тому
батько
коміт
a83c5d84f9

BIN
slibra-admin/.DS_Store


BIN
slibra-admin/src/.DS_Store


+ 272 - 6
slibra-admin/src/main/java/com/slibra/web/controller/business/HandleDataController.java

@@ -6,15 +6,15 @@ import cn.hutool.poi.excel.ExcelReader;
 import cn.hutool.poi.excel.ExcelUtil;
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONArray;
-import com.slibra.business.domain.TXinyiCalculate;
-import com.slibra.business.domain.TXinyiNormConfig;
+import com.slibra.business.domain.*;
 import com.slibra.business.mapper.*;
 import com.slibra.common.core.domain.TXinyiDaily;
-import com.slibra.business.domain.TXinyiIndustry;
-import com.slibra.business.domain.TXinyiLaboratory;
 import com.slibra.common.core.controller.BaseController;
 import com.slibra.common.utils.DateUtils;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.ibatis.session.ExecutorType;
+import org.apache.ibatis.session.SqlSession;
+import org.apache.ibatis.session.SqlSessionFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
@@ -57,6 +57,12 @@ public class HandleDataController extends BaseController
     @Autowired
     private TXinyiCalculateMapper xinyiCalculateMapper;
 
+    @Autowired
+    private TXinyiBigTableHourMapper tXinyiBigTableHourMapper;
+
+    @Autowired
+    private SqlSessionFactory sqlSessionFactory;
+
 
     public static final String[] queryTags = {"信义污水厂JS_COD_Value","信义污水厂JS_PH_Value","信义污水厂JS_SS_Value","信义污水厂JS_ZL_Value","信义污水厂JS_ZA_Value","信义污水厂JS_AD_Value","信义污水厂JS_T_Value","信义污水厂进水泵房液位","信义污水厂出水瞬时流量","信义污水厂升级出水COD","信义污水厂升级出水PH","信义污水厂升级出水SS","信义污水厂升级出水TN","信义污水厂升级出水TP","信义污水厂升级出水氨氮","信义污水厂AIT202_Value","信义污水厂AIT203_Value","信义污水厂AIT207_Value","信义污水厂AIT206_Value","信义污水厂AIT209_Value","信义污水厂AIT210_Value","信义污水厂进水TDS","信义污水厂FT101_Value","信义污水厂SWCHHYHLB1_R_Value","信义污水厂SWCHHYHLB2_R_Value","信义污水厂SWCHHYHLB3_R_Value","信义污水厂SWCHHYHLB4_R_Value","信义污水厂SWCHHYHLB5_R_Value","信义污水厂SWCHHYHLB6_R_Value","信义污水厂SWCWNHLB1_R_Value","信义污水厂SWCWNHLB2_R_Value","信义污水厂SWCWNHLB3_R_Value","信义污水厂SWCWNHLB4_R_Value","信义污水厂SWCWNHLB5_R_Value","信义污水厂GFJ1_R_Value","信义污水厂GFJ2_R_Value","信义污水厂GFJ3_R_Value","信义污水厂GFJ4_R_Value","信义污水厂GFJ5_R_Value","信义污水厂GFJ6_R_Value","信义污水厂GFJ1_KQLL_Value","信义污水厂GFJ2_KQLL_Value","信义污水厂GFJ3_KQLL_Value","信义污水厂GFJ4_KQLL_Value","信义污水厂GFJ5_KQLL_Value","信义污水厂GFJ6_KQLL_Value"};
 
@@ -851,9 +857,10 @@ public class HandleDataController extends BaseController
         return "ok;耗时:" + (end - begin) /1000 + "秒。";
     }
 
+    public static void main(String[] args) {
+
 
 
-    public static void main(String[] args) {
 //        File file = new File("C:\\Users\\10109\\Desktop\\新程序\\历史数据");
 //        if(file.isDirectory()){
 //            for (File listFile : file.listFiles()) {
@@ -883,7 +890,6 @@ public class HandleDataController extends BaseController
 
     }
 
-
     public static String handleDate(String str){
         StringBuilder sb = new StringBuilder();
         if(str.contains(" ")){//包含空格 就是年月日时分秒了
@@ -923,4 +929,264 @@ public class HandleDataController extends BaseController
         return sb;
     }
 
+    /**
+     * 处理big_table_hour历史数据
+     * @return
+     */
+    @GetMapping("/handleBigTableHourHistoryData")
+    public String handleBigTableHourHistoryData () {
+        log.info("进入了 处理big_table_hour历史数据");
+        long begin = System.currentTimeMillis();
+
+        int size = 500;
+        int count = xinyiIndustryMapper.getCount();
+
+        int num = ( count / size ) + 1;
+
+        for (int i = 0; i < num; i++) {
+            List<TXinyiIndustry> tXinyiIndustries = xinyiIndustryMapper.selectTXinyiIndustryListByPage(i * size, size);
+            if ( !CollectionUtils.isEmpty(tXinyiIndustries) ) {
+
+                List<TXinyiBigTableHour> tXinyiBigTableHourList = new ArrayList();
+
+                for (int j = 0; j < tXinyiIndustries.size(); j++) {
+                    TXinyiBigTableHour xinyiBigTableHour = new TXinyiBigTableHour();
+                    TXinyiIndustry tXinyiIndustry = tXinyiIndustries.get(j);
+
+                    String testHour = tXinyiIndustry.getTestHour();
+                    String testDate = tXinyiIndustry.getTestDate();
+
+                    // 处理工业库
+                    handleIndustryData(xinyiBigTableHour, tXinyiIndustry);
+
+                    // 处理计算表
+                    List<TXinyiCalculate> tXinyiCalculates = xinyiCalculateMapper.selectTXinyiCalculateList(TXinyiCalculate.builder().testHour(testHour).build());
+                    if ( !CollectionUtils.isEmpty(tXinyiCalculates) ) {
+                        TXinyiCalculate tXinyiCalculate = tXinyiCalculates.get(0);
+                        handleCalculateData(xinyiBigTableHour, tXinyiCalculate);
+                    }
+
+                    // 处理日报表
+                    List<TXinyiDaily> tXinyiDailies = xinyiDailyMapper.selectTXinyiDailyList(TXinyiDaily.builder().testDate(testDate).build());
+                    if ( !CollectionUtils.isEmpty(tXinyiDailies) ) {
+                        TXinyiDaily tXinyiDaily = tXinyiDailies.get(0);
+                        handleDailyData(xinyiBigTableHour, tXinyiDaily);
+                    }
+
+                    // 处理化验室
+                    TXinyiRobot tXinyiRobot = xinyiRobotMapper.selectTXinyiRobotByAvg(TXinyiRobot.builder().testHour(testHour).build());
+                    if ( !Objects.isNull(tXinyiRobot) ) {
+                        handleRobotData(xinyiBigTableHour, tXinyiRobot);
+                    }
+
+                    tXinyiBigTableHourList.add(xinyiBigTableHour);
+                }
+
+                if (!CollectionUtils.isEmpty(tXinyiBigTableHourList)) {
+                    SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH,false);
+                    TXinyiBigTableHourMapper sqlSessionMapper = sqlSession.getMapper(TXinyiBigTableHourMapper.class);
+                    tXinyiBigTableHourList.stream().forEach(item -> sqlSessionMapper.insertTXinyiBigTableHour(item));
+                    sqlSession.commit();
+                    sqlSession.close();
+                }
+            }
+        }
+
+        long end = System.currentTimeMillis();
+        return "ok;耗时:" + (end - begin) /1000 + "秒。";
+    }
+
+    // 处理工业库
+    private void handleIndustryData(TXinyiBigTableHour xinyiBigTableHour, TXinyiIndustry tXinyiIndustry) {
+        xinyiBigTableHour.setTestDate(tXinyiIndustry.getTestDate());
+        xinyiBigTableHour.setTestHour(tXinyiIndustry.getTestHour());
+        xinyiBigTableHour.setGyJsCod(tXinyiIndustry.getJsCod());
+        xinyiBigTableHour.setGyJsPh(tXinyiIndustry.getJsPh());
+        xinyiBigTableHour.setGyJsSs(tXinyiIndustry.getJsSs());
+        xinyiBigTableHour.setGyJsTp(tXinyiIndustry.getJsTp());
+        xinyiBigTableHour.setGyJsTn(tXinyiIndustry.getJsTn());
+        xinyiBigTableHour.setGyJsNh3(tXinyiIndustry.getJsNh3());
+        xinyiBigTableHour.setGyJsSwPh(tXinyiIndustry.getJsSwPh());
+        xinyiBigTableHour.setGyJsBfyw(tXinyiIndustry.getJsBfyw());
+        xinyiBigTableHour.setGyCsSlqc(tXinyiIndustry.getCsSlqc());
+        xinyiBigTableHour.setGyCsCod(tXinyiIndustry.getCsCod());
+        xinyiBigTableHour.setGyCsPh(tXinyiIndustry.getCsPh());
+        xinyiBigTableHour.setGyCsSs(tXinyiIndustry.getCsSs());
+        xinyiBigTableHour.setGyCsTn(tXinyiIndustry.getCsTn());
+        xinyiBigTableHour.setGyCsTp(tXinyiIndustry.getCsTp());
+        xinyiBigTableHour.setGyCsNh3(tXinyiIndustry.getCsNh3());
+        xinyiBigTableHour.setGyOneHyzdDo(tXinyiIndustry.getOneHyzdDo());
+        xinyiBigTableHour.setGyOneHymdDo(tXinyiIndustry.getOneHymdDo());
+        xinyiBigTableHour.setGyTwoHyzdDo(tXinyiIndustry.getTwoHyzdDo());
+        xinyiBigTableHour.setGyTwoHymdDo(tXinyiIndustry.getTwoHymdDo());
+        xinyiBigTableHour.setGyOneMlss(tXinyiIndustry.getOneMlss());
+        xinyiBigTableHour.setGyTwoMlss(tXinyiIndustry.getTwoMlss());
+        xinyiBigTableHour.setGyJsTds(tXinyiIndustry.getJsTds());
+        xinyiBigTableHour.setGyJsSlq(tXinyiIndustry.getJsSlq());
+        xinyiBigTableHour.setGyNHlbOneGp(tXinyiIndustry.getNHlbOneGp());
+        xinyiBigTableHour.setGyNHlbTwoGp(tXinyiIndustry.getNHlbTwoGp());
+        xinyiBigTableHour.setGyNHlbThreeGp(tXinyiIndustry.getNHlbThreeGp());
+        xinyiBigTableHour.setGyNHlbFourGp(tXinyiIndustry.getNHlbFourGp());
+        xinyiBigTableHour.setGyNhlBFiveGp(tXinyiIndustry.getNhlBFiveGp());
+        xinyiBigTableHour.setGyNHlbSixGp(tXinyiIndustry.getNHlbSixGp());
+        xinyiBigTableHour.setGyWHlbOneGp(tXinyiIndustry.getWHlbOneGp());
+        xinyiBigTableHour.setGyWHlbTwoGp(tXinyiIndustry.getWHlbTwoGp());
+        xinyiBigTableHour.setGyWHlbThreeGp(tXinyiIndustry.getWHlbThreeGp());
+        xinyiBigTableHour.setGyWHlbFourGp(tXinyiIndustry.getWHlbFourGp());
+        xinyiBigTableHour.setGyWHlbFiveGp(tXinyiIndustry.getWHlbFiveGp());
+        xinyiBigTableHour.setGyFjOne(tXinyiIndustry.getFjOne());
+        xinyiBigTableHour.setGyFjTwo(tXinyiIndustry.getFjTwo());
+        xinyiBigTableHour.setGyFjThree(tXinyiIndustry.getFjThree());
+        xinyiBigTableHour.setGyFjFour(tXinyiIndustry.getFjFour());
+        xinyiBigTableHour.setGyFjFive(tXinyiIndustry.getFjFive());
+        xinyiBigTableHour.setGyFjSix(tXinyiIndustry.getFjSix());
+        xinyiBigTableHour.setGyKqllOne(tXinyiIndustry.getKqllOne());
+        xinyiBigTableHour.setGyKqllTwo(tXinyiIndustry.getKqllTwo());
+        xinyiBigTableHour.setGyKqllThree(tXinyiIndustry.getKqllThree());
+        xinyiBigTableHour.setGyKqllFour(tXinyiIndustry.getKqllFour());
+        xinyiBigTableHour.setGyKqllFive(tXinyiIndustry.getKqllFive());
+        xinyiBigTableHour.setGyKqllSix(tXinyiIndustry.getKqllSix());
+        xinyiBigTableHour.setGySjtyjly(tXinyiIndustry.getSJTYJLY());
+        xinyiBigTableHour.setGyCljyssll(tXinyiIndustry.getCLJYSSLL());
+        xinyiBigTableHour.setGyHycRjyAll(tXinyiIndustry.getHycRjyAll());
+        xinyiBigTableHour.setGyHycRjyZdAll(tXinyiIndustry.getHycRjyZdAll());
+        xinyiBigTableHour.setGyHycWnndAll(tXinyiIndustry.getHycWnndAll());
+        xinyiBigTableHour.setGyClP04Ycz(tXinyiIndustry.getCLP04YCZ());
+    }
+
+    // 处理计算表
+    private void handleCalculateData(TXinyiBigTableHour xinyiBigTableHour, TXinyiCalculate xinyiCalculate) {
+        xinyiBigTableHour.setJsJsTdb(xinyiCalculate.getJsTdb());
+        xinyiBigTableHour.setJsJsTlb(xinyiCalculate.getJsTlb());
+        xinyiBigTableHour.setJsJsBodBCod(xinyiCalculate.getJsBodBCod());
+        xinyiBigTableHour.setJsYyqHrt(xinyiCalculate.getYyqHrt());
+        xinyiBigTableHour.setJsQyqHrt(xinyiCalculate.getQyqHrt());
+        xinyiBigTableHour.setJsHyqHrt(xinyiCalculate.getHyqHrt());
+        xinyiBigTableHour.setJsHfxwnndzb(xinyiCalculate.getHFXWNNDZB());
+        xinyiBigTableHour.setJsFM(xinyiCalculate.getFM());
+        xinyiBigTableHour.setJsGsls(xinyiCalculate.getGSLS());
+        xinyiBigTableHour.setJsGslsOne(xinyiCalculate.getGslsOne());
+        xinyiBigTableHour.setJsGslsTwo(xinyiCalculate.getGslsTwo());
+        xinyiBigTableHour.setJsXgsGsls(xinyiCalculate.getXgsGsls());
+        xinyiBigTableHour.setJsXlcscBmfh(xinyiCalculate.getXlcscBmfh());
+        xinyiBigTableHour.setJsXlcscHrt(xinyiCalculate.getXlcscHrt());
+        xinyiBigTableHour.setJsCccdcBmfh(xinyiCalculate.getCccdcBmfh());
+        xinyiBigTableHour.setJsCccdcHrt(xinyiCalculate.getCccdcHrt());
+        xinyiBigTableHour.setJsEccBmfh(xinyiCalculate.getEccBmfh());
+        xinyiBigTableHour.setJsEccHrt(xinyiCalculate.getEccHrt());
+        xinyiBigTableHour.setJsEccGtfh(xinyiCalculate.getEccGtfh());
+        xinyiBigTableHour.setJsClsnJcsj(xinyiCalculate.getClsnJcsj());
+        xinyiBigTableHour.setJsXgcdcQsqSsls(xinyiCalculate.getXgcdcQsqSsls());
+        xinyiBigTableHour.setJsWhlb(xinyiCalculate.getWHLB());
+        xinyiBigTableHour.setJsNhlb(xinyiCalculate.getNHLB());
+        xinyiBigTableHour.setJsWdscnl(xinyiCalculate.getWDSCNL());
+        xinyiBigTableHour.setJsQsb(xinyiCalculate.getQSB());
+        xinyiBigTableHour.setJsFcxsl(xinyiCalculate.getFCXSL());
+        xinyiBigTableHour.setJsFcxslbl(xinyiCalculate.getFCXSLBL());
+        xinyiBigTableHour.setJsWhlbRN(xinyiCalculate.getWhlRN());
+    }
+
+    // 处理日报
+    private void handleDailyData(TXinyiBigTableHour tXinyiBigTableHour, TXinyiDaily tXinyiDaily) {
+        tXinyiBigTableHour.setRbJsCod(tXinyiDaily.getJsCod());
+        tXinyiBigTableHour.setRbJsPh(tXinyiDaily.getJsPh());
+        tXinyiBigTableHour.setRbJsBod5(tXinyiDaily.getJsBod5());
+        tXinyiBigTableHour.setRbJsSs(tXinyiDaily.getJsSs());
+        tXinyiBigTableHour.setRbJsNh3(tXinyiDaily.getJsNh3());
+        tXinyiBigTableHour.setRbJsTn(tXinyiDaily.getJsTn());
+        tXinyiBigTableHour.setRbJsTp(tXinyiDaily.getJsTp());
+        tXinyiBigTableHour.setRbJsDcgj(tXinyiDaily.getJsDcgj());
+        tXinyiBigTableHour.setRbCsCod(tXinyiDaily.getCsCod());
+        tXinyiBigTableHour.setRbCsPh(tXinyiDaily.getCsPh());
+        tXinyiBigTableHour.setRbCsBod5(tXinyiDaily.getCsBod5());
+        tXinyiBigTableHour.setRbCsSs(tXinyiDaily.getCsSs());
+        tXinyiBigTableHour.setRbCsNh3(tXinyiDaily.getCsNh3());
+        tXinyiBigTableHour.setRbCsTn(tXinyiDaily.getCsTn());
+        tXinyiBigTableHour.setRbCsTp(tXinyiDaily.getCsTp());
+        tXinyiBigTableHour.setRbCsDcgj(tXinyiDaily.getCsDcgj());
+        tXinyiBigTableHour.setRbJsSw(tXinyiDaily.getJsSw());
+        tXinyiBigTableHour.setRbCsSw(tXinyiDaily.getCsSw());
+        tXinyiBigTableHour.setRbShcOnePh(tXinyiDaily.getShcOnePh());
+        tXinyiBigTableHour.setRbShcTwoPh(tXinyiDaily.getShcTwoPh());
+        tXinyiBigTableHour.setRbShcHyOneSv(tXinyiDaily.getShcHyOneSv());
+        tXinyiBigTableHour.setRbShcHyTwoSv(tXinyiDaily.getShcHyTwoSv());
+        tXinyiBigTableHour.setRbShcHyOneSvi(tXinyiDaily.getShcHyOneSvi());
+        tXinyiBigTableHour.setRbShcHyTwoSvi(tXinyiDaily.getShcHyTwoSvi());
+        tXinyiBigTableHour.setRbShcHyOneMlss(tXinyiDaily.getShcHyOneMlss());
+        tXinyiBigTableHour.setRbShcHyTwoMlss(tXinyiDaily.getShcHyTwoMlss());
+        tXinyiBigTableHour.setRbShcHyOneMlvss(tXinyiDaily.getShcHyOneMlvss());
+        tXinyiBigTableHour.setRbShcHyTwoMlvss(tXinyiDaily.getShcHyTwoMlvss());
+        tXinyiBigTableHour.setRbShcYyOneDo(tXinyiDaily.getShcYyOneDo());
+        tXinyiBigTableHour.setRbShcYyTwoDo(tXinyiDaily.getShcYyTwoDo());
+        tXinyiBigTableHour.setRbShcQyOneDo(tXinyiDaily.getShcQyOneDo());
+        tXinyiBigTableHour.setRbShcQyTwoDo(tXinyiDaily.getShcQyTwoDo());
+        tXinyiBigTableHour.setRbShcHyOneDo(tXinyiDaily.getShcHyOneDo());
+        tXinyiBigTableHour.setRbShcHyTwoDo(tXinyiDaily.getShcHyTwoDo());
+        tXinyiBigTableHour.setRbJsl(tXinyiDaily.getJSL());
+        tXinyiBigTableHour.setRbCsl(tXinyiDaily.getCSL());
+        tXinyiBigTableHour.setRbSdclcxsl(tXinyiDaily.getSDCLCXSL());
+        tXinyiBigTableHour.setRbQsb(tXinyiDaily.getQSB());
+        tXinyiBigTableHour.setRbFM(tXinyiDaily.getFM());
+        tXinyiBigTableHour.setRbYyHrt(tXinyiDaily.getYyHrt());
+        tXinyiBigTableHour.setRbHyHrt(tXinyiDaily.getHyHrt());
+        tXinyiBigTableHour.setRbQyHrt(tXinyiDaily.getQyHrt());
+        tXinyiBigTableHour.setRbNhlR(tXinyiDaily.getNhlR());
+        tXinyiBigTableHour.setRbWhlR(tXinyiDaily.getWhlR());
+        tXinyiBigTableHour.setRbSrt(tXinyiDaily.getSRT());
+        tXinyiBigTableHour.setRbCnl(tXinyiDaily.getCNL());
+        tXinyiBigTableHour.setRbTyqBod5Tn(tXinyiDaily.getTyqBod5Tn());
+        tXinyiBigTableHour.setRbTyhBod5Tn(tXinyiDaily.getTyhBod5Tn());
+        tXinyiBigTableHour.setRbHycRjyAll(tXinyiDaily.getHycRjyAll());
+        tXinyiBigTableHour.setRbHycWnndAll(tXinyiDaily.getHycWnndAll());
+        tXinyiBigTableHour.setRbYycRjyAll(tXinyiDaily.getYycRjyAll());
+        tXinyiBigTableHour.setRbQycRjyAll(tXinyiDaily.getQycRjyAll());
+        tXinyiBigTableHour.setRbWncjbAll(tXinyiDaily.getWncjbAll());
+        tXinyiBigTableHour.setRbWntjzsAll(tXinyiDaily.getWntjzsAll());
+        tXinyiBigTableHour.setRbHfxwnndAll(tXinyiDaily.getHfxwnndAll());
+        tXinyiBigTableHour.setRbChuniliang(tXinyiDaily.getCHUNILIANG());
+        tXinyiBigTableHour.setRbCnhsl(tXinyiDaily.getCNHSL());
+        tXinyiBigTableHour.setRbGwnl(tXinyiDaily.getGWNL());
+        tXinyiBigTableHour.setRbDf(tXinyiDaily.getDF());
+        tXinyiBigTableHour.setRbXnjf(tXinyiDaily.getXNJF());
+        tXinyiBigTableHour.setRbClf(tXinyiDaily.getCLF());
+        tXinyiBigTableHour.setRbTyf(tXinyiDaily.getTYF());
+        tXinyiBigTableHour.setRbXdjf(tXinyiDaily.getXDJF());
+        tXinyiBigTableHour.setRbQtyjf(tXinyiDaily.getQTYJF());
+        tXinyiBigTableHour.setRbCnf(tXinyiDaily.getCNF());
+        tXinyiBigTableHour.setRbZlsf(tXinyiDaily.getZLSF());
+        tXinyiBigTableHour.setRbZjcb(tXinyiDaily.getZJCB());
+        tXinyiBigTableHour.setRbDwcb(tXinyiDaily.getDWCB());
+    }
+
+    // 处理化验室
+    private void  handleRobotData(TXinyiBigTableHour tXinyiBigTableHour, TXinyiRobot tXinyiRobot) {
+        tXinyiBigTableHour.setHyCodYb(tXinyiRobot.getCodYb());
+        tXinyiBigTableHour.setHyCodJqr(tXinyiRobot.getCodJqr());
+        tXinyiBigTableHour.setHyCodYz(tXinyiRobot.getCodYz());
+        tXinyiBigTableHour.setHyTpHl1Jqr(tXinyiRobot.getTpHl1Jqr());
+        tXinyiBigTableHour.setHyTpHl2Jqr(tXinyiRobot.getTpHl2Jqr());
+        tXinyiBigTableHour.setHyTpRccJqr(tXinyiRobot.getTpRccJqr());
+        tXinyiBigTableHour.setHyTp1Yz(tXinyiRobot.getTp1Yz());
+        tXinyiBigTableHour.setHyTp2Yz(tXinyiRobot.getTp2Yz());
+        tXinyiBigTableHour.setHyTpRccYz(tXinyiRobot.getTpRccYz());
+        tXinyiBigTableHour.setHyNh31Jqr(tXinyiRobot.getNh31Jqr());
+        tXinyiBigTableHour.setHyNh32Jqr(tXinyiRobot.getNh32Jqr());
+        tXinyiBigTableHour.setHyNh31Yz(tXinyiRobot.getNh31Yz());
+        tXinyiBigTableHour.setHyNo3Hlc1Yz(tXinyiRobot.getNo3Hlc1Yz());
+        tXinyiBigTableHour.setHyNh32Yz(tXinyiRobot.getNh32Yz());
+        tXinyiBigTableHour.setHyNo3Hlc2Yz(tXinyiRobot.getNo3Hlc2Yz());
+        tXinyiBigTableHour.setHyNo3Hlj1Jqr(tXinyiRobot.getNo3Hlj1Jqr());
+        tXinyiBigTableHour.setHyNo3Hlj2Jqr(tXinyiRobot.getNo3Hlj2Jqr());
+        tXinyiBigTableHour.setHyTyll(tXinyiRobot.getTYLL());
+        tXinyiBigTableHour.setHyNo3Qyc1Jqr(tXinyiRobot.getNo3Qyc1Jqr());
+        tXinyiBigTableHour.setHyNo3Qyc2Jqr(tXinyiRobot.getNo3Qyc2Jqr());
+        tXinyiBigTableHour.setHyNo3Qyc1Yz(tXinyiRobot.getNo3Qyc1Yz());
+        tXinyiBigTableHour.setHyNo3Qyc2Yz(tXinyiRobot.getNo3Qyc2Yz());
+        tXinyiBigTableHour.setHyJsll(tXinyiRobot.getJSLL());
+        tXinyiBigTableHour.setHyHycxsyAll(tXinyiRobot.getHycxsyAll());
+        tXinyiBigTableHour.setHyQyanAll(tXinyiRobot.getQyanAll());
+        tXinyiBigTableHour.setHyQyckxsyAll(tXinyiRobot.getQyckxsyAll());
+        tXinyiBigTableHour.setHyHyzlsyAll(tXinyiRobot.getHyzlsyAll());
+    }
 }
+

+ 1 - 0
slibra-system/src/main/java/com/slibra/business/mapper/TXinyiLaboratoryMapper.java

@@ -61,4 +61,5 @@ public interface TXinyiLaboratoryMapper
 
 
     TXinyiLaboratory getUniqueByDate(String date);
+
 }

+ 5 - 0
slibra-system/src/main/java/com/slibra/business/mapper/TXinyiRobotMapper.java

@@ -1,6 +1,8 @@
 package com.slibra.business.mapper;
 
 import java.util.List;
+
+import com.slibra.business.domain.TXinyiLaboratory;
 import com.slibra.business.domain.TXinyiRobot;
 
 /**
@@ -68,4 +70,7 @@ public interface TXinyiRobotMapper
     List<TXinyiRobot> selectNRobot(int size);
 
     TXinyiRobot selectRebotAvgByDate(String date);
+
+    TXinyiRobot selectTXinyiRobotByAvg(TXinyiRobot tXinyiRobot);
+
 }

+ 1 - 0
slibra-system/src/main/resources/mapper/business/TXinyiLaboratoryMapper.xml

@@ -120,4 +120,5 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectTXinyiLaboratoryVo"/>
         where TEST_TIME =#{date}
     </select>
+
 </mapper>

+ 50 - 0
slibra-system/src/main/resources/mapper/business/TXinyiRobotMapper.xml

@@ -259,4 +259,54 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         WHERE
             TEST_DATE = #{date}
     </select>
+
+    <select id="selectTXinyiRobotByAvg" parameterType="TXinyiRobot" resultType="com.slibra.business.domain.TXinyiRobot">
+        SELECT
+            <choose>
+                <when test="testDate != null">TEST_DATE,</when>
+                <when test="testHour != null">TEST_HOUR,</when>
+                <when test="testTime != null">TEST_TIME,</when>
+            </choose>
+            AVG(COD_YB) codYb,
+            AVG(COD_JQR) codJqr,
+            AVG(COD_YZ) codYz,
+            AVG(TP_HL1_JQR) tpHl1Jqr,
+            AVG(TP_HL2_JQR) tpHl2Jqr,
+            AVG(TP_RCC_JQR) tpRccJqr,
+            AVG(TP_1_YZ) tp1Yz,
+            AVG(TP_2_YZ) tp2Yz,
+            AVG(TP_RCC_YZ) tpRccYz,
+            AVG(NH3_1_JQR) nh31Jqr,
+            AVG(NH3_2_JQR) nh32Jqr,
+            AVG(NH3_1_YZ) nh31Yz,
+            AVG(NO3_HLC1_YZ) no3Hlc1Yz,
+            AVG(NH3_2_YZ) nh32Yz,
+            AVG(NO3_HLC2_YZ) no3Hlc2Yz,
+            AVG(NO3_HLJ1_JQR) no3Hlj1Jqr,
+            AVG(NO3_HLJ2_JQR) no3Hlj2Jqr,
+            AVG(TYLL) TYLL,
+            AVG(NO3_QYC_1_JQR) no3Qyc1Jqr,
+            AVG(NO3_QYC_2_JQR) no3Qyc2Jqr,
+            AVG(NO3_QYC_1_YZ) no3Qyc1Yz,
+            AVG(NO3_QYC_2_YZ) no3Qyc2Yz,
+            AVG(JSLL) JSLL,
+            AVG(HYCXSY_ALL) HYCXSY_ALL,
+            AVG(QYAN_ALL) qyanAll,
+            AVG(QYCKXSY_ALL) qyckxsyAll,
+            AVG(HYZLSY_ALL) hyzlsyAll
+        FROM
+        t_xinyi_robot
+        <where>
+            <if test="testDate != null">TEST_DATE = #{testDate}</if>
+            <if test="testHour != null">TEST_HOUR = #{testHour}</if>
+            <if test="testTime != null">TEST_TIME = #{testTime}</if>
+        </where>
+        GROUP BY
+        <choose>
+            <when test="testDate != null">TEST_DATE</when>
+            <when test="testHour != null">TEST_HOUR</when>
+            <when test="testTime != null">TEST_TIME</when>
+        </choose>
+    </select>
+
 </mapper>