浏览代码

细则校验返回值修改

zhangchenglong 2 年之前
父节点
当前提交
e5b7b84f15

+ 5 - 2
src/main/java/com/syjy/calculate/entity/CalculateResult.java

@@ -20,10 +20,13 @@ public class CalculateResult extends HashMap<String, Object> {
     public static final String PERCENT = "%";
 
     /** formula */
-    public static final String FORMULA = "formula";
+    public static final String FORMULA = "FORMULA";
 
     /** rules */
-    public static final String RULES = "rules";
+    public static final String RULES = "RULES";
+
+    /** 下划线 */
+    public static final String UNDERLINE = "_";
 
     /** 忽略 */
     public static final String IGNORE = "666";

+ 6 - 4
src/main/java/com/syjy/calculate/entity/CalculationFormula.java

@@ -28,26 +28,28 @@ public class CalculationFormula implements Serializable  {
     /**
      * 公式类型
      */
-
     private String type;
 
     /**
      * 公式执行顺序
      */
-
     private Integer orderNo;
 
     /**
      * 公式内容
      */
-
     private String formula;
 
     /**
      * 上报省调
      */
-
     private String provinceEnum;
+
+    /**
+     * 场站类型
+     */
+    private String electricType;
+
     /**
      * 细则对应的公式
      */

+ 6 - 5
src/main/java/com/syjy/calculate/service/AccuracyPassRateCalculateService.java

@@ -55,7 +55,7 @@ public class AccuracyPassRateCalculateService {
         // 获取公式
         String formula = calculationFormula.getFormula();
         //缓存公式名称
-        String scriptName = calculateRequest.getProvince() + calculateRequest.getFormulaType() + calculateRequest.getElectricType() + CalculateResult.FORMULA;
+        String scriptName = calculateRequest.getProvince() + CalculateResult.UNDERLINE + calculateRequest.getFormulaType() + CalculateResult.UNDERLINE + calculateRequest.getElectricType() + CalculateResult.UNDERLINE + CalculateResult.FORMULA;
         // 初始化公式并缓存公式
         if (AviatorEvaluator.getCachedExpression(scriptName) == null) {
             AviatorEvaluator.getInstance().compile(scriptName, formula, true);
@@ -140,7 +140,7 @@ public class AccuracyPassRateCalculateService {
             }
         }
         // 如果固定功率为空
-        if(calculateRequest.getCap()==null){
+        if (calculateRequest.getCap() == null) {
             // 循环判断实时功率是否为空
             for (CalculationInfo calculationInfo : calculationInfoList) {
                 if (calculationInfo.getRl() == null) {
@@ -157,7 +157,7 @@ public class AccuracyPassRateCalculateService {
             return CalculateResult.success(calculationInfoListMap);
         }
         // 脚本名称
-        String scriptName = calculateRequest.getProvince() + calculateRequest.getFormulaType() + calculateRequest.getElectricType() + CalculateResult.RULES;
+        String scriptName = calculateRequest.getProvince() + CalculateResult.UNDERLINE + calculateRequest.getFormulaType() + CalculateResult.UNDERLINE + calculateRequest.getElectricType() + CalculateResult.UNDERLINE + CalculateResult.RULES;
         // 初始化公式并缓存公式
         if (AviatorEvaluator.getCachedExpression(scriptName) == null) {
             AviatorEvaluator.getInstance().compile(scriptName, rulesCalculationFormula.getFormula(), true);
@@ -174,8 +174,9 @@ public class AccuracyPassRateCalculateService {
                     continue;
                     // 如果返回错误,直接返回结果
                 } else if (String.valueOf(checkResult.get(CalculateResult.CODE_TAG)).equals(CalculateResult.ERROR)) {
-                    String resultValue = String.valueOf(checkResult.get(CalculateResult.MSG_TAG));
-                    return CalculateResult.error(CalculateResult.MSG_DATA_CHECK_ERROR, resultValue);
+                    String resultValue = String.valueOf(checkResult.get(CalculateResult.DATA_TAG));
+                    String msg = String.valueOf(checkResult.get(CalculateResult.MSG_TAG));
+                    return CalculateResult.error(msg, resultValue);
                 }
                 // 校验成功,将通过的数据放入passList
                 passList.add(calculationMap);

+ 29 - 29
src/main/resources/META-INF/resources/calculateView/calculate.html

@@ -19,8 +19,8 @@
             justify-content: center;
         }
         .container {
-            width: 100vw;
-            height: 100vh;
+            width: 100%;
+            height: 100%;
             margin-top: 20px;
             display: flex;
             overflow: hidden;
@@ -135,18 +135,18 @@
 </head>
 
 <body>
-<div class="container">
+<div class="container" >
     <div class="container-left">
         <p>信息输入</p>
         <form action="#" method="GET">
             type:
             <input type="text" name="type" id="type"/>
-            orderNo:
-            <input type="text" name="orderNo" id="orderNo"/>
             formula:
             <input type="text" name="formula" id="formula"/>
             provinceEnum:
             <input type="text" name="provinceEnum" id="provinceEnum"/>
+            electricType:
+            <input type="text" name="electricType" id="electricType"/>
             ruleFormula:
             <input type="text" name="ruleFormula" id="ruleFormula"/>
             <button type="button" class="btn">添加</button>
@@ -159,15 +159,14 @@
             <thead>
             <td>ID</td>
             <td>TYPE</td>
-            <td>ORDERNO</td>
             <td>FORMULA</td>
             <td>PROVINCE_ENUM</td>
-            <td>RULE_ORMULA</td>
+            <td>ELECTRIC_TYPE</td>
+            <td>RULE_FORMULA</td>
             <td>移除</td>
             <td>修改</td>
             </thead>
             <tbody id="main">
-
             </tbody>
         </table>
     </div>
@@ -197,9 +196,9 @@
         {
             id: 23,
             type: "POINT_S",
-            orderNo: 1,
             formula: "(1-math.abs((sj-yc)/yc))*100",
-            provinceEnum: "E21Old;E61;E62;E63;E64;",
+            provinceEnum: "E61",
+            electricType: "E2",
             ruleFormula: null
         }
     ];
@@ -231,9 +230,9 @@
                     "number": number,
                     "id": data.id,
                     "type": inputs[0].value,
-                    "orderNo": inputs[1].value,
-                    'formula': inputs[2].value,
-                    'provinceEnum': inputs[3].value,
+                    'formula': inputs[1].value,
+                    'provinceEnum': inputs[2].value,
+                    'electricType': inputs[3].value,
                     'ruleFormula': inputs[4].value
                 };
                 alert('新增成功')
@@ -253,7 +252,6 @@
             data: JSON.stringify(data),
             type: "POST",
             async: false,
-
             dataType: "json",
             contentType: 'application/json',
             success: function (res) {
@@ -286,15 +284,15 @@
             "number": i + 1,
             "id": list[i].id,
             "type": list[i].type,
-            "orderNo": list[i].orderNo,
             'formula': list[i].formula,
             'provinceEnum': list[i].provinceEnum,
+            "electricType": list[i].electricType,
             'ruleFormula': list[i].ruleFormula
         };
         inputs[0].value = list[i].type;
-        inputs[1].value = list[i].orderNo;
-        inputs[2].value = list[i].formula;
-        inputs[3].value = list[i].provinceEnum;
+        inputs[1].value = list[i].formula;
+        inputs[2].value = list[i].provinceEnum;
+        inputs[3].value = list[i].electricType;
         inputs[4].value = list[i].ruleFormula;
         // 调用去重函数
         clearMess();
@@ -305,12 +303,12 @@
     btn.addEventListener('click', function () {
         // 输入框非空判断
         if (inputs[0].value != '' && inputs[0].value != null && inputs[1].value != '' && inputs[1].value !=
-            null && inputs[2].value != '' && inputs[2].value != null && inputs[3].value != '' && inputs[3].value != null) {
+            null && inputs[2].value != '' && inputs[2].value != null && inputs[3].value != '' && inputs[3].value != null&& inputs[4].value != '' && inputs[4].value != null) {
             postAdd({
                 type: inputs[0].value,
-                orderNo: inputs[1].value,
-                formula: inputs[2].value,
-                provinceEnum: inputs[3].value,
+                formula: inputs[1].value,
+                provinceEnum: inputs[2].value,
+                electricType: inputs[3].value,
                 ruleFormula: inputs[4].value
             });
         } else {
@@ -414,7 +412,9 @@
         var firstNumber = parseInt(element.parentNode.parentNode.firstElementChild.innerHTML);
         var tds3 = element.parentNode.parentNode.children;
         for (var i = 0; i < students.length; i++) {
-            if (students[i].number == tds3[0].innerHTML) {
+            var a= students[i].number;
+            var b = tds3[0].innerHTML;
+            if (students[i].id == tds3[0].innerHTML) {
                 id = students[i].id;
             }
             ;
@@ -425,17 +425,17 @@
             "number": firstNumber - 1,
             "id": id,
             "type": tdsInp[0].value,
-            "orderNo": tdsInp[1].value,
-            'formula': tdsInp[2].value,
-            'provinceEnum': tdsInp[3].value,
+            'formula': tdsInp[1].value,
+            'provinceEnum': tdsInp[2].value,
+            "electricType": tdsInp[3].value,
             'ruleFormula': tdsInp[4].value
         };
         postEdit({
             id: id,
             type: tdsInp[0].value,
-            orderNo: tdsInp[1].value,
-            formula: tdsInp[2].value,
-            provinceEnum: tdsInp[3].value,
+            formula: tdsInp[1].value,
+            provinceEnum: tdsInp[2].value,
+            electricType: tdsInp[3].value,
             ruleFormula: tdsInp[4].value,
         })
         students.push(message2);