From 48d64c07ea643e1b1199828f6ac36c12c05cd535 Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期一, 15 一月 2024 22:03:46 +0800
Subject: [PATCH] 2024-01-15 朱宝民 优化获取用户信息接口

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml |  139 ++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 122 insertions(+), 17 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 9781e59..d1e61b0 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml
@@ -5,8 +5,10 @@
     <!--@mbg.generated-->
     <!--@Table pr_controller-->
     <id column="id" jdbcType="BIGINT" property="id" />
-    <result column="code" jdbcType="VARCHAR" property="code" />
+    <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="operator" jdbcType="BIGINT" property="operator" />
     <result column="operateDt" jdbcType="TIMESTAMP" property="operatedt" />
@@ -14,7 +16,7 @@
   </resultMap>
   <sql id="Base_Column_List">
     <!--@mbg.generated-->
-    id, code, protocol, addWays, `operator`, operateDt, deleted
+    id, rtuAddr, protocol, onlineState, reportTime, addWays, `operator`, operateDt, deleted
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
@@ -28,17 +30,17 @@
     delete from pr_controller
     where id = #{id,jdbcType=BIGINT}
   </delete>
-
   <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoPr.PrController">
     <!--@mbg.generated-->
-    insert into pr_controller (id, code, protocol, 
-      addWays, `operator`, operateDt, 
-      deleted)
-    values (#{id,jdbcType=BIGINT}, #{code,jdbcType=VARCHAR}, #{protocol,jdbcType=VARCHAR}, 
-      #{addways,jdbcType=TINYINT}, #{operator,jdbcType=BIGINT}, #{operatedt,jdbcType=TIMESTAMP}, 
-      #{deleted,jdbcType=TINYINT})
+    insert into pr_controller (id, rtuAddr, protocol, 
+      onlineState, reportTime, 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}
+      )
   </insert>
-
   <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrController">
     <!--@mbg.generated-->
     insert into pr_controller
@@ -46,11 +48,17 @@
       <if test="id != null">
         id,
       </if>
-      <if test="code != null">
-        code,
+      <if test="rtuaddr != null">
+        rtuAddr,
       </if>
       <if test="protocol != null">
         protocol,
+      </if>
+      <if test="onlinestate != null">
+        onlineState,
+      </if>
+      <if test="reporttime != null">
+        reportTime,
       </if>
       <if test="addways != null">
         addWays,
@@ -69,11 +77,17 @@
       <if test="id != null">
         #{id,jdbcType=BIGINT},
       </if>
-      <if test="code != null">
-        #{code,jdbcType=VARCHAR},
+      <if test="rtuaddr != null">
+        #{rtuaddr,jdbcType=VARCHAR},
       </if>
       <if test="protocol != null">
         #{protocol,jdbcType=VARCHAR},
+      </if>
+      <if test="onlinestate != null">
+        #{onlinestate,jdbcType=TINYINT},
+      </if>
+      <if test="reporttime != null">
+        #{reporttime,jdbcType=TIMESTAMP},
       </if>
       <if test="addways != null">
         #{addways,jdbcType=TINYINT},
@@ -93,11 +107,17 @@
     <!--@mbg.generated-->
     update pr_controller
     <set>
-      <if test="code != null">
-        code = #{code,jdbcType=VARCHAR},
+      <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>
+      <if test="reporttime != null">
+        reportTime = #{reporttime,jdbcType=TIMESTAMP},
       </if>
       <if test="addways != null">
         addWays = #{addways,jdbcType=TINYINT},
@@ -117,12 +137,97 @@
   <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoPr.PrController">
     <!--@mbg.generated-->
     update pr_controller
-    set code = #{code,jdbcType=VARCHAR},
+    set rtuAddr = #{rtuaddr,jdbcType=VARCHAR},
       protocol = #{protocol,jdbcType=VARCHAR},
+      onlineState = #{onlinestate,jdbcType=TINYINT},
+      reportTime = #{reporttime,jdbcType=TIMESTAMP},
       addWays = #{addways,jdbcType=TINYINT},
       `operator` = #{operator,jdbcType=BIGINT},
       operateDt = #{operatedt,jdbcType=TIMESTAMP},
       deleted = #{deleted,jdbcType=TINYINT}
     where id = #{id,jdbcType=BIGINT}
   </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
+    <where>
+      AND ic.operateType = 1
+
+      <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 = "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>
+  </select>
+
+  <!--鏍规嵁鎸囧畾鑾峰彇鎺у埗鍣ㄨ褰�-->
+  <select id="getControllers" resultType="com.dy.pipIrrGlobal.voPr.VoController">
+    SELECT
+        con.rtuAddr AS rtuAddr,
+        (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 = "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 = "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>
+
+  </select>
+
+  <!--鏍规嵁鎺у埗鍣ㄧ紪鍙疯幏鍙栨帶鍒跺櫒鍒楄〃-->
+  <select id="getControllersByCode" resultType="java.util.Map">
+    SELECT id, rtuAddr FROM pr_controller WHERE rtuAddr LIKE CONCAT('%',#{rtuAddr},'%')
+  </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