From 80b6162f20872caff8bc5d393e3c07496660a0bb Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Mon, 22 Apr 2024 16:10:41 +0800
Subject: [PATCH] 告警增加测点值

---
 skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeStrategyImpl.java |   55 +++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 39 insertions(+), 16 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeStrategyImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeStrategyImpl.java
index 7c56647..3e6e06a 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeStrategyImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeStrategyImpl.java
@@ -930,7 +930,10 @@
 		// 调用中台服务接口查询数据
 		JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_db_sy_higher_then_bdElevation_api);
 		//这里需要对数据进行过滤
-		JSONArray resultData = filterNoAlertRes(ztData,arg1);
+		JSONArray resultData1 = filterNoAlertRes(ztData,arg1);
+
+		JSONArray resultData = setMonitorData(resultData1, "max_value");
+
 		// 获取告警规则详情,判断告警类型(短信,电话,站内信)
 		if (null != alarmRule) {
 			// 查询告警详情信息
@@ -965,7 +968,10 @@
 		// 调用中台服务接口查询数据
 		JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_db_sy_higher_then_water_level_api);
 		//这里需要对数据进行过滤
-		JSONArray resultData = filterNoAlertRes(ztData,arg1);
+		JSONArray resultData1 = filterNoAlertRes(ztData,arg1);
+
+		JSONArray resultData = setMonitorData(resultData1, "max_value");
+
 		// 获取告警规则详情,判断告警类型(短信,电话,站内信)
 		if (null != alarmRule) {
 			// 查询告警详情信息
@@ -1284,7 +1290,6 @@
 		//这里需要对数据进行过滤
 		JSONArray resultData = filterNoAlertRes(data,arg1);
 
-
 		// 获取告警规则详情,判断告警类型(短信,电话,站内信)
 		if (null != alarmRule) {
 			// 查询告警详情信息
@@ -1324,8 +1329,8 @@
 		JSONArray data = filterData(ztData,"1");
 
 		//这里需要对数据进行过滤
-		JSONArray resultData = filterNoAlertRes(data,arg1);
-
+		JSONArray resultData1 = filterNoAlertRes(data,arg1);
+		JSONArray resultData = setMonitorData(resultData1, "value");
 
 		// 获取告警规则详情,判断告警类型(短信,电话,站内信)
 		if (null != alarmRule) {
@@ -1335,10 +1340,10 @@
 				// 遍历
 				for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
 					if (alarmRuleDetail.getAlarmMode().equals("短信")) {
-						asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, false, uuid,arg2);
+						asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, false, uuid,arg2);
 					}
 					if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
-						asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, true, uuid,arg2);
+						asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, true, uuid,arg2);
 					}
 				}
 			}
@@ -1366,8 +1371,8 @@
 		JSONArray data = filterData(ztData,"2");
 
 		//这里需要对数据进行过滤
-		JSONArray resultData = filterNoAlertRes(data,arg1);
-
+		JSONArray resultData1 = filterNoAlertRes(data,arg1);
+		JSONArray resultData = setMonitorData(resultData1, "value");
 		// 获取告警规则详情,判断告警类型(短信,电话,站内信)
 		if (null != alarmRule) {
 			// 查询告警详情信息
@@ -1376,10 +1381,10 @@
 				// 遍历
 				for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
 					if (alarmRuleDetail.getAlarmMode().equals("短信")) {
-						asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, false, uuid,arg2);
+						asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, false, uuid,arg2);
 					}
 					if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
-						asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, true, uuid,arg2);
+						asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, true, uuid,arg2);
 					}
 				}
 			}
@@ -1407,7 +1412,9 @@
 		JSONArray data = filterData(ztData,"3");
 
 		//这里需要对数据进行过滤
-		JSONArray resultData = filterNoAlertRes(data,arg1);
+		JSONArray resultData1 = filterNoAlertRes(data,arg1);
+
+		JSONArray resultData = setMonitorData(resultData1, "value");
 
 		// 获取告警规则详情,判断告警类型(短信,电话,站内信)
 		if (null != alarmRule) {
@@ -1417,16 +1424,16 @@
 				// 遍历
 				for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
 					if (alarmRuleDetail.getAlarmMode().equals("短信")) {
-						asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, false, uuid,arg2);
+						asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, false, uuid,arg2);
 					}
 					if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
-						asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, true, uuid,arg2);
+						asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, true, uuid,arg2);
 					}
 				}
 			}
 		}
 
-		return "渗流量一日大于5L小于8L,连续3日增加告警";
+		return "渗流量一日大于10L告警";
 	}
 
 	/**
@@ -1512,6 +1519,7 @@
 
 			jsonObject.put("direction", direction);
 			jsonObject.put("val", val);
+			jsonObject.put("monitorData",val);
 			array.add(jsonObject);
 
 		}
@@ -1582,6 +1590,7 @@
 
 				jsonObject.put("direction", direction);
 				jsonObject.put("val", val);
+				jsonObject.put("monitorData",val);
 				array.add(jsonObject);
 			}
 
@@ -1605,6 +1614,7 @@
 			}
 
 			jsonObject.put("type", type);
+			jsonObject.put("monitor",jsonObject.getString("diff_val"));
 			array.add(jsonObject);
 		}
 		return array;
@@ -1638,7 +1648,6 @@
 
 			String dayNum = "";
 			String diffVal = "";
-
 			if (dataLevel.equals(level)) {
 				if (level.equals("1")) {
 					//水位长期不变,五日变幅小于5cm,十日变幅大于5cm小于8cm,三十日变幅大于8cm小于10cm
@@ -1692,6 +1701,7 @@
 				}
 
 				jsonObject.put("diff_val", diffVal);
+				jsonObject.put("monitorData",jsonObject.getString("val1"));
 				array.add(jsonObject);
 			}
 		}
@@ -1719,12 +1729,14 @@
 				if (differ < 0) {
 					//加进一个绝对值方便展示
 					jsonObject.put("diff_tbb_val_abs", Math.abs(differ));
+					jsonObject.put("monitorData",jsonObject.getString("min_value"));
 					array.add(jsonObject);
 				}
 			} else if (flag == "higher") {
 				//获取高于管口高程数据,即 max_value > tbttel 即 max_value - tbttel >0 即 diff_tbt_val >0
 				Double differ = jsonObject.getDouble("diff_tbt_val");
 				if (differ > 0) {
+					jsonObject.put("monitorData",jsonObject.getString("max_value"));
 					array.add(jsonObject);
 				}
 			}
@@ -1762,5 +1774,16 @@
 		return  result;
 	}
 
+	//给数组赋值监测值,便于后面记录监测值
+	public JSONArray setMonitorData(JSONArray source,String monitorName){
+		JSONArray result = new JSONArray();
+		for (int i = 0; i < source.size(); i++) {
+			JSONObject jsonObject = source.getJSONObject(i);
 
+			String  data = jsonObject.getString(monitorName);
+			jsonObject.put("monitorData",data);
+			result.add(jsonObject);
+		}
+		return result;
+	}
 }

--
Gitblit v1.9.3