From ff08d741fcec20ebb6ef95514a59704a06a13a8b Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期四, 20 六月 2024 10:47:06 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml | 79 +++++++++++++++++++++++++++++++-------- 1 files changed, 63 insertions(+), 16 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 209c07b..a663b66 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrControllerMapper.xml @@ -30,7 +30,7 @@ </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} @@ -158,25 +158,38 @@ 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 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 deleted = 0 + 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> @@ -186,33 +199,47 @@ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鎺у埗鍣ㄨ褰�--> <select id="getControllers" resultType="com.dy.pipIrrGlobal.voPr.VoController"> SELECT + CAST(con.id AS char) AS id, con.rtuAddr AS rtuAddr, inta.name AS intakeName, + 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 + 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 deleted = 0 + 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> </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> <!--鏍规嵁鎺у埗鍣ㄥ湴鍧�鑾峰彇鎺у埗鍣ㄥ垪琛�--> @@ -237,4 +264,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