From 2e9ac6878d3d7a59c200be7d74811c89dadf3a44 Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期六, 06 一月 2024 10:22:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml |   83 +++++++++++++++++++++++++++--------------
 1 files changed, 55 insertions(+), 28 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 df83fbb..ef5aef9 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml
@@ -160,6 +160,11 @@
         , (SELECT @i:=0) AS itable
     <where>
       AND ic.operateType = 1
+
+      <if test = "id != null and id > 0">
+        AND con.id = ${id}
+      </if>
+
       <if test = "controllerCode != null and controllerCode !=''">
         AND con.code like CONCAT('%',#{controllerCode},'%')
       </if>
@@ -178,36 +183,58 @@
   <select id="getControllers" resultType="com.dy.pipIrrGlobal.voPr.VoController">
     SELECT
         (@i:=@i+1) AS id,
-        con.code AS controllerCode,
-        (CASE
-            WHEN con.onlineState = 1 THEN "鍦ㄧ嚎"
-            WHEN con.onlineState = 2 THEN "绂荤嚎"
-        END) AS onlineState,
-        inta.name AS intakeName,
-        (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) AS bindNumber,
-        con.reportTime
-    FROM pr_controller con
-        INNER JOIN pr_intake_controller ic ON ic.controllerId = con.id
-        INNER JOIN pr_intake inta ON ic.intakeId = inta.id
-        , (SELECT @i:=0) AS itable
-    <where>
-      AND ic.operateType = 1
-      <if test = "controllerCode != null and controllerCode !=''">
-        AND con.code like CONCAT('%',#{controllerCode},'%')
-      </if>
+        t.* FROM(
+          SELECT
+            con.code AS controllerCode,
+            (CASE
+                WHEN con.onlineState = 1 THEN "鍦ㄧ嚎"
+                WHEN con.onlineState = 2 THEN "绂荤嚎"
+            END) AS onlineState,
+            inta.name AS intakeName,
+            (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) AS bindNumber,
+            con.reportTime
+          FROM pr_controller con
+            INNER JOIN pr_intake_controller ic ON ic.controllerId = con.id
+            INNER JOIN pr_intake inta ON ic.intakeId = inta.id
+          <where>
+            AND ic.operateType = 1
 
-      <if test = "onlineState != null and onlineState > 0">
-        AND con.onlineState = ${onlineState}
-      </if>
+            <if test = "id != null and id > 0">
+              AND con.id = ${id}
+            </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>
-    </where>
-    ORDER BY con.operateDt DESC
-    <if test="pageCurr != null and pageSize != null">
-      LIMIT ${pageCurr}, ${pageSize}
-    </if>
+            <if test = "controllerCode != null and controllerCode !=''">
+              AND con.code like CONCAT('%',#{controllerCode},'%')
+            </if>
 
+            <if test = "onlineState != null and onlineState > 0">
+              AND con.onlineState = ${onlineState}
+            </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>
+          </where>
+          ORDER BY con.operateDt DESC
+          <if test="pageCurr != null and pageSize != null">
+            LIMIT ${pageCurr}, ${pageSize}
+          </if>
+        ) t
+    , (SELECT @i:=0) AS itable
+  </select>
+
+  <!--鏍规嵁鎺у埗鍣ㄧ紪鍙疯幏鍙栨帶鍒跺櫒鍒楄〃-->
+  <select id="getControllersByCode" resultType="java.util.Map">
+    SELECT id, code FROM pr_controller WHERE code LIKE CONCAT('%',#{controllerCode},'%')
+  </select>
+
+  <!--鏍规嵁鎺у埗鍣ㄧ紪鍙烽�昏緫鍒犻櫎鎺у埗-->
+  <update id="deleteControllerById">
+    UPDATE pr_controller SET deleted = 1 WHERE id = ${controllerId}
+  </update>
+
+  <!--鏍规嵁鎺у埗鍣ㄧ紪鍙疯幏鍙栨湭鍒犻櫎鐨勬帶鍒跺櫒鏁伴噺-->
+  <select id="getRecordCountOfController" resultType="java.lang.Integer">
+    SELECT COUNT(*) AS recordCount FROM pr_controller WHERE deleted = 0 AND id = ${controllerId}
   </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0