From 95e2f4d9b37f4fd7e99d67976a811fba79427a3e Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期二, 21 一月 2025 14:37:45 +0800 Subject: [PATCH] 通信中间件,重新编写下发命令是否可执行的判断逻辑 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml | 62 ++++++++++++++++++++---------- 1 files changed, 41 insertions(+), 21 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml index efdb807..6c5d694 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml @@ -553,30 +553,50 @@ </if> </trim> </select> + <!--鑾峰彇鎸囧畾鏃堕棿娈靛唴浠庢湭寮�杩囬榾鐨勫彇姘村彛鏁伴噺--> <select id="getNeverOpenValveIntakesCount" resultType="java.lang.Long"> SELECT COUNT(*) AS recordCount FROM pr_intake inta - INNER JOIN ba_block blo ON blo.id = inta.blockId - WHERE inta.deleted = 0 - AND NOT EXISTS(SELECT * - FROM rm_open_close_valve_history - WHERE op_dt BETWEEN #{timeStart} AND #{timeStop} - AND intake_id = inta.id) + LEFT JOIN + (SELECT intake_id FROM rm_open_close_valve_history + <where> + <if test = "idStart != null"> + id <![CDATA[>=]]> #{idStart} + </if> + <if test = "idEnd != null"> + AND id <![CDATA[<=]]> #{idEnd} + </if> + </where>) his + ON his.intake_id = inta.id + LEFT JOIN ba_block blo ON blo.id = inta.blockId + LEFT JOIN pr_controller pct ON inta.id = pct.intakeId + WHERE his.intake_id IS NULL AND inta.deleted = 0 </select> <!--鑾峰彇鎸囧畾鏃堕棿娈靛唴浠庢湭寮�杩囬榾鐨勫彇姘村彛--> - <select id="getNeverOpenValveIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntake"> - SELECT inta.id AS intakeId, - inta.name AS intakeNum, - blo.name AS blockName + <select id="getNeverOpenValveIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeUnOpenValve"> + SELECT inta.id AS intakeId, + inta.name AS intakeNum, + inta.lng AS lng, + inta.lat AS lat, + blo.name AS blockName, + pct.rtuAddr AS rtuAddr FROM pr_intake inta - INNER JOIN ba_block blo ON blo.id = inta.blockId - WHERE inta.deleted = 0 - AND NOT EXISTS(SELECT * - FROM rm_open_close_valve_history - WHERE op_dt BETWEEN #{timeStart} AND #{timeStop} - AND intake_id = inta.id) - ORDER BY inta.id + LEFT JOIN + (SELECT intake_id FROM rm_open_close_valve_history + <where> + <if test = "idStart != null"> + id <![CDATA[>=]]> #{idStart} + </if> + <if test = "idEnd != null"> + AND id <![CDATA[<=]]> #{idEnd} + </if> + </where>) his + ON his.intake_id = inta.id + LEFT JOIN ba_block blo ON blo.id = inta.blockId + LEFT JOIN pr_controller pct ON inta.id = pct.intakeId + WHERE his.intake_id IS NULL AND inta.deleted = 0 + ORDER BY inta.id DESC <trim prefix="limit "> <if test="start != null and count != null"> #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} @@ -591,7 +611,7 @@ inta.name AS intakeNum, blo.name AS blockName FROM pr_intake inta - LEFT JOIN (SELECT intake_id + INNER JOIN (SELECT intake_id FROM rm_open_close_valve_history WHERE id <![CDATA[>=]]> #{idStart} AND id <![CDATA[<=]]> #{idEnd} ) his ON his.intake_id = inta.id @@ -609,7 +629,7 @@ inta.lat AS lat, blo.name AS blockName FROM pr_intake inta - LEFT JOIN(SELECT intake_id + INNER JOIN(SELECT intake_id FROM rm_open_close_valve_history WHERE id <![CDATA[>=]]> #{idStart} AND id <![CDATA[<=]]> #{idEnd} ) his ON his.intake_id = inta.id @@ -633,7 +653,7 @@ inta.name AS intakeNum, blo.name AS blockName FROM pr_intake inta - LEFT JOIN (SELECT intake_id + INNER JOIN (SELECT intake_id FROM rm_open_close_valve_history WHERE id <![CDATA[>=]]> #{idStart} AND id <![CDATA[<=]]> #{idEnd} ) his ON his.intake_id = inta.id @@ -651,7 +671,7 @@ inta.lat AS lat, blo.name AS blockName FROM pr_intake inta - LEFT JOIN(SELECT intake_id + INNER JOIN(SELECT intake_id FROM rm_open_close_valve_history WHERE id <![CDATA[>=]]> #{idStart} AND id <![CDATA[<=]]> #{idEnd} ) his ON his.intake_id = inta.id -- Gitblit v1.8.0