Ver código fonte

1.报警分类细化 2.所有报警次数改成返回字符串 如果超过30次,显示30+

王苗苗 1 mês atrás
pai
commit
a5e94c5b4d

+ 2 - 1
slibra-admin/src/main/java/com/slibra/web/controller/business/FrontController.java

@@ -290,7 +290,8 @@ public class FrontController extends BaseController {
                     log.error("xxxxxxxxx:之前处理告警结束的逻辑异常,没有更新截止时间");
                     endDate = DateUtils.getNowDate();
                 }
-                tXinyiWarningRecord.setCounts(Math.min(DateUtils.differentHoursByMillisecond(tXinyiWarningRecord.getCreateTime(), endDate) + 1, MAX_COUNT));
+                int counts = DateUtils.differentHoursByMillisecond(tXinyiWarningRecord.getCreateTime(), endDate) + 1;
+                tXinyiWarningRecord.setCounts(counts > MAX_COUNT ? MAX_COUNT_STR : String.valueOf(counts));
 
                 //2024年7月11日13:36:41 新增处理,返回带单位的报警值(目前只处理生化报警的)
                 if(1 == tXinyiWarningRecord.getType())

+ 3 - 1
slibra-admin/src/main/java/com/slibra/web/controller/business/TXinyiWarningRecordController.java

@@ -28,6 +28,7 @@ import com.slibra.common.utils.poi.ExcelUtil;
 import com.slibra.common.core.page.TableDataInfo;
 
 import static com.slibra.common.constant.MyConstants.MAX_COUNT;
+import static com.slibra.common.constant.MyConstants.MAX_COUNT_STR;
 
 /**
  * 信义告警记录Controller
@@ -130,7 +131,8 @@ public class TXinyiWarningRecordController extends BaseController
                     log.error("xxxxxxxxx:之前处理告警结束的逻辑异常,没有更新截止时间");
                     endDate = DateUtils.getNowDate();
                 }
-                tXinyiWarningRecord.setCounts(Math.min(DateUtils.differentHoursByMillisecond(tXinyiWarningRecord.getCreateTime(), endDate) + 1, MAX_COUNT));
+                int counts = DateUtils.differentHoursByMillisecond(tXinyiWarningRecord.getCreateTime(), endDate) + 1;
+                tXinyiWarningRecord.setCounts(counts > MAX_COUNT ? MAX_COUNT_STR : String.valueOf(counts));
             }
         }
     }

+ 1 - 0
slibra-common/src/main/java/com/slibra/common/constant/MyConstants.java

@@ -179,6 +179,7 @@ public class MyConstants {
 //    public static final String NH3 = "nh3";//nh3
 //    public static final String TP = "tp";//tp
     public static final int MAX_COUNT = 30;
+    public static final String MAX_COUNT_STR = "30+";
 
     public static final int INDEX_1 = 1;
     public static final int INDEX_2 = 2;

+ 5 - 2
slibra-common/src/main/java/com/slibra/common/enums/BusinessEnum.java

@@ -427,8 +427,11 @@ public class BusinessEnum {
     {
         CBZZ(0, "超标准值"),
         CGKZ(1, "超管控值"),
-        YBGZ(2, "仪表故障(断点、连续)"),
-        SJYC(3, "数据异常(突变、异常)"),
+        YBGZ_DD(2, "仪表故障(断点)"),
+        YBGZ_LX(3, "仪表故障(连续不变)"),
+        SJYC_YCSG(4, "数据异常(单点突变 - 异常升高)"),
+        SJYC_YCPD(5, "数据异常(单点突变 - 异常偏低)"),
+        SJYC_DDYC(6, "数据异常(单点异常 - 超过标准值)"),
         ;
 
         private final Integer code;

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

@@ -1737,7 +1737,7 @@ public class AsyncTask {
         showValueSHBasic.setB(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM ,warningTime));
         showValueSHBasic.setC(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getWarningVal(), INT_2) + unit);
         showValueSHBasic.setD(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getDesignVal(), INT_2) + unit);
-        showValueSHBasic.setG(Math.min(count, MAX_COUNT));
+        showValueSHBasic.setG(count > MAX_COUNT ? MAX_COUNT_STR : count);
         if(tXinyiWarningRecord.getType() != 2)
             showValueSHBasic.setI(status == 0 ? "报警中" : status == 1 ? "用户关闭" : status == 2 ? "系统关闭" : "应急处理中");
         else
@@ -1764,7 +1764,7 @@ public class AsyncTask {
         basic.put("报警值", tXinyiWarningRecord.getWarningVal());
         basic.put("标准值", tXinyiWarningRecord.getDesignVal());
         basic.put("管控值", tXinyiWarningRecord.getControlVal());
-        basic.put("报警次数", Math.min(count, MAX_COUNT));
+        basic.put("报警次数", count > MAX_COUNT ? MAX_COUNT_STR : count);
         if(tXinyiWarningRecord.getType() != 2)
             basic.put("状态", status == 0 ? "报警中" : status == 1 ? "用户关闭" : status == 2 ? "系统关闭" : "应急处理中");
         else
@@ -1800,7 +1800,7 @@ public class AsyncTask {
             showValueCSBasic.setC(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getWarningVal(), INT_2));
             showValueCSBasic.setD(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getControlVal(), INT_2));
             showValueCSBasic.setE(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getDesignVal(), INT_2));
-            showValueCSBasic.setG(Math.min(count, MAX_COUNT));
+            showValueCSBasic.setG(count > MAX_COUNT ? MAX_COUNT_STR : count);
             if(tXinyiWarningRecord.getType() != 2)
                 showValueCSBasic.setI(status == 0 ? "报警中" : status == 1 ? "用户关闭" : status == 2 ? "系统关闭" : "应急处理中");
             else
@@ -1825,7 +1825,7 @@ public class AsyncTask {
             showValueJSBasic.setB(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM ,warningTime));
             showValueJSBasic.setC(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getWarningVal(), INT_2));
             showValueJSBasic.setE(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getDesignVal(), INT_2));
-            showValueJSBasic.setG(Math.min(count, MAX_COUNT));
+            showValueJSBasic.setG(count > MAX_COUNT ? MAX_COUNT_STR : count);
             if(tXinyiWarningRecord.getType() != 2)
                 showValueJSBasic.setI(status == 0 ? "报警中" : status == 1 ? "用户关闭" : status == 2 ? "系统关闭" : "应急处理中");
             else

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

@@ -439,7 +439,7 @@ public class RyTask
         basic.put("报警值", DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getWarningVal(), INT_2));
         basic.put("标准值", DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getDesignVal(), INT_2));
         basic.put("管控值", DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getControlVal(), INT_2));
-        basic.put("报警次数", Math.min(count, MAX_COUNT));
+        basic.put("报警次数", count > MAX_COUNT ? MAX_COUNT_STR : count);
         if(tXinyiWarningRecord.getType() != 2)
             basic.put("状态", status == 0 ? "报警中" : status == 1 ? "用户关闭" : status == 2 ? "系统关闭" : "应急处理中");
         else
@@ -493,7 +493,7 @@ public class RyTask
         showValueChartBasic.setE(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getForecastVal(), INT_2));//改成预测值  不是报警时候的值(在发现存在告警记录的时候更新)
         showValueChartBasic.setF(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getControlVal(), INT_2));
         showValueChartBasic.setG(DecimalUtils.getAbsAndScale(tXinyiWarningRecord.getDesignVal(), INT_2));
-//        showValueChartBasic.setH(Math.min(count, MAX_COUNT));
+//        showValueChartBasic.setH(count > MAX_COUNT ? MAX_COUNT_STR : count);
         //2024年7月20日17:28:17  增加数据来源展示
         String category = tXinyiWarningRecord.getCategory();
         if(BusinessEnum.WarningCategoryEnum.CS_COD_YC.getCode().equals(category)

+ 2 - 1
slibra-system/src/main/java/com/slibra/business/domain/TXinyiWarningRecord.java

@@ -123,7 +123,8 @@ public class TXinyiWarningRecord extends BaseEntity
 
 
     //2024年5月26日18:17:45  额外返回给前端的字段
-    private int counts;//报警次数。
+    //2025年02月13日13:49:45 改成字符串 如果超过30次,就显示30+
+    private String counts;//报警次数。
 
     //2024年7月11日13:37:40 额外返回给前端的字段
     private String warningValStr;