| | |
| | | #{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> |
| | | <select id="selectCountByStartTime" resultType="Integer"> |
| | | SELECT COUNT(DISTINCT aat.tube_id) |
| | | FROM ard_alarm_tube aat |
| | | WHERE aat.alarm_time >= CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE |
| | | </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> |