From 6735eaad855055d7a7e1149f3a01ebff1e29005b Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 26 Jul 2023 16:00:43 +0800
Subject: [PATCH] 雨量大雨,暴雨,6小时告警新增

---
 skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/AsyncNoticeHandle.java |  113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 113 insertions(+), 0 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/AsyncNoticeHandle.java b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/AsyncNoticeHandle.java
index de786fc..e4abf36 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/AsyncNoticeHandle.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/AsyncNoticeHandle.java
@@ -224,4 +224,117 @@
 		return map;
 	}
 
+	/**
+	 * 策略15: 已降大雨告警
+	 *
+	 * @param templateId
+	 * @param uuid
+	 * @param alarmRule
+	 * @param adCode
+	 * @param isSendStation 是否发送站内信
+	 * @return
+	 */
+	@Async
+	public Map<String, Object> alreadyHeavyRainHandle(String templateId, String uuid, AlarmRule alarmRule, String adCode, boolean isSendStation) {
+		Map<String, Object> map = new HashMap<>();
+		// 调用中台服务接口查询数据
+		JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_rain_dy_api);
+		// 只发短信,将发短信信息组装好
+		SmsRequestTemplate smsRequestTemplate
+			= noticeHandle.getSendSmsTemplate(ztData, templateId, alarmRule, ZtApiDataColumnConstant.alreadyHeavyRainList, false, adCode,uuid);
+		// 拼接后面内容
+		if (smsRequestTemplate.getPersonVOList().size() > 0) {
+			for (List<String> list : smsRequestTemplate.getTemplateContent()) {
+				// 依次添加巡查责任人技术责任人信息姓名
+				noticeHandle.addPatrolTechnologyInfo(list);
+				// 拼接市县水利部人员姓名及联系方式
+				noticeHandle.addCityCountyBusinessPersonInfo(list);
+				// 保存告警记录信息
+				AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
+				if (null != alarmRecord) {
+					list.add(alarmRecord.getId().toString());
+				}
+			}
+			map = smsService.sendSignMsg(smsRequestTemplate);
+			// 调用短信服务
+			return map;
+		}
+		return map;
+	}
+
+	/**
+	 * 策略16: 已降暴雨告警
+	 *
+	 * @param templateId
+	 * @param uuid
+	 * @param alarmRule
+	 * @param adCode
+	 * @param isSendStation 是否发送站内信
+	 * @return
+	 */
+	@Async
+	public Map<String, Object> alreadyRainstormHandle(String templateId, String uuid, AlarmRule alarmRule, String adCode, boolean isSendStation) {
+		Map<String, Object> map = new HashMap<>();
+		// 调用中台服务接口查询数据
+		JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_rain_by_api);
+		// 只发短信,将发短信信息组装好
+		SmsRequestTemplate smsRequestTemplate
+			= noticeHandle.getSendSmsTemplate(ztData, templateId, alarmRule, ZtApiDataColumnConstant.alreadyRainstormList, false, adCode,uuid);
+		// 拼接后面内容
+		if (smsRequestTemplate.getPersonVOList().size() > 0) {
+			for (List<String> list : smsRequestTemplate.getTemplateContent()) {
+				// 依次添加巡查责任人技术责任人信息姓名
+				noticeHandle.addPatrolTechnologyInfo(list);
+				// 拼接市县水利部人员姓名及联系方式
+				noticeHandle.addCityCountyBusinessPersonInfo(list);
+				// 保存告警记录信息
+				AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
+				if (null != alarmRecord) {
+					list.add(alarmRecord.getId().toString());
+				}
+			}
+			map = smsService.sendSignMsg(smsRequestTemplate);
+			// 调用短信服务
+			return map;
+		}
+		return map;
+	}
+
+	/**
+	 * 策略18: 6小时降雨告警
+	 *
+	 * @param templateId
+	 * @param uuid
+	 * @param alarmRule
+	 * @param adCode
+	 * @param isSendStation 是否发送站内信
+	 * @return
+	 */
+	@Async
+	public Map<String, Object> sixHourRainHandle(String templateId, String uuid, AlarmRule alarmRule, String adCode, boolean isSendStation) {
+		Map<String, Object> map = new HashMap<>();
+		// 调用中台服务接口查询数据
+		JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_rain_6_over_api);
+		// 只发短信,将发短信信息组装好
+		SmsRequestTemplate smsRequestTemplate
+			= noticeHandle.getSendSmsTemplate(ztData, templateId, alarmRule, ZtApiDataColumnConstant.sixHourRainList, false, adCode,uuid);
+		// 拼接后面内容
+		if (smsRequestTemplate.getPersonVOList().size() > 0) {
+			for (List<String> list : smsRequestTemplate.getTemplateContent()) {
+				// 依次添加行政责任人,主管部门责任人,技术责任人,巡查责任人信息(姓名,联系电话)
+				noticeHandle.addWaterMoreDesignPatrolTechnologyInfo(list,"1,2,4,5");
+				// 拼接市县水利部人员姓名及联系方式
+				noticeHandle.addCityCountyBusinessPersonInfo(list);
+				// 保存告警记录信息
+				AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
+				if (null != alarmRecord) {
+					list.add(alarmRecord.getId().toString());
+				}
+			}
+			map = smsService.sendSignMsg(smsRequestTemplate);
+			// 调用短信服务
+			return map;
+		}
+		return map;
+	}
 }

--
Gitblit v1.9.3