Răsfoiți Sursa

处理机理模型预测的真实值

王苗苗 1 lună în urmă
părinte
comite
c34c08dfb0

BIN
.DS_Store


+ 18 - 0
slibra-quartz/src/main/java/com/slibra/quartz/task/AsyncTask.java

@@ -247,6 +247,7 @@ public class AsyncTask {
             for (TXinyiForecastComparison tXinyiForecastComparison : tXinyiForecastComparisons1) {
                 BigDecimal hsForecastOne = tXinyiForecastComparison.getHsForecastOne();
                 BigDecimal yyForecastOne = tXinyiForecastComparison.getYyForecastOne();
+                BigDecimal jlForecastOne = tXinyiForecastComparison.getJlForecastOne();
                 if(BusinessEnum.BigModelForecastEnum.COD.getCode().equalsIgnoreCase(tXinyiForecastComparison.getCategory())){
                     tXinyiForecastComparison.setRealOne(csCod);
                     if(!Objects.isNull(csCod) && csCod.compareTo(BigDecimal.ZERO) > 0){
@@ -260,6 +261,11 @@ public class AsyncTask {
                             tXinyiForecastComparison.setYyErrorRateOne((subtract).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
                             tXinyiForecastComparison.setYyOneSubtract(DecimalUtils.getAbsAndScale(subtract, INT_2));
                         }
+                        if(!Objects.isNull(jlForecastOne)){
+                            BigDecimal subtract = csCod.subtract(jlForecastOne);
+                            tXinyiForecastComparison.setJlErrorRateOne((subtract).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                            tXinyiForecastComparison.setJlOneSubtract(DecimalUtils.getAbsAndScale(subtract, INT_2));
+                        }
                     }
                 }
                 if(BusinessEnum.BigModelForecastEnum.SS.getCode().equalsIgnoreCase(tXinyiForecastComparison.getCategory())){
@@ -319,6 +325,7 @@ public class AsyncTask {
             for (TXinyiForecastComparison tXinyiForecastComparison : tXinyiForecastComparisons2) {
                 BigDecimal hsForecastTwo = tXinyiForecastComparison.getHsForecastTwo();
                 BigDecimal yyForecastTwo = tXinyiForecastComparison.getYyForecastTwo();
+                BigDecimal jlForecastTwo = tXinyiForecastComparison.getJlForecastTwo();
                 if(BusinessEnum.BigModelForecastEnum.COD.getCode().equalsIgnoreCase(tXinyiForecastComparison.getCategory())){
                     tXinyiForecastComparison.setRealTwo(csCod);
                     if(!Objects.isNull(csCod) && csCod.compareTo(BigDecimal.ZERO) > 0){
@@ -332,6 +339,11 @@ public class AsyncTask {
                             tXinyiForecastComparison.setYyErrorRateTwo((subtract).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
                             tXinyiForecastComparison.setYyTwoSubtract(DecimalUtils.getAbsAndScale(subtract, INT_2));
                         }
+                        if(!Objects.isNull(jlForecastTwo)){
+                            BigDecimal subtract = csCod.subtract(jlForecastTwo);
+                            tXinyiForecastComparison.setJlErrorRateTwo((subtract).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                            tXinyiForecastComparison.setJlTwoSubtract(DecimalUtils.getAbsAndScale(subtract, INT_2));
+                        }
                     }
                 }
                 if(BusinessEnum.BigModelForecastEnum.SS.getCode().equalsIgnoreCase(tXinyiForecastComparison.getCategory())){
@@ -390,6 +402,7 @@ public class AsyncTask {
             for (TXinyiForecastComparison tXinyiForecastComparison : tXinyiForecastComparisons3) {
                 BigDecimal hsForecastThree = tXinyiForecastComparison.getHsForecastThree();
                 BigDecimal yyForecastThree = tXinyiForecastComparison.getYyForecastThree();
+                BigDecimal jlForecastThree = tXinyiForecastComparison.getJlForecastThree();
                 if(BusinessEnum.BigModelForecastEnum.COD.getCode().equalsIgnoreCase(tXinyiForecastComparison.getCategory())){
                     tXinyiForecastComparison.setRealThree(csCod);
                     if(!Objects.isNull(csCod) && csCod.compareTo(BigDecimal.ZERO) > 0){
@@ -403,6 +416,11 @@ public class AsyncTask {
                             tXinyiForecastComparison.setYyErrorRateThree((subtract).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
                             tXinyiForecastComparison.setYyThreeSubtract(DecimalUtils.getAbsAndScale(subtract, INT_2));
                         }
+                        if(!Objects.isNull(jlForecastThree)){
+                            BigDecimal subtract = csCod.subtract(jlForecastThree);
+                            tXinyiForecastComparison.setJlErrorRateThree((subtract).divide(csCod, NUMBER_SCALE_4, RoundingMode.HALF_UP));
+                            tXinyiForecastComparison.setJlThreeSubtract(DecimalUtils.getAbsAndScale(subtract, INT_2));
+                        }
                     }
                 }
                 if(BusinessEnum.BigModelForecastEnum.SS.getCode().equalsIgnoreCase(tXinyiForecastComparison.getCategory())){

+ 12 - 12
slibra-system/src/main/java/com/slibra/business/domain/TXinyiForecastComparison.java

@@ -126,16 +126,16 @@ public class TXinyiForecastComparison extends BaseEntity
     @Excel(name = "LSTM预测2小时百分比误差")
     private String yyErrorRateTwoStr;
 
-    /** 机理模型预测值1 */
-    @Excel(name = "机理模型预测值1")
+    /** 机理模型预测值2 */
+    @Excel(name = "机理模型预测值2")
     private BigDecimal jlForecastTwo;
 
-    /** 机理模型预测值1误差率 */
-    @Excel(name = "机理模型预测值1误差率")
+    /** 机理模型预测值2误差率 */
+    @Excel(name = "机理模型预测值2误差率")
     private BigDecimal jlErrorRateTwo;
 
-    /** 机理模型预测值1差值 */
-    @Excel(name = "机理模型预测值1差值")
+    /** 机理模型预测值2差值 */
+    @Excel(name = "机理模型预测值2差值")
     private BigDecimal jlTwoSubtract;
 
     /** 预测时间3 */
@@ -174,16 +174,16 @@ public class TXinyiForecastComparison extends BaseEntity
     @Excel(name = "LSTM预测3小时百分比误差")
     private String yyErrorRateThreeStr;
 
-    /** 机理模型预测值1 */
-    @Excel(name = "机理模型预测值1")
+    /** 机理模型预测值3 */
+    @Excel(name = "机理模型预测值3")
     private BigDecimal jlForecastThree;
 
-    /** 机理模型预测值1误差率 */
-    @Excel(name = "机理模型预测值1误差率")
+    /** 机理模型预测值3误差率 */
+    @Excel(name = "机理模型预测值3误差率")
     private BigDecimal jlErrorRateThree;
 
-    /** 机理模型预测值1差值 */
-    @Excel(name = "机理模型预测值1差值")
+    /** 机理模型预测值3差值 */
+    @Excel(name = "机理模型预测值3差值")
     private BigDecimal jlThreeSubtract;
 
     /** 删除标志(0代表存在 2代表删除) */