奉贤 alarm topic接入

This commit is contained in:
2025-09-23 13:59:45 +08:00
parent a5f1444984
commit 8e8c57cb64
14 changed files with 593 additions and 15 deletions

View File

@ -0,0 +1,100 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xzzn.ems.mapper.EmsAlarmMatchDataMapper">
<resultMap type="EmsAlarmMatchData" id="EmsAlarmMatchDataResult">
<result property="id" column="id" />
<result property="point" column="point" />
<result property="alarmData" column="alarm_data" />
<result property="alarmDescription" column="alarm_description" />
<result property="siteId" column="site_id" />
<result property="deviceCategory" column="device_category" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
</resultMap>
<sql id="selectEmsAlarmMatchDataVo">
select id, point, alarm_data, alarm_description, site_id, device_category, create_by, create_time, update_by, update_time, remark from ems_alarm_match_data
</sql>
<select id="selectEmsAlarmMatchDataList" parameterType="EmsAlarmMatchData" resultMap="EmsAlarmMatchDataResult">
<include refid="selectEmsAlarmMatchDataVo"/>
<where>
<if test="point != null and point != ''"> and point = #{point}</if>
<if test="alarmData != null "> and alarm_data = #{alarmData}</if>
<if test="alarmDescription != null and alarmDescription != ''"> and alarm_description = #{alarmDescription}</if>
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
<if test="deviceCategory != null and deviceCategory != ''"> and device_category = #{deviceCategory}</if>
</where>
</select>
<select id="selectEmsAlarmMatchDataById" parameterType="Long" resultMap="EmsAlarmMatchDataResult">
<include refid="selectEmsAlarmMatchDataVo"/>
where id = #{id}
</select>
<insert id="insertEmsAlarmMatchData" parameterType="EmsAlarmMatchData" useGeneratedKeys="true" keyProperty="id">
insert into ems_alarm_match_data
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="point != null">point,</if>
<if test="alarmData != null">alarm_data,</if>
<if test="alarmDescription != null">alarm_description,</if>
<if test="siteId != null">site_id,</if>
<if test="deviceCategory != null">device_category,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="remark != null">remark,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="point != null">#{point},</if>
<if test="alarmData != null">#{alarmData},</if>
<if test="alarmDescription != null">#{alarmDescription},</if>
<if test="siteId != null">#{siteId},</if>
<if test="deviceCategory != null">#{deviceCategory},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="remark != null">#{remark},</if>
</trim>
</insert>
<update id="updateEmsAlarmMatchData" parameterType="EmsAlarmMatchData">
update ems_alarm_match_data
<trim prefix="SET" suffixOverrides=",">
<if test="point != null">point = #{point},</if>
<if test="alarmData != null">alarm_data = #{alarmData},</if>
<if test="alarmDescription != null">alarm_description = #{alarmDescription},</if>
<if test="siteId != null">site_id = #{siteId},</if>
<if test="deviceCategory != null">device_category = #{deviceCategory},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteEmsAlarmMatchDataById" parameterType="Long">
delete from ems_alarm_match_data where id = #{id}
</delete>
<delete id="deleteEmsAlarmMatchDataByIds" parameterType="String">
delete from ems_alarm_match_data where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
<select id="getAllMatchInfo" resultType="java.util.Map">
select point,alarm_description as description from ems_alarm_match_data GROUP BY point,alarm_description
</select>
</mapper>

View File

@ -11,6 +11,7 @@
<result property="alarmContent" column="alarm_content" />
<result property="alarmStartTime" column="alarm_start_time" />
<result property="alarmEndTime" column="alarm_end_time" />
<result property="alarmPoint" column="alarm_point" />
<result property="status" column="status" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
@ -23,7 +24,7 @@
</resultMap>
<sql id="selectEmsAlarmRecordsVo">
select id, device_type, alarm_level, alarm_content, alarm_start_time, alarm_end_time, status, create_by, create_time, update_by, update_time, remark, site_id, device_id, ticket_no from ems_alarm_records
select id, device_type, alarm_level, alarm_content, alarm_start_time, alarm_end_time, alarm_point, status, create_by, create_time, update_by, update_time, remark, site_id, device_id, ticket_no from ems_alarm_records
</sql>
<select id="selectEmsAlarmRecordsList" parameterType="EmsAlarmRecords" resultMap="EmsAlarmRecordsResult">
@ -34,6 +35,7 @@
<if test="alarmContent != null and alarmContent != ''"> and alarm_content = #{alarmContent}</if>
<if test="alarmStartTime != null "> and alarm_start_time = #{alarmStartTime}</if>
<if test="alarmEndTime != null "> and alarm_end_time = #{alarmEndTime}</if>
<if test="alarmPoint != null and alarmPoint != ''"> and alarm_point = #{alarmPoint}</if>
<if test="status != null and status != ''"> and status = #{status}</if>
<if test="siteId != null and siteId != ''"> and site_id = #{siteId}</if>
<if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if>
@ -54,6 +56,7 @@
<if test="alarmContent != null">alarm_content,</if>
<if test="alarmStartTime != null">alarm_start_time,</if>
<if test="alarmEndTime != null">alarm_end_time,</if>
<if test="alarmPoint != null">alarm_point,</if>
<if test="status != null">status,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
@ -70,6 +73,7 @@
<if test="alarmContent != null">#{alarmContent},</if>
<if test="alarmStartTime != null">#{alarmStartTime},</if>
<if test="alarmEndTime != null">#{alarmEndTime},</if>
<if test="alarmPoint != null">#{alarmPoint},</if>
<if test="status != null">#{status},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
@ -90,6 +94,7 @@
<if test="alarmContent != null">alarm_content = #{alarmContent},</if>
<if test="alarmStartTime != null">alarm_start_time = #{alarmStartTime},</if>
<if test="alarmEndTime != null">alarm_end_time = #{alarmEndTime},</if>
<if test="alarmPoint != null">alarm_point = #{alarmPoint},</if>
<if test="status != null">status = #{status},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
@ -186,4 +191,59 @@
and status = #{status}
limit 1
</select>
<select id="getAllUnfinishedRecords" resultType="com.xzzn.ems.domain.EmsAlarmRecords">
<include refid="selectEmsAlarmRecordsVo"/>
WHERE status <![CDATA[ != ]]> 1
and site_id = #{siteId}
and alarm_point IN
<foreach collection="needUpdateKeys" item="key" open="(" separator="," close=")">
#{key}
</foreach>
</select>
<insert id="batchUpsert">
INSERT into ems_alarm_records (
id,
device_type,
alarm_level,
alarm_content,
alarm_start_time,
alarm_end_time,
alarm_point,
status,
create_by,
create_time,
update_by,
update_time,
remark,
site_id,
device_id,
ticket_no
) values
<foreach collection="recordsList" item="item" separator=",">
(
#{item.id},
#{item.deviceType},
#{item.alarmLevel},
#{item.alarmContent},
#{item.alarmStartTime},
#{item.alarmEndTime},
#{item.alarmPoint},
#{item.status},
#{item.createBy},
#{item.createTime},
#{item.updateBy},
#{item.updateTime},
#{item.remark},
#{item.siteId},
#{item.deviceId},
#{item.ticketNo}
)
</foreach>
on duplicate key update
alarm_end_time = values(alarm_end_time),
status = values(status),
device_id = values(device_id)
</insert>
</mapper>

View File

@ -984,7 +984,7 @@
<select id="getPowerDataByHour" parameterType="com.xzzn.ems.domain.vo.DateSearchRequest" resultType="com.xzzn.ems.domain.vo.PowerStatisListVo">
select latest.dateHour as statisDate,
<include refid="powerFilter"/>
from ( SELECT p.site_id, p.device_id,DATE_FORMAT(p.data_update_time, '%H:00') AS dateHour,MAX(p.data_update_time) as max_update_time
from ( SELECT p.site_id, p.device_id,DATE_FORMAT(p.data_update_time, '%Y-%m-%d %H:00') AS dateHour,MAX(p.data_update_time) as max_update_time
FROM ems_ammeter_data p
<include refid="commonFilter"/>
GROUP BY p.site_id,p.device_id,dateHour