Sfoglia il codice sorgente

虚警抑制结果更新返回时间

Gaokun Wang 2 mesi fa
parent
commit
915a13451a

+ 0 - 2
als-common/common-core/src/main/java/org/eco/common/core/utils/ValidatorUtils.java

@@ -1,12 +1,10 @@
 package org.eco.common.core.utils;
 
 import jakarta.validation.ConstraintViolation;
-import jakarta.validation.ConstraintViolationException;
 import jakarta.validation.Validator;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.eco.common.core.exception.BusinessException;
 import org.eco.common.core.exception.base.BaseException;
 
 import java.util.Set;

+ 5 - 8
als-modules/agile-assurance/src/main/java/org/eco/als/domain/vo/FaultStatisticsVo.java

@@ -1,20 +1,17 @@
 package org.eco.als.domain.vo;
 
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import org.eco.als.domain.FaultStatistics;
 import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
 import com.alibaba.excel.annotation.ExcelProperty;
-import org.eco.common.excel.annotation.ExcelDictFormat;
-import org.eco.common.excel.convert.ExcelDictConvert;
-import com.eco.common.mapper.constant.MapperConstant;
-import com.eco.common.mapper.annotation.FieldMapper;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.github.linpeilie.annotations.AutoMapper;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import org.eco.als.domain.FaultStatistics;
+import org.eco.common.orm.core.domain.BaseEntity;
+
 import java.io.Serial;
 import java.io.Serializable;
-import org.eco.common.orm.core.domain.BaseEntity;
+import java.util.Date;
 
 /**
  * 故障统计视图对象 als_fault_statistics_t

+ 2 - 1
als-modules/agile-assurance/src/main/java/org/eco/als/service/IFormulaService.java

@@ -1,10 +1,11 @@
 package org.eco.als.service;
 
+import cn.hutool.json.JSONObject;
 import org.eco.als.domain.bo.ExpressBo;
 
 /**
  * @author wanggaokun
  */
 public interface IFormulaService {
-    int evaluateExpression(ExpressBo expressBo);
+    JSONObject evaluateExpression(ExpressBo expressBo);
 }

+ 3 - 2
als-modules/agile-assurance/src/main/java/org/eco/als/service/impl/AlgorithmService.java

@@ -160,7 +160,6 @@ public class AlgorithmService implements IAlgorithmService {
         if (ObjectUtil.isEmpty(algorithmBo.getDataId())) {
             throw new BusinessException("dataId不能为空!");
         }
-
         warningBo.setSortieNo(algorithmBo.getSortieNo());
         // 警告列表
         List<WarningVo> warningList = warningService.selectList(warningBo);
@@ -178,8 +177,10 @@ public class AlgorithmService implements IAlgorithmService {
                 ExpressBo expressBo = new ExpressBo();
                 expressBo.setExpression(logicVo.getRemarks());
                 expressBo.setOssId(algorithmBo.getOssId());
-                result = formulaService.evaluateExpression(expressBo);
+                JSONObject object = formulaService.evaluateExpression(expressBo);
+                result = object.getInt("result");
                 warningResultBo.setAttribute1(logicVo.getName());
+                warningResultBo.setAttribute2(object.getStr("timeFlag"));
                 warningResultBo.setResultContent(String.valueOf(result));
             }
             warningResultBo.setResultContent(String.valueOf(result));

+ 9 - 3
als-modules/agile-assurance/src/main/java/org/eco/als/service/impl/FormulaService.java

@@ -36,9 +36,11 @@ public class FormulaService implements IFormulaService {
     private ExpressRunner runner;
 
     @Override
-    public int evaluateExpression(ExpressBo expressBo) {
+    public JSONObject evaluateExpression(ExpressBo expressBo) {
         // 虚警
         int result = 1;
+        String timeFlag = null;
+        JSONObject resultJson = new JSONObject();
         try {
 //            CsvUtils.getCsvHeaders("");
             runner = new ExpressRunner();
@@ -57,7 +59,8 @@ public class FormulaService implements IFormulaService {
             String[] variableNames = parseVariableNames(expressBo.getExpression());
             if (!CollUtil.containsAll(headers, Arrays.asList(variableNames))) {
                 log.info("参数列名称匹配不成功:{}{}", Arrays.toString(variableNames), headers.toString());
-                return 2;
+                resultJson.set("result", result);
+                return resultJson;
             }
 
             JSONArray arr = CsvUtils.fileCsvToJsonRegex(path);
@@ -68,6 +71,7 @@ public class FormulaService implements IFormulaService {
                 Boolean isMatch = (Boolean) runner.execute(expressBo.getExpression(), context, null, true, false);
                 log.info("isMatch==========================:{}", isMatch);
                 if (isMatch) {
+                    timeFlag = "";
                     // 实警
                     result = 0;
                     break;
@@ -76,7 +80,9 @@ public class FormulaService implements IFormulaService {
         } catch (Exception e) {
             throw new BusinessException(e.getMessage());
         }
-        return result;
+        resultJson.set("timeFlag", timeFlag);
+        resultJson.set("result", result);
+        return resultJson;
     }
 
     private Map<String, Object> buildVariableContext(ExpressBo expressBo, JSONObject jsonObject) {