Procházet zdrojové kódy

预测统计相关优化

wangmiaomiao před 10 měsíci
rodič
revize
ad72b8b7bf

+ 161 - 45
slibra-quartz/src/main/java/com/slibra/quartz/task/AsyncTask.java

@@ -9,7 +9,6 @@ import com.slibra.business.mapper.*;
 import com.slibra.business.req.ChatReq;
 import com.slibra.business.req.DecisionReq;
 import com.slibra.business.res.ShowValueBasic;
-import com.slibra.business.service.ITXinyiForecastComparisonService;
 import com.slibra.common.constant.MyConstants;
 import com.slibra.common.enums.BusinessEnum;
 import com.slibra.common.utils.DateUtils;
@@ -110,33 +109,87 @@ public class AsyncTask {
         List<TXinyiForecastComparison> tXinyiForecastComparisons1 = this.xinyiForecastComparisonMapper.selectTXinyiForecastComparisonList(TXinyiForecastComparison.builder().forecastTimeOne(testHour).build());
         if(!CollectionUtils.isEmpty(tXinyiForecastComparisons1)){
             for (TXinyiForecastComparison tXinyiForecastComparison : tXinyiForecastComparisons1) {
-                if("出水COD".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastOne(csCod);
-                if("出水SS".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastOne(csSs);
-                if("出水总氮".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastOne(csTn);
-                if("出水总磷".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastOne(csTp);
-                if("出水氨氮".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastOne(csNh3);
+                BigDecimal hsForecastOne = tXinyiForecastComparison.getHsForecastOne();
+                BigDecimal yyForecastOne = tXinyiForecastComparison.getYyForecastOne();
+                if("出水COD".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealOne(csCod);
+                    if(!Objects.isNull(csCod) && csCod.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateOne((csCod.subtract(hsForecastOne)).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateOne((csCod.subtract(yyForecastOne)).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水SS".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealOne(csSs);
+                    if(!Objects.isNull(csSs) && csSs.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateOne((csSs.subtract(hsForecastOne)).divide(csSs, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateOne((csSs.subtract(yyForecastOne)).divide(csSs, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水总氮".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealOne(csTn);
+                    if(!Objects.isNull(csTn) && csTn.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateOne((csTn.subtract(hsForecastOne)).divide(csTn, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateOne((csTn.subtract(yyForecastOne)).divide(csTn, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水总磷".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealOne(csTp);
+                    if(!Objects.isNull(csTp) && csTp.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateOne((csTp.subtract(hsForecastOne)).divide(csTp, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateOne((csTp.subtract(yyForecastOne)).divide(csTp, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水氨氮".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealOne(csNh3);
+                    if(!Objects.isNull(csNh3) && csNh3.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateOne((csNh3.subtract(hsForecastOne)).divide(csNh3, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateOne((csNh3.subtract(yyForecastOne)).divide(csNh3, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
                 this.xinyiForecastComparisonMapper.updateTXinyiForecastComparison(tXinyiForecastComparison);
             }
         }
         //时间段2
-        List<TXinyiForecastComparison> tXinyiForecastComparisons2 = this.xinyiForecastComparisonMapper.selectTXinyiForecastComparisonList(TXinyiForecastComparison.builder().forecastTimeThree(testHour).build());
+        List<TXinyiForecastComparison> tXinyiForecastComparisons2 = this.xinyiForecastComparisonMapper.selectTXinyiForecastComparisonList(TXinyiForecastComparison.builder().forecastTimeTwo(testHour).build());
         if(!CollectionUtils.isEmpty(tXinyiForecastComparisons2)){
             for (TXinyiForecastComparison tXinyiForecastComparison : tXinyiForecastComparisons2) {
-                if("出水COD".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastTwo(csCod);
-                if("出水SS".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastTwo(csSs);
-                if("出水总氮".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastTwo(csTn);
-                if("出水总磷".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastTwo(csTp);
-                if("出水氨氮".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastTwo(csNh3);
+                BigDecimal hsForecastTwo = tXinyiForecastComparison.getHsForecastTwo();
+                BigDecimal yyForecastTwo = tXinyiForecastComparison.getYyForecastTwo();
+                if("出水COD".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealTwo(csCod);
+                    if(!Objects.isNull(csCod) && csCod.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateTwo((csCod.subtract(hsForecastTwo)).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateTwo((csCod.subtract(yyForecastTwo)).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水SS".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealTwo(csSs);
+                    if(!Objects.isNull(csSs) && csSs.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateTwo((csSs.subtract(hsForecastTwo)).divide(csSs, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateTwo((csSs.subtract(yyForecastTwo)).divide(csSs, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水总氮".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealTwo(csTn);
+                    if(!Objects.isNull(csTn) && csTn.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateTwo((csTn.subtract(hsForecastTwo)).divide(csTn, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateTwo((csTn.subtract(yyForecastTwo)).divide(csTn, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水总磷".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealTwo(csTp);
+                    if(!Objects.isNull(csTp) && csTp.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateTwo((csTp.subtract(hsForecastTwo)).divide(csTp, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateTwo((csTp.subtract(yyForecastTwo)).divide(csTp, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水氨氮".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealTwo(csNh3);
+                    if(!Objects.isNull(csNh3) && csNh3.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateTwo((csNh3.subtract(hsForecastTwo)).divide(csNh3, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateTwo((csNh3.subtract(yyForecastTwo)).divide(csNh3, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
                 this.xinyiForecastComparisonMapper.updateTXinyiForecastComparison(tXinyiForecastComparison);
             }
         }
@@ -144,16 +197,43 @@ public class AsyncTask {
         List<TXinyiForecastComparison> tXinyiForecastComparisons3 = this.xinyiForecastComparisonMapper.selectTXinyiForecastComparisonList(TXinyiForecastComparison.builder().forecastTimeThree(testHour).build());
         if(!CollectionUtils.isEmpty(tXinyiForecastComparisons3)){
             for (TXinyiForecastComparison tXinyiForecastComparison : tXinyiForecastComparisons3) {
-                if("出水COD".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastThree(csCod);
-                if("出水SS".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastThree(csSs);
-                if("出水总氮".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastThree(csTn);
-                if("出水总磷".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastThree(csTp);
-                if("出水氨氮".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastThree(csNh3);
+                BigDecimal hsForecastThree = tXinyiForecastComparison.getHsForecastThree();
+                BigDecimal yyForecastThree = tXinyiForecastComparison.getYyForecastThree();
+                if("出水COD".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealThree(csCod);
+                    if(!Objects.isNull(csCod) && csCod.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateThree((csCod.subtract(hsForecastThree)).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateThree((csCod.subtract(yyForecastThree)).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水SS".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealThree(csSs);
+                    if(!Objects.isNull(csSs) && csSs.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateThree((csSs.subtract(hsForecastThree)).divide(csSs, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateThree((csSs.subtract(yyForecastThree)).divide(csSs, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水总氮".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealThree(csTn);
+                    if(!Objects.isNull(csTn) && csTn.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateThree((csTn.subtract(hsForecastThree)).divide(csTn, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateThree((csTn.subtract(yyForecastThree)).divide(csTn, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水总磷".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealThree(csTp);
+                    if(!Objects.isNull(csTp) && csTp.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateThree((csTp.subtract(hsForecastThree)).divide(csTp, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateThree((csTp.subtract(yyForecastThree)).divide(csTp, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("出水氨氮".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealThree(csNh3);
+                    if(!Objects.isNull(csNh3) && csNh3.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateThree((csNh3.subtract(hsForecastThree)).divide(csNh3, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateThree((csNh3.subtract(yyForecastThree)).divide(csNh3, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
                 this.xinyiForecastComparisonMapper.updateTXinyiForecastComparison(tXinyiForecastComparison);
             }
         }
@@ -173,21 +253,45 @@ public class AsyncTask {
         List<TXinyiForecastComparison> tXinyiForecastComparisons1 = this.xinyiForecastComparisonMapper.selectTXinyiForecastComparisonList(TXinyiForecastComparison.builder().forecastTimeOne(testHour).build());
         if(!CollectionUtils.isEmpty(tXinyiForecastComparisons1)){
             for (TXinyiForecastComparison tXinyiForecastComparison : tXinyiForecastComparisons1) {
-                if("xsy1".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastOne(no3Hlj1Jqr);
-                if("xsy2".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastOne(no3Hlj2Jqr);
+                BigDecimal hsForecastOne = tXinyiForecastComparison.getHsForecastOne();
+                BigDecimal yyForecastOne = tXinyiForecastComparison.getYyForecastOne();
+                if("xsy1".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealOne(no3Hlj1Jqr);
+                    if(!Objects.isNull(no3Hlj1Jqr) && no3Hlj1Jqr.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateOne((no3Hlj1Jqr.subtract(hsForecastOne)).divide(no3Hlj1Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateOne((no3Hlj1Jqr.subtract(yyForecastOne)).divide(no3Hlj1Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("xsy2".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealOne(no3Hlj2Jqr);
+                    if(!Objects.isNull(no3Hlj2Jqr) && no3Hlj2Jqr.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateOne((no3Hlj2Jqr.subtract(hsForecastOne)).divide(no3Hlj2Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateOne((no3Hlj2Jqr.subtract(yyForecastOne)).divide(no3Hlj2Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
                 this.xinyiForecastComparisonMapper.updateTXinyiForecastComparison(tXinyiForecastComparison);
             }
         }
         //时间段2
-        List<TXinyiForecastComparison> tXinyiForecastComparisons2 = this.xinyiForecastComparisonMapper.selectTXinyiForecastComparisonList(TXinyiForecastComparison.builder().forecastTimeThree(testHour).build());
+        List<TXinyiForecastComparison> tXinyiForecastComparisons2 = this.xinyiForecastComparisonMapper.selectTXinyiForecastComparisonList(TXinyiForecastComparison.builder().forecastTimeTwo(testHour).build());
         if(!CollectionUtils.isEmpty(tXinyiForecastComparisons2)){
             for (TXinyiForecastComparison tXinyiForecastComparison : tXinyiForecastComparisons2) {
-                if("xsy1".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastTwo(no3Hlj1Jqr);
-                if("xsy2".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastTwo(no3Hlj2Jqr);
+                BigDecimal hsForecastTwo = tXinyiForecastComparison.getHsForecastTwo();
+                BigDecimal yyForecastTwo = tXinyiForecastComparison.getYyForecastTwo();
+                if("xsy1".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealTwo(no3Hlj1Jqr);
+                    if(!Objects.isNull(no3Hlj1Jqr) && no3Hlj1Jqr.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateTwo((no3Hlj1Jqr.subtract(hsForecastTwo)).divide(no3Hlj1Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateTwo((no3Hlj1Jqr.subtract(yyForecastTwo)).divide(no3Hlj1Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("xsy2".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealTwo(no3Hlj2Jqr);
+                    if(!Objects.isNull(no3Hlj2Jqr) && no3Hlj2Jqr.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateTwo((no3Hlj2Jqr.subtract(hsForecastTwo)).divide(no3Hlj2Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateTwo((no3Hlj2Jqr.subtract(yyForecastTwo)).divide(no3Hlj2Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
                 this.xinyiForecastComparisonMapper.updateTXinyiForecastComparison(tXinyiForecastComparison);
             }
         }
@@ -195,10 +299,22 @@ public class AsyncTask {
         List<TXinyiForecastComparison> tXinyiForecastComparisons3 = this.xinyiForecastComparisonMapper.selectTXinyiForecastComparisonList(TXinyiForecastComparison.builder().forecastTimeThree(testHour).build());
         if(!CollectionUtils.isEmpty(tXinyiForecastComparisons3)){
             for (TXinyiForecastComparison tXinyiForecastComparison : tXinyiForecastComparisons3) {
-                if("xsy1".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastThree(no3Hlj1Jqr);
-                if("xsy2".equals(tXinyiForecastComparison.getCategory()))
-                    tXinyiForecastComparison.setHsForecastThree(no3Hlj2Jqr);
+                BigDecimal hsForecastThree = tXinyiForecastComparison.getHsForecastThree();
+                BigDecimal yyForecastThree = tXinyiForecastComparison.getYyForecastThree();
+                if("xsy1".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealThree(no3Hlj1Jqr);
+                    if(!Objects.isNull(no3Hlj1Jqr) && no3Hlj1Jqr.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateThree((no3Hlj1Jqr.subtract(hsForecastThree)).divide(no3Hlj1Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateThree((no3Hlj1Jqr.subtract(yyForecastThree)).divide(no3Hlj1Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
+                if("xsy2".equals(tXinyiForecastComparison.getCategory())){
+                    tXinyiForecastComparison.setRealThree(no3Hlj2Jqr);
+                    if(!Objects.isNull(no3Hlj2Jqr) && no3Hlj2Jqr.compareTo(BigDecimal.ZERO) > 0){
+                        tXinyiForecastComparison.setHsErrorRateThree((no3Hlj2Jqr.subtract(hsForecastThree)).divide(no3Hlj2Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                        tXinyiForecastComparison.setYyErrorRateThree((no3Hlj2Jqr.subtract(yyForecastThree)).divide(no3Hlj2Jqr, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                    }
+                }
                 this.xinyiForecastComparisonMapper.updateTXinyiForecastComparison(tXinyiForecastComparison);
             }
         }

+ 11 - 1
slibra-quartz/src/main/java/com/slibra/quartz/task/RyTask.java

@@ -2,6 +2,7 @@ package com.slibra.quartz.task;
 
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.http.HttpRequest;
+import cn.hutool.http.HttpUtil;
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONArray;
 import com.alibaba.fastjson2.JSONObject;
@@ -1298,6 +1299,8 @@ public class RyTask
 
     private void handlePredictorWarning(String[] split, String hour, String task, List<TXinyiIndustry> tXinyiIndustries6, List<TXinyiRobot> tXinyiRobots6, String date) {
         String[] hours = hour.split(",");
+        //2024年6月18日13:41:10 统一格式,否则查询不到结果
+        date = date.replaceAll("-", "/");
         //2024年6月18日10:36:49 增加预测记录,预测准确度计算等
         TXinyiForecastComparison tXinyiForecastComparison = new TXinyiForecastComparison();
         tXinyiForecastComparison.setCategory(task);
@@ -1836,12 +1839,19 @@ public class RyTask
         TXinyiIndustry tXinyiIndustry = new TXinyiIndustry();
         System.out.println(JSON.toJSONString(tXinyiIndustry, JSONWriter.Feature.WriteNulls));*/
 
-        String s = "2022/01/01".substring(5).replace("/", "月") + "日";
+        /*String s = "2022/01/01".substring(5).replace("/", "月") + "日";
         System.out.println("s = " + s);
 
 //        System.out.println(new BigDecimal("1").compareTo(null));//空指针 要判断
 
         System.out.println("2022/01/01 10".substring(11));
+
+        String date = DateUtil.format(DateUtils.getNowDate(), DateUtils.YYYY_MM_DD_HH);
+        System.out.println("date = " + date);
+
+        System.out.println(HttpUtil.get("http://10.0.3.52:10003/system/forecast?type=2&time=" + date));*/
+
+        System.out.println("2024-06-18 14".replaceAll("-", "/"));
     }