‘liusuyi’
2023-08-17 fb85b1053475a90d902f1dcfd1f1c24b368eabac
ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMapper.xml
@@ -2,7 +2,7 @@
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.alarm.radarAlarm.mapper.ArdAlarmRadarMapper">
<mapper namespace="com.ruoyi.alarm.radar.mapper.ArdAlarmRadarMapper">
    <resultMap type="ArdAlarmRadar" id="ArdAlarmRadarResult">
        <result property="id" column="id"/>
        <result property="name" column="name"/>
@@ -128,27 +128,28 @@
    </delete>
    <select id="selectListAllByCommand" resultMap="ArdAlarmRadarResult">
        SELECT T
                   .*
        FROM (
                 SELECT aar.ID,
                        aar.target_id,
                        aar.NAME,
                        aar.alarm_type,
                        aar.alarm_time,
                        aar.longitude,
                        aar.latitude,
                        ROW_NUMBER() OVER ( PARTITION BY aar.NAME ORDER BY aar.alarm_time DESC ) AS rn, COUNT(CASE WHEN aar.view_time IS NULL THEN 1 END) OVER ( PARTITION BY aar.NAME ) AS COUNT,
      COUNT ( aar.alarm_time ) OVER ( PARTITION BY aar.NAME ) AS total
                 FROM
                     ard_alarm_radar aar
                 WHERE
                     aar.alarm_time >= ( CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE )
                   AND aar.alarm_type = #{alarmType}
                 ORDER BY
                     aar.alarm_time DESC
             ) T
        WHERE T.rn = 1
                select aaar.ID,
               aaar.target_id,
               aaar.NAME,
               aaar.alarm_type,
               aaar.alarm_time,
               aaar.longitude,
               aaar.latitude,
               r.COUNT,
               r.total  from
            (SELECT
                 aar.NAME,
                 max(aar.create_time) as create_time1,
                 count(case when aar.view_time is null THEN 1  END) as count,
                count(aar.id) as total
             FROM
                 ard_alarm_radar aar
             WHERE
                 aar.create_time >= ( CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE )
               AND aar.alarm_type = #{alarmType}
             GROUP BY aar.NAME
            ) r
                INNER JOIN ard_alarm_radar aaar ON r.create_time1 = aaar.create_time
    </select>
    <select id="selectCountByAlarmTime" resultType="Integer">
        SELECT COUNT(DISTINCT aar.name)