From 742b6bbac1b4609386817a6e6fb489ec098a5490 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期二, 21 一月 2025 18:29:44 +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