From 723bfb3eda20ad768eb2efb1aedc08d5b82b2318 Mon Sep 17 00:00:00 2001
From: zhangk <zhangk@gisuni.com>
Date: Wed, 26 Jun 2024 17:03:53 +0800
Subject: [PATCH] Merge branch 'jtdev' of https://hbsl-code.gistack.cn/hbwri/manager into develop_zk
---
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeHandle.java | 25 +++---------
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeStrategyImpl.java | 71 +++++++++++++++++++++++++++++++++++
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/strategy/NoticeStrategyContext.java | 4 ++
3 files changed, 81 insertions(+), 19 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeHandle.java b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeHandle.java
index 17df9c2..6668d82 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeHandle.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeHandle.java
@@ -598,10 +598,10 @@
.eq("temp_code", uuid)
.eq("alarm_rule_id", alarmRule.getId())
.eq("reservoir_number", list.get(1))
- .eq("alarm_survey_station_code",list.get(0))
+// .eq("alarm_survey_station_code",list.get(0))
);
- if (null != alarmRecord) {
+ if (null!=alarmRecord) {
//删除测值
list.remove(3);
// 删除测站编号
@@ -619,19 +619,8 @@
alarm.setMonitorData(list.get(3));
//删除测值
list.remove(3);
-
- //一个水库同个规则中保存一次处理--Shit mountain code
- AlarmRecord alarmRecord2 = alarmRecordService.getOne(new QueryWrapper<AlarmRecord>()
- .eq("alarm_rule_id", alarmRule.getId())
- .eq("reservoir_number", list.get(1))
- .gt("create_time", DateUtil.format(new Date(),"yyyy-MM-dd"))
- );
- boolean save = true;
- if (null == alarmRecord2) {
- // 新增
- save = alarmRecordService.save(alarm);
- }
-
+ // 新增
+ boolean save = alarmRecordService.save(alarm);
// 删除测站编号
list.remove(0);
if (save) {
@@ -644,12 +633,12 @@
public AlarmRecord saveAlarmRecord(List<String> list, AlarmRule alarmRule, String uuid, String remark) {
AlarmRecord alarmRecord = alarmRecordService.getOne(new QueryWrapper<AlarmRecord>()
- .eq("temp_code", uuid)
+ .eq("temp_code", uuid)
.eq("alarm_rule_id", alarmRule.getId())
.eq("reservoir_number", list.get(1))
- .eq("alarm_survey_station_code",list.get(0))
+// .eq("alarm_survey_station_code",list.get(0))
);
- if (null != alarmRecord) {
+ if (null!=alarmRecord) {
//删除测值
list.remove(3);
// 删除测站编号
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 b1d774a..7529d73 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
@@ -259,6 +259,40 @@
return "水位小幅超汛限告警";
}
+
+ /**
+ * 策略7.1: 水位小幅超汛限告警2--水位高于汛限水位20cm
+ *
+ * @param arg1
+ * @param arg2
+ * @return
+ */
+ public String waterSmallScaleOver20Handle(String arg1, String arg2) {
+// String adCode = "421303000000";
+ String adCode = null;
+ String uuid = UUID.randomUUID().toString();
+ // 查询当前策略对应的告警规则信息
+ AlarmRule alarmRule = alarmRuleService.getOne(new QueryWrapper<AlarmRule>().eq("rule_name", arg1));
+ // 调用中台服务接口查询数据
+ JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.res_over_z_small_over_api);
+ // 获取告警规则详情,判断告警类型(短信,电话,站内信)
+ if (null != alarmRule) {
+ // 查询告警详情信息
+ List<AlarmRuleDetail> alarmRuleDetailList = alarmRuleDetailService.list(new QueryWrapper<AlarmRuleDetail>().eq("alarm_rule_id", alarmRule.getId()));
+ if (alarmRuleDetailList.size() > 0) {
+ // 遍历
+ if (alarmRuleDetailList.get(0).getAlarmMode().equals("短信")) {
+ asyncNoticeHandle.waterSmallScaleOverHandle1(alarmRule, alarmRuleDetailList.get(0), ztData, ZtApiDataColumnConstant.waterSmallScaleOverList, true, adCode, false, uuid);
+ }
+ if (alarmRuleDetailList.get(1).getAlarmMode().equals("短信")) {
+ asyncNoticeHandle.waterSmallScaleOverHandle2(alarmRule, alarmRuleDetailList.get(1), ztData, ZtApiDataColumnConstant.waterSmallScaleOverList, true, adCode, false, uuid);
+ }
+ }
+ }
+ // 返回
+ return "水位小幅超汛限告警";
+ }
+
/**
* 策略8: 水位大幅超汛限告警
*
@@ -570,7 +604,7 @@
// 遍历
for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
if (alarmRuleDetail.getAlarmMode().equals("短信")) {
- asyncNoticeHandle.sixHourRainHandle(alarmRule, alarmRuleDetail, ztData, ZtApiDataColumnConstant.sixHourRainList, true, adCode, false, uuid);
+ asyncNoticeHandle.sixHourRainHandle(alarmRule, alarmRuleDetail, ztData, ZtApiDataColumnConstant.sixHourRainList, false, adCode, false, uuid);
}
// if (alarmRuleDetail.getAlarmMode().equals("电话")) {
// asyncNoticeHandle.outCallHandleCall(alarmRule, alarmRuleDetail, ztData,ZtApiDataColumnConstant.sixHourRainList,true, adCode, false,uuid);
@@ -582,6 +616,41 @@
return "6小时降雨告警";
}
+ /**
+ * 策略18: 6小时降雨告警
+ *
+ * @param arg1
+ * @param arg2
+ * @return
+ */
+ public String sixHourRainHandle2(String arg1, String arg2) {
+ //String adCode = "420607000000";
+ String uuid = UUID.randomUUID().toString();
+ String adCode = null;
+ // 查询当前策略对应的告警规则信息
+ AlarmRule alarmRule = alarmRuleService.getOne(new QueryWrapper<AlarmRule>().eq("rule_name", arg1));
+ // 调用中台服务接口查询数据
+ JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_rain_6_over_api);
+ // 获取告警规则详情,判断告警类型(短信,电话,站内信)
+ if (null != alarmRule) {
+ // 查询告警详情信息
+ List<AlarmRuleDetail> alarmRuleDetailList = alarmRuleDetailService.list(new QueryWrapper<AlarmRuleDetail>().eq("alarm_rule_id", alarmRule.getId()));
+ if (alarmRuleDetailList.size() > 0) {
+ // 遍历
+ for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
+ if (alarmRuleDetail.getAlarmMode().equals("短信")) {
+// asyncNoticeHandle.sixHourRainHandle(alarmRule, alarmRuleDetail, ztData, ZtApiDataColumnConstant.sixHourRainList, false, adCode, false, uuid);
+ }
+ if (alarmRuleDetail.getAlarmMode().equals("电话")) {
+ asyncNoticeHandle.outCallHandleCall(alarmRule, alarmRuleDetail, ztData,ZtApiDataColumnConstant.sixHourRainList,false, adCode, false,uuid);
+ }
+ }
+ }
+ }
+ // 返回
+ return "6小时降雨告警";
+ }
+
/**
* 策略19: 大坝安全监测告警-数据缺失
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/strategy/NoticeStrategyContext.java b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/strategy/NoticeStrategyContext.java
index 718fa2a..ee1b2e6 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/strategy/NoticeStrategyContext.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/strategy/NoticeStrategyContext.java
@@ -50,6 +50,8 @@
strategyMap.put("waterFirstOverHandle", (arg1, arg2) -> noticeStrategyImpl.waterFirstOverHandle(arg1, arg2));
//7
strategyMap.put("waterSmallScaleOverHandle", (arg1, arg2) -> noticeStrategyImpl.waterSmallScaleOverHandle(arg1, arg2));
+ //7.1
+ strategyMap.put("waterSmallScaleOver20Handle", (arg1, arg2) -> noticeStrategyImpl.waterSmallScaleOver20Handle(arg1, arg2));
//8
strategyMap.put("waterBigScaleOverHandle", (arg1, arg2) -> noticeStrategyImpl.waterBigScaleOverHandle(arg1, arg2));
//9
@@ -72,6 +74,8 @@
strategyMap.put("twoHourRainHandle", (arg1, arg2) -> noticeStrategyImpl.twoHourRainHandle(arg1, arg2));
//18 6小时降雨告警
strategyMap.put("sixHourRainHandle", (arg1, arg2) -> noticeStrategyImpl.sixHourRainHandle(arg1, arg2));
+ //18 6小时降雨告警2
+ strategyMap.put("sixHourRainHandle2", (arg1, arg2) -> noticeStrategyImpl.sixHourRainHandle2(arg1, arg2));
//19 大坝安全监测告警-数据缺失
strategyMap.put("damSafetyHandle", (arg1, arg2) -> noticeStrategyImpl.damSafetyHandle(arg1, arg2));
//20 大坝安全监测告警-渗压管水位
--
Gitblit v1.9.3