From d108d61f6735e93a2a7377832b6eb056ca8f0d4e Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期二, 13 六月 2023 16:10:20 +0800
Subject: [PATCH] 增加管线泄漏报警查询接口 增加管线泄漏报警查看接口
---
ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java | 31 ++++++++++++++-
ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/mapper/ArdAlarmTubeMapper.java | 6 +++
ard-work/src/main/resources/mapper/stealAlarm/ArdAlarmStealelecMapper.xml | 2
ard-work/src/main/resources/mapper/alarm/ArdAlarmTubeMapper.xml | 27 +++++++++++++
ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/domain/ArdAlarmTube.java | 9 ++++
ard-work/src/main/java/com/ruoyi/alarm/stealAlarm/mapper/ArdAlarmStealelecMapper.java | 2
6 files changed, 71 insertions(+), 6 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
index 55ace11..3006be4 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
@@ -46,6 +46,8 @@
@Resource
ArdAlarmStealelecMapper ardAlarmStealelecMapper;
@Resource
+ ArdAlarmTubeMapper ardAlarmTubeMapper;
+ @Resource
IArdAlarmTubeService ardAlarmTubeService;
@Resource
ArdTubesMapper ardTubesMapper;
@@ -59,7 +61,7 @@
String refreshTime = configService.selectConfigByKey("refreshTime");
switch (condition.getCommand()) {
case 1001:
- List<ArdAlarmStealelec> ardAlarmStealelecs = ardAlarmStealelecMapper.selectAllByCommandArdAlarmStealelecList(refreshTime);
+ List<ArdAlarmStealelec> ardAlarmStealelecs = ardAlarmStealelecMapper.selectListAllByCommand(refreshTime);
return ardAlarmStealelecs.stream()
.map(ardAlarmStealelec -> {
GlobalAlarmData globalAlarmData = new GlobalAlarmData()
@@ -74,6 +76,22 @@
return globalAlarmData;
})
.collect(Collectors.toList());
+ case 1014:
+ List<ArdAlarmTube> ardAlarmTubes = ardAlarmTubeMapper.selectListAllByCommand(refreshTime);
+ return ardAlarmTubes.stream()
+ .map(ardAlarmTube -> {
+ GlobalAlarmData globalAlarmData = new GlobalAlarmData()
+ .setId(ardAlarmTube.getId())
+ .setName(ardAlarmTube.getTubeName())
+ .setAlarmTime(ardAlarmTube.getAlarmTime())
+ .setLongitude(ardAlarmTube.getLongitude())
+ .setLatitude(ardAlarmTube.getLatitude())
+ .setAltitude(ardAlarmTube.getAltitude())
+ .setCount(ardAlarmTube.getCount())
+ .setTotal(ardAlarmTube.getTotal());
+ return globalAlarmData;
+ })
+ .collect(Collectors.toList());
default:
return null;
}
@@ -84,14 +102,21 @@
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
switch (condition.getCommand()) {
case 1001:
- String id = condition.getId();
- ArdAlarmStealelec ardAlarmStealelec = ardAlarmStealelecMapper.selectByPrimaryKey(id);
+ ArdAlarmStealelec ardAlarmStealelec = ardAlarmStealelecMapper.selectByPrimaryKey(condition.getId());
if(StringUtils.isNotNull(ardAlarmStealelec)) {
String describe = ardAlarmStealelec.getDescribe();
String startTime = fmt.format(ardAlarmStealelec.getStartTime());
int i = ardAlarmStealelecMapper.updateViewTimeByDescribe(describe, startTime, DateUtils.getTime());
return ardAlarmStealelec;
}
+ case 1014:
+ ArdAlarmTube ardAlarmTube = ardAlarmTubeMapper.selectArdAlarmTubeById(condition.getId());
+ if(StringUtils.isNotNull(ardAlarmTube)) {
+ String tubeId = ardAlarmTube.getTubeId();
+ String alarmTime = fmt.format(ardAlarmTube.getAlarmTime());
+ int i = ardAlarmTubeMapper.updateViewTimeByTubeId(tubeId, alarmTime, DateUtils.getTime());
+ return ardAlarmTube;
+ }
default: return null;
}
}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/stealAlarm/mapper/ArdAlarmStealelecMapper.java b/ard-work/src/main/java/com/ruoyi/alarm/stealAlarm/mapper/ArdAlarmStealelecMapper.java
index b16eca7..ba0012f 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/stealAlarm/mapper/ArdAlarmStealelecMapper.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/stealAlarm/mapper/ArdAlarmStealelecMapper.java
@@ -13,6 +13,6 @@
ArdAlarmStealelec selectByPrimaryKey(String id);
List<ArdAlarmStealelec> selectRealByCondition(@Param("refreshTime")String refreshTime,@Param("deptId")Long deptId);
List<ArdAlarmStealelec> selectHistoryByCondition(GlobalAlarmCondition condition);
- List<ArdAlarmStealelec> selectAllByCommandArdAlarmStealelecList(@Param("refreshTime")String refreshTime);
+ List<ArdAlarmStealelec> selectListAllByCommand(@Param("refreshTime")String refreshTime);
int updateViewTimeByDescribe(@Param("describe")String describe,@Param("alarmTime") String alarmTime,@Param("viewTime") String viewTime);
}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/domain/ArdAlarmTube.java b/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/domain/ArdAlarmTube.java
index d3a1e74..5a177f5 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/domain/ArdAlarmTube.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/domain/ArdAlarmTube.java
@@ -86,5 +86,12 @@
@Excel(name = "鏌ョ湅鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date viewTime;
-
+ /**
+ * 鎶ヨ鎬绘暟
+ */
+ private Integer total;
+ /**
+ * 鏈鎶ヨ鏁伴噺
+ */
+ private Integer count;
}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/mapper/ArdAlarmTubeMapper.java b/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/mapper/ArdAlarmTubeMapper.java
index 3347f00..86c0041 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/mapper/ArdAlarmTubeMapper.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/mapper/ArdAlarmTubeMapper.java
@@ -1,7 +1,10 @@
package com.ruoyi.alarm.tubeAlarm.mapper;
import java.util.List;
+
+import com.ruoyi.alarm.stealAlarm.domain.ArdAlarmStealelec;
import com.ruoyi.alarm.tubeAlarm.domain.ArdAlarmTube;
+import org.apache.ibatis.annotations.Param;
/**
@@ -59,4 +62,7 @@
* @return 缁撴灉
*/
public int deleteArdAlarmTubeByIds(String[] ids);
+
+ public List<ArdAlarmTube> selectListAllByCommand(@Param("refreshTime")String refreshTime);
+ public int updateViewTimeByTubeId(@Param("tubeId")String tubeId,@Param("alarmTime") String alarmTime,@Param("viewTime") String viewTime);
}
diff --git a/ard-work/src/main/resources/mapper/alarm/ArdAlarmTubeMapper.xml b/ard-work/src/main/resources/mapper/alarm/ArdAlarmTubeMapper.xml
index 07e5183..dcc4c42 100644
--- a/ard-work/src/main/resources/mapper/alarm/ArdAlarmTubeMapper.xml
+++ b/ard-work/src/main/resources/mapper/alarm/ArdAlarmTubeMapper.xml
@@ -129,4 +129,31 @@
#{id}
</foreach>
</delete>
+ <select id="selectListAllByCommand" resultMap="ArdAlarmTubeResult">
+ SELECT T.*
+ FROM (
+ SELECT aat.ID,
+ aat.tube_id,
+ aat.tube_name,
+ aat.alarm_time,
+ aat.longitude,
+ aat.latitude,
+ aat.altitude,
+ ROW_NUMBER() OVER ( PARTITION BY aat.tube_id ORDER BY aat.alarm_time DESC ) AS rn,
+ COUNT(CASE WHEN aat.view_time IS NULL THEN 1 END) OVER ( PARTITION BY aat.tube_id ) AS COUNT,
+ COUNT ( aat.alarm_time ) OVER ( PARTITION BY tube_id ) AS total
+ FROM
+ ard_alarm_tube aat
+ WHERE
+ aat.alarm_time >= ( CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE )
+ ) T
+ WHERE T.rn = 1
+ </select>
+ <update id="updateViewTimeByTubeId" parameterType="String">
+ update ard_alarm_tube
+ set view_time=#{viewTime}
+ where tube_id = #{tubeId}
+ and alarm_time<=#{alarmTime}
+ and view_time is null
+ </update>
</mapper>
\ No newline at end of file
diff --git a/ard-work/src/main/resources/mapper/stealAlarm/ArdAlarmStealelecMapper.xml b/ard-work/src/main/resources/mapper/stealAlarm/ArdAlarmStealelecMapper.xml
index bfc4dcf..0e2a338 100644
--- a/ard-work/src/main/resources/mapper/stealAlarm/ArdAlarmStealelecMapper.xml
+++ b/ard-work/src/main/resources/mapper/stealAlarm/ArdAlarmStealelecMapper.xml
@@ -40,7 +40,7 @@
</if>
</where>
</select>
- <select id="selectAllByCommandArdAlarmStealelecList" resultMap="BaseResultMap">
+ <select id="selectListAllByCommand" resultMap="BaseResultMap">
SELECT T.*
FROM (
SELECT aas.ID,
--
Gitblit v1.9.3