From e9e91d14c9436b29292054e3de0445dbb7d8601c Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期三, 12 六月 2024 09:17:14 +0800
Subject: [PATCH] 修改 检测控制取水口列表 增加排序asc

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml |  182 ++++++++++++++++++++++++++-------------------
 1 files changed, 106 insertions(+), 76 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 1668e2d..c0f940b 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml
@@ -5,26 +5,32 @@
     <!--@mbg.generated-->
     <!--@Table pr_controller-->
     <id column="id" jdbcType="BIGINT" property="id" />
-    <result column="rtuAddr" jdbcType="VARCHAR" property="rtuaddr" />
+    <result column="intakeId" jdbcType="BIGINT" property="intakeId" />
+    <result column="rtuAddr" jdbcType="VARCHAR" property="rtuAddr" />
     <result column="protocol" jdbcType="VARCHAR" property="protocol" />
-    <result column="onlineState" jdbcType="TINYINT" property="onlinestate" />
-    <result column="reportTime" jdbcType="TIMESTAMP" property="reporttime" />
-    <result column="addWays" jdbcType="TINYINT" property="addways" />
+    <result column="findDt" jdbcType="TIMESTAMP" property="findDt" />
+    <result column="addWays" jdbcType="TINYINT" property="addWays" />
     <result column="operator" jdbcType="BIGINT" property="operator" />
-    <result column="operateDt" jdbcType="TIMESTAMP" property="operatedt" />
+    <result column="operateDt" jdbcType="TIMESTAMP" property="operateDt" />
     <result column="deleted" jdbcType="TINYINT" property="deleted" />
   </resultMap>
+  <resultMap id="PartResultMap" type="com.dy.pipIrrGlobal.pojoPr.PrController">
+    <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="intakeId" jdbcType="BIGINT" property="intakeId" />
+    <result column="rtuAddr" jdbcType="VARCHAR" property="rtuAddr" />
+  </resultMap>
+
   <sql id="Base_Column_List">
     <!--@mbg.generated-->
-    id, rtuAddr, protocol, onlineState, reportTime, addWays, `operator`, operateDt, deleted
+    id, intakeId, rtuAddr, protocol, findDt, addWays, `operator`, operateDt, deleted
   </sql>
   <sql id="Part_Column_List">
     <!--@mbg.generated-->
-    id, rtuAddr
+    id, rtuAddr, intakeId
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
-    select 
+    select
     <include refid="Base_Column_List" />
     from pr_controller
     where id = #{id,jdbcType=BIGINT}
@@ -36,13 +42,13 @@
   </delete>
   <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoPr.PrController">
     <!--@mbg.generated-->
-    insert into pr_controller (id, rtuAddr, protocol, 
-      onlineState, reportTime, addWays, 
+    insert into pr_controller (id, intakeId, rtuAddr,
+      protocol, findDt, addWays,
       `operator`, operateDt, deleted
       )
-    values (#{id,jdbcType=BIGINT}, #{rtuaddr,jdbcType=VARCHAR}, #{protocol,jdbcType=VARCHAR}, 
-      #{onlinestate,jdbcType=TINYINT}, #{reporttime,jdbcType=TIMESTAMP}, #{addways,jdbcType=TINYINT}, 
-      #{operator,jdbcType=BIGINT}, #{operatedt,jdbcType=TIMESTAMP}, #{deleted,jdbcType=TINYINT}
+    values (#{id,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT}, #{rtuAddr,jdbcType=VARCHAR},
+      #{protocol,jdbcType=VARCHAR}, #{findDt,jdbcType=TIMESTAMP}, #{addWays,jdbcType=TINYINT},
+      #{operator,jdbcType=BIGINT}, #{operateDt,jdbcType=TIMESTAMP}, #{deleted,jdbcType=TINYINT}
       )
   </insert>
   <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrController">
@@ -52,25 +58,25 @@
       <if test="id != null">
         id,
       </if>
-      <if test="rtuaddr != null">
+      <if test="intakeId != null">
+        intakeId,
+      </if>
+      <if test="rtuAddr != null">
         rtuAddr,
       </if>
       <if test="protocol != null">
         protocol,
       </if>
-      <if test="onlinestate != null">
-        onlineState,
+      <if test="findDt != null">
+        findDt,
       </if>
-      <if test="reporttime != null">
-        reportTime,
-      </if>
-      <if test="addways != null">
+      <if test="addWays != null">
         addWays,
       </if>
       <if test="operator != null">
         `operator`,
       </if>
-      <if test="operatedt != null">
+      <if test="operateDt != null">
         operateDt,
       </if>
       <if test="deleted != null">
@@ -81,26 +87,26 @@
       <if test="id != null">
         #{id,jdbcType=BIGINT},
       </if>
-      <if test="rtuaddr != null">
-        #{rtuaddr,jdbcType=VARCHAR},
+      <if test="intakeId != null">
+        #{intakeId,jdbcType=BIGINT},
+      </if>
+      <if test="rtuAddr != null">
+        #{rtuAddr,jdbcType=VARCHAR},
       </if>
       <if test="protocol != null">
         #{protocol,jdbcType=VARCHAR},
       </if>
-      <if test="onlinestate != null">
-        #{onlinestate,jdbcType=TINYINT},
+      <if test="findDt != null">
+        #{findDt,jdbcType=TIMESTAMP},
       </if>
-      <if test="reporttime != null">
-        #{reporttime,jdbcType=TIMESTAMP},
-      </if>
-      <if test="addways != null">
-        #{addways,jdbcType=TINYINT},
+      <if test="addWays != null">
+        #{addWays,jdbcType=TINYINT},
       </if>
       <if test="operator != null">
         #{operator,jdbcType=BIGINT},
       </if>
-      <if test="operatedt != null">
-        #{operatedt,jdbcType=TIMESTAMP},
+      <if test="operateDt != null">
+        #{operateDt,jdbcType=TIMESTAMP},
       </if>
       <if test="deleted != null">
         #{deleted,jdbcType=TINYINT},
@@ -111,26 +117,26 @@
     <!--@mbg.generated-->
     update pr_controller
     <set>
-      <if test="rtuaddr != null">
-        rtuAddr = #{rtuaddr,jdbcType=VARCHAR},
+      <if test="intakeId != null">
+        intakeId = #{intakeId,jdbcType=BIGINT},
+      </if>
+      <if test="rtuAddr != null">
+        rtuAddr = #{rtuAddr,jdbcType=VARCHAR},
       </if>
       <if test="protocol != null">
         protocol = #{protocol,jdbcType=VARCHAR},
       </if>
-      <if test="onlinestate != null">
-        onlineState = #{onlinestate,jdbcType=TINYINT},
+      <if test="findDt != null">
+        findDt = #{findDt,jdbcType=TIMESTAMP},
       </if>
-      <if test="reporttime != null">
-        reportTime = #{reporttime,jdbcType=TIMESTAMP},
-      </if>
-      <if test="addways != null">
-        addWays = #{addways,jdbcType=TINYINT},
+      <if test="addWays != null">
+        addWays = #{addWays,jdbcType=TINYINT},
       </if>
       <if test="operator != null">
         `operator` = #{operator,jdbcType=BIGINT},
       </if>
-      <if test="operatedt != null">
-        operateDt = #{operatedt,jdbcType=TIMESTAMP},
+      <if test="operateDt != null">
+        operateDt = #{operateDt,jdbcType=TIMESTAMP},
       </if>
       <if test="deleted != null">
         deleted = #{deleted,jdbcType=TINYINT},
@@ -141,26 +147,31 @@
   <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoPr.PrController">
     <!--@mbg.generated-->
     update pr_controller
-    set rtuAddr = #{rtuaddr,jdbcType=VARCHAR},
+    set intakeId = #{intakeId,jdbcType=BIGINT},
+      rtuAddr = #{rtuAddr,jdbcType=VARCHAR},
       protocol = #{protocol,jdbcType=VARCHAR},
-      onlineState = #{onlinestate,jdbcType=TINYINT},
-      reportTime = #{reporttime,jdbcType=TIMESTAMP},
-      addWays = #{addways,jdbcType=TINYINT},
+      findDt = #{findDt,jdbcType=TIMESTAMP},
+      addWays = #{addWays,jdbcType=TINYINT},
       `operator` = #{operator,jdbcType=BIGINT},
-      operateDt = #{operatedt,jdbcType=TIMESTAMP},
+      operateDt = #{operateDt,jdbcType=TIMESTAMP},
       deleted = #{deleted,jdbcType=TINYINT}
     where id = #{id,jdbcType=BIGINT}
   </update>
 
-  <!--鏍规嵁鎸囧畾鑾峰彇鎺у埗鍣ㄨ褰曟暟-->
+  <!--鏍规嵁鎺у埗鍣ㄧ紪鍙峰垹闄ゅ彇姘村彛缂栧彿-->
+  <update id="deleteIntakeId">
+    UPDATE pr_controller SET intakeId = null WHERE id = ${controllerId}
+  </update>
+
+  <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鎺у埗鍣ㄨ褰曟暟-->
   <select id="getRecordCount" resultType="java.lang.Long">
     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 ic.intakeId = inta.id
+        LEFT JOIN pr_intake_controller ic ON ic.controllerId = con.id
+        INNER JOIN pr_intake inta ON con.intakeId = inta.id
     <where>
-      AND ic.operateType = 1
+      AND con.deleted = 0
 
       <if test = "id != null and id > 0">
         AND con.id = ${id}
@@ -168,10 +179,6 @@
 
       <if test = "rtuAddr != null and rtuAddr !=''">
         AND con.rtuAddr like CONCAT('%',#{rtuAddr},'%')
-      </if>
-
-      <if test = "onlineState != null and onlineState > 0">
-        AND con.onlineState = ${onlineState}
       </if>
 
       <if test = "bindNumber != null and bindNumber > 0">
@@ -180,22 +187,20 @@
     </where>
   </select>
 
-  <!--鏍规嵁鎸囧畾鑾峰彇鎺у埗鍣ㄨ褰�-->
+  <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鎺у埗鍣ㄨ褰�-->
   <select id="getControllers" resultType="com.dy.pipIrrGlobal.voPr.VoController">
     SELECT
+        CAST(con.id AS char) AS id,
         con.rtuAddr AS rtuAddr,
-        (CASE
-            WHEN con.onlineState = 1 THEN "鍦ㄧ嚎"
-            WHEN con.onlineState = 2 THEN "绂荤嚎"
-        END) AS onlineState,
         inta.name AS intakeName,
+        "鍦ㄧ嚎" AS onlineState,
         (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) AS bindNumber,
-        con.reportTime
+        con.findDt AS findDt
     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
+        LEFT JOIN pr_intake_controller ic ON ic.controllerId = con.id
+        INNER JOIN pr_intake inta ON con.intakeId = inta.id
     <where>
-      AND ic.operateType = 1
+      AND con.deleted = 0
 
       <if test = "id != null and id > 0">
         AND con.id = ${id}
@@ -203,10 +208,6 @@
 
       <if test = "rtuAddr != null and rtuAddr !=''">
         AND con.rtuAddr like CONCAT('%',#{rtuAddr},'%')
-      </if>
-
-      <if test = "onlineState != null and onlineState > 0">
-        AND con.onlineState = ${onlineState}
       </if>
 
       <if test = "bindNumber != null and bindNumber > 0">
@@ -214,15 +215,24 @@
       </if>
     </where>
     ORDER BY con.operateDt DESC
-    <if test="pageCurr != null and pageSize != null">
-      LIMIT ${pageCurr}, ${pageSize}
-    </if>
-
+    <trim prefix="limit " >
+      <if test="start != null and count != null">
+        #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+      </if>
+    </trim>
   </select>
 
-  <!--鏍规嵁鎺у埗鍣ㄧ紪鍙疯幏鍙栨帶鍒跺櫒鍒楄〃-->
-  <select id="getControllersByCode" resultType="java.util.Map">
-    SELECT id, rtuAddr FROM pr_controller WHERE rtuAddr LIKE CONCAT('%',#{rtuAddr},'%')
+  <!--鏍规嵁鎺у埗鍣ㄥ湴鍧�鑾峰彇鎺у埗鍣ㄥ垪琛�-->
+  <select id="getControllersByAddr" resultType="java.util.Map">
+    SELECT id, rtuAddr FROM pr_controller WHERE deleted = 0 AND rtuAddr LIKE CONCAT('%',#{rtuAddr},'%')
+  </select>
+
+  <!--鏍规嵁鎺у埗鍣ㄥ湴鍧�鑾峰彇鎺у埗鍣ㄥ垪琛�-->
+  <select id="getControllersByRtuAddrAndIntakeNotNull" parameterType="java.lang.String" resultMap="PartResultMap">
+    SELECT
+    <include refid="Part_Column_List">
+    </include>
+    FROM pr_controller WHERE deleted = 0 AND intakeId is not null AND rtuAddr=#{rtuAddr,jdbcType=VARCHAR}
   </select>
 
   <!--鏍规嵁鎺у埗鍣ㄧ紪鍙烽�昏緫鍒犻櫎鎺у埗-->
@@ -234,4 +244,24 @@
   <select id="getRecordCountOfController" resultType="java.lang.Integer">
     SELECT COUNT(*) AS recordCount FROM pr_controller WHERE deleted = 0 AND id = ${controllerId}
   </select>
+
+  <!--鏍规嵁娴佹氮鎺у埗鍣ㄧ紪鍙疯幏鍙栧凡缁戝畾璁板綍鏁�-->
+  <select id="getBindedCount" resultType="java.lang.Integer">
+    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="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