From 08a962d2925baa255207fdf979e6fee794f1773b Mon Sep 17 00:00:00 2001
From: ke <893754509@qq.com>
Date: Fri, 19 Jul 2024 12:25:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/jtdev' into jtdev

---
 skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml |   42 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 41 insertions(+), 1 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml
index c52965f..d7f03cd 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml
@@ -66,7 +66,7 @@
             and sar.create_time &lt;= #{alarmRecord.endTime}
         </if>
         <if test="alarmRecord.adCode!=null and alarmRecord.adCode!=''">
-            and  a."interior_ad_guid" like concat('%',#{alarmRecord.adCode},'%')
+            and  concat(a."interior_ad_guid",b."guid",c."guid",d."guid") like concat('%',#{alarmRecord.adCode},'%')
         </if>
         <if test="alarmRecord.alarmLevel != null and alarmRecord.alarmLevel !=''">
             and sar1.alarm_level = #{alarmRecord.alarmLevel}
@@ -404,4 +404,44 @@
         order by field(rule.alarm_level,'蓝色预警','黄色预警','橙色预警','红色预警')
     </select>
 
+    <!--告警统计按告警分类-等级统计-->
+    <select id="statisticAlaByTypeAndLev" resultType="cn.gistack.alerts.alarmRule.vo.StatisticAlarmRecord">
+        SELECT
+            count(*) num,type as ruleName,rule.alarm_level alarmLevel
+        FROM YWXT.sm_alarm_record record
+        LEFT JOIN ywxt.SM_ALARM_RULE rule on rule.id = record.alarm_rule_id
+        LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = record.reservoir_number
+        LEFT JOIN SJZT_MD."rel_res_bas_loc" rrbl ON rrbl."res_guid" = record.reservoir_number
+        LEFT JOIN SJZT_MD."att_bas_base" abb ON abb."code" = rrbl."bas_guid"
+        LEFT JOIN SJZT_MD."att_bas_base" pabb ON abb."p_code" = pabb."code"
+        where
+        record.is_deleted = 0
+        and rule.type in ('渗压监测','渗流监测','变形监测','水情监测','雨情监测')
+        <if test="alarmRecord.reservoirName!=null and alarmRecord.reservoirName!=''">
+            and arb."name" like concat('%',#{alarmRecord.reservoirName},'%')
+        </if>
+        <if test="alarmRecord.alarmRuleType!=null and alarmRecord.alarmRuleType!=''">
+            and rule.alarm_rule_type = #{alarmRecord.alarmRuleType}
+        </if>
+        <if test="alarmRecord.createAlarmType!=null and alarmRecord.createAlarmType!=''">
+            and rule.create_alarm_type = #{alarmRecord.createAlarmType}
+        </if>
+        <if test="alarmRecord.ruleName!=null and alarmRecord.ruleName!=''">
+            and rule.rule_name = #{alarmRecord.ruleName}
+        </if>
+        <if test="alarmRecord.startTime!=null and alarmRecord.startTime!=''">
+            and record.create_time >= #{alarmRecord.startTime}
+        </if>
+        <if test="alarmRecord.endTime!=null and alarmRecord.endTime!=''">
+            and record.create_time &lt;= #{alarmRecord.endTime}
+        </if>
+        <if test="alarmRecord.resGuids != null and alarmRecord.resGuids !=''">
+            AND record.reservoir_number in
+            <foreach collection="alarmRecord.resGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </if>
+        group by type,rule.alarm_level
+    </select>
+
 </mapper>

--
Gitblit v1.9.3