From ba38e73ef30424f4110fcee67a0d7627b08d931e Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Sat, 09 Dec 2023 17:42:35 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/jtdev' into jtdev

---
 skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/service/impl/AlarmRecordServiceImpl.java |   20 +++++++++++++++-----
 skjcmanager/skjcmanager-service-api/skjcmanager-alerts-api/src/main/java/cn/gistack/alerts/alarmRule/vo/AlarmRecordVO.java            |    5 +++++
 skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml             |   11 +++++++++++
 3 files changed, 31 insertions(+), 5 deletions(-)

diff --git a/skjcmanager/skjcmanager-service-api/skjcmanager-alerts-api/src/main/java/cn/gistack/alerts/alarmRule/vo/AlarmRecordVO.java b/skjcmanager/skjcmanager-service-api/skjcmanager-alerts-api/src/main/java/cn/gistack/alerts/alarmRule/vo/AlarmRecordVO.java
index afae39a..32ffb4f 100644
--- a/skjcmanager/skjcmanager-service-api/skjcmanager-alerts-api/src/main/java/cn/gistack/alerts/alarmRule/vo/AlarmRecordVO.java
+++ b/skjcmanager/skjcmanager-service-api/skjcmanager-alerts-api/src/main/java/cn/gistack/alerts/alarmRule/vo/AlarmRecordVO.java
@@ -80,4 +80,9 @@
 	 * 乡镇
 	 */
 	private String townName;
+
+	/**
+	 * adCode
+	 */
+	private String adCode;
 }
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 dab7adb..1aab548 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
@@ -44,6 +44,9 @@
         <if test="alarmRecord.endTime!=null and alarmRecord.endTime!=''">
             and date_format(sar.create_time,'%Y-%m-%d') &lt;= #{alarmRecord.endTime}
         </if>
+        <if test="alarmRecord.adCode!=null and alarmRecord.adCode!=''">
+            and  a."interior_ad_guid" like concat('%',#{alarmRecord.adCode},'%')
+        </if>
         order by sar.id desc
     </select>
 
@@ -120,6 +123,9 @@
             <if test="alarmRecord.endTime!=null and alarmRecord.endTime!=''">
                 and date_format(sar.create_time,'%Y-%m-%d') &lt;= #{alarmRecord.endTime}
             </if>
+            <if test="alarmRecord.adCode!=null and alarmRecord.adCode!=''">
+                and arb."interior_ad_guid" like concat('%',#{alarmRecord.adCode},'%')
+            </if>
         ) f
         group by cityName,rule_name
     </select>
@@ -137,6 +143,8 @@
         select type,count(*) num
         from YWXT.sm_alarm_record sar
         left join YWXT.sm_alarm_rule e on e.id = sar.alarm_rule_id
+        left join SJZT_MD."att_res_base" a on a."guid" = sar.reservoir_number
+        left join SJZT_MD."att_ad_base" b on b."guid" = a."interior_ad_guid"
         where sar.is_deleted = 0
         <if test="alarmRecord.startTime!=null and alarmRecord.startTime!=''">
             and date_format(sar.create_time,'%Y-%m-%d') >= #{alarmRecord.startTime}
@@ -144,6 +152,9 @@
         <if test="alarmRecord.endTime!=null and alarmRecord.endTime!=''">
             and date_format(sar.create_time,'%Y-%m-%d') &lt;= #{alarmRecord.endTime}
         </if>
+        <if test="alarmRecord.adCode!=null and alarmRecord.adCode!=''">
+            and  a."interior_ad_guid" like concat('%',#{alarmRecord.adCode},'%')
+        </if>
         group by type
         ) b on a.dict_value = b.type
     </select>
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/service/impl/AlarmRecordServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/service/impl/AlarmRecordServiceImpl.java
index c35758c..7ec99cf 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/service/impl/AlarmRecordServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/service/impl/AlarmRecordServiceImpl.java
@@ -12,6 +12,7 @@
 import cn.gistack.sm.patrol.feign.PatrolTaskClient;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.logging.log4j.util.Strings;
 import org.springblade.core.mp.base.BaseServiceImpl;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.utils.DateUtil;
@@ -48,6 +49,9 @@
 	 */
 	@Override
 	public Object selectAlarmRecordPage(IPage<AlarmRecordVO> page, AlarmRecordVO alarmRecord) {
+		if (!Strings.isBlank(alarmRecord.getAdCode())){
+			alarmRecord.setAdCode(alarmRecord.getAdCode().replaceAll("0+$", ""));
+		}
 		if (null != alarmRecord.getIsExport()){
 			return baseMapper.selectAlarmRecordPage(null,alarmRecord);
 		}
@@ -61,8 +65,9 @@
 	 */
 	@Override
 	public Object statisticAlarmRecordByType(AlarmRecordVO alarmRecord) {
-		// 获取当前用户的行政区划
-		String adCode = "420000000000";
+		if (!Strings.isBlank(alarmRecord.getAdCode())){
+			alarmRecord.setAdCode(alarmRecord.getAdCode().replaceAll("0+$", ""));
+		}
 		// 查询统计数据
 		List<StatisticAlarmRecord> list = baseMapper.statisticAlarmRecordByType(alarmRecord);
 		// 返回数据
@@ -76,13 +81,18 @@
 	 */
 	@Override
 	public Object statisticAlarmRecord(AlarmRecordVO alarmRecord) {
-		// 获取当前用户的行政区划
-		String adCode = "420000000000";
+		if (Strings.isBlank(alarmRecord.getAdCode())){
+			// 获取当前用户的行政区划
+			alarmRecord.setAdCode("420000000000");
+		}
 		// 查询所有的市级行政区
-		List<String> adNameList = baseMapper.getAdNameList(adCode);
+		List<String> adNameList = baseMapper.getAdNameList(alarmRecord.getAdCode());
 		// 查询符合条件的告警类型
 		List<AlarmRule> alarmRuleList = baseMapper.listAlarmRule(alarmRecord);
 		// 查询统计数据
+		if (!Strings.isBlank(alarmRecord.getAdCode())){
+			alarmRecord.setAdCode(alarmRecord.getAdCode().replaceAll("0+$", ""));
+		}
 		List<StatisticAlarmRecord> list = baseMapper.statisticAlarmRecord(alarmRecord);
 		// 按行政区分组
 		Map<String, List<StatisticAlarmRecord>> listMap = list.stream().filter(item->null!=item.getAdName()).collect(Collectors.groupingBy(StatisticAlarmRecord::getAdName));

--
Gitblit v1.9.3