From ac0aa84320c8988bd1bf222a5cb3d3ea484669de Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期四, 11 七月 2024 20:14:58 +0800
Subject: [PATCH] 修改片区备注、区域着色 字段长度限制可以为0
---
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml | 59 +++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 41 insertions(+), 18 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml
index 928d0a5..a663b66 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml
@@ -168,20 +168,28 @@
SELECT
COUNT(*) AS recordCount
FROM pr_controller con
- INNER JOIN pr_intake_controller ic ON ic.controllerId = con.id
- INNER JOIN pr_intake inta ON con.intakeId = inta.id
+ LEFT JOIN pr_intake_controller ic ON ic.controllerId = con.id
+ INNER JOIN pr_intake inta ON con.intakeId = inta.id
+ left JOIN JSON_TABLE(
+ <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',-->
+ #{onLineMap},
+ '$[*]' COLUMNS(
+ rtuAddr VARCHAR(20) PATH '$.rtuAddr',
+ isOnLine BOOLEAN PATH '$.isOnLine'
+ )
+ ) rtus ON con.rtuAddr = rtus.rtuAddr
<where>
- AND ic.operateType = 1
AND con.deleted = 0
<if test = "id != null and id > 0">
AND con.id = ${id}
</if>
-
<if test = "rtuAddr != null and rtuAddr !=''">
AND con.rtuAddr like CONCAT('%',#{rtuAddr},'%')
</if>
-
+ <if test="isOnLine != null and isOnLine !='' ">
+ AND rtus.isOnLine = #{isOnLine}
+ </if>
<if test = "bindNumber != null and bindNumber > 0">
AND (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) = ${bindNumber}
</if>
@@ -194,24 +202,34 @@
CAST(con.id AS char) AS id,
con.rtuAddr AS rtuAddr,
inta.name AS intakeName,
- "鍦ㄧ嚎" AS onlineState,
+ con.protocol,
+ inta.remarks,
+ rtus.isOnLine,
(SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) AS bindNumber,
con.findDt AS findDt
FROM pr_controller con
- INNER JOIN pr_intake_controller ic ON ic.controllerId = con.id
+ LEFT JOIN pr_intake_controller ic ON ic.controllerId = con.id
INNER JOIN pr_intake inta ON con.intakeId = inta.id
+ left JOIN JSON_TABLE(
+ <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',-->
+ #{onLineMap},
+ '$[*]' COLUMNS(
+ rtuAddr VARCHAR(20) PATH '$.rtuAddr',
+ isOnLine BOOLEAN PATH '$.isOnLine'
+ )
+ ) rtus ON con.rtuAddr = rtus.rtuAddr
<where>
- AND ic.operateType = 1
AND con.deleted = 0
<if test = "id != null and id > 0">
AND con.id = ${id}
</if>
-
<if test = "rtuAddr != null and rtuAddr !=''">
AND con.rtuAddr like CONCAT('%',#{rtuAddr},'%')
</if>
-
+ <if test="isOnLine != null and isOnLine !='' ">
+ AND rtus.isOnLine = #{isOnLine}
+ </if>
<if test = "bindNumber != null and bindNumber > 0">
AND (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) = ${bindNumber}
</if>
@@ -252,13 +270,18 @@
SELECT COUNT(*) AS recordCount FROM pr_controller WHERE rtuAddr = (SELECT rtuAddr FROM pr_controller_tramp WHERE id = ${controllerId}) AND intakeId IS NOT NULL
</select>
- <!--鏍规嵁鍙栨按鍙D鑾峰彇闃�鎺у櫒瀵硅薄-->
- <select id="getControllerByIntakeId" resultType="com.dy.pipIrrGlobal.pojoPr.PrController">
- SELECT * FROM pr_controller WHERE deleted = 0 AND intakeId = #{intakeId} LIMIT 0,1
- </select>
-
- <!--鏍规嵁RTU鍦板潃鑾峰彇闃�鎺у櫒瀵硅薄-->
- <select id="getControllerByRtuAddr" resultType="com.dy.pipIrrGlobal.pojoPr.PrController">
- SELECT * FROM pr_controller WHERE deleted = 0 AND rtuAddr = #{rtuAddr} LIMIT 0,1
+ <!--鏍规嵁鍙栨按鍙D鎴栭榾鎺у櫒鍦板潃鑾峰彇闃�鎺у櫒瀵硅薄-->
+ <select id="getRtu" resultType="com.dy.pipIrrGlobal.pojoPr.PrController">
+ SELECT * FROM pr_controller
+ <where>
+ AND deleted = 0
+ <if test = "intakeId != null">
+ AND intakeId = #{intakeId}
+ </if>
+ <if test = "rtuAddr != null">
+ AND rtuAddr = #{rtuAddr}
+ </if>
+ </where>
+ LIMIT 0,1
</select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0