From beca4894acec49f29f7283f3c76c8da5e1c9bfe8 Mon Sep 17 00:00:00 2001 From: wuzeyu <1223318623@qq.com> Date: 星期四, 01 八月 2024 08:48:35 +0800 Subject: [PATCH] 获取全部取水口(在线不在线)接口增加查询条件是否绑定控制器,分页查询默认返回10条 --- pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java | 9 +++- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java | 2 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java | 6 +++ pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml | 44 +++++++++++++++------- 4 files changed, 44 insertions(+), 17 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java index 16d5841..ac64d89 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java @@ -69,7 +69,7 @@ * 鏈紶鍏ュ垎椤靛弬鏁版椂锛屽彇鍏ㄩ儴璁板綍 */ //this.pageSize = 1 ;//渚涗笅闈綔涓洪櫎鏁� - this.pageSize = 10000 ;//渚涗笅闈綔涓洪櫎鏁� + this.pageSize = 10 ;//渚涗笅闈綔涓洪櫎鏁� } pageTotal = (int)Math.ceil((itemTotal==null?0.0D:itemTotal.doubleValue())/pageSize); diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java index 01f6c46..c0c3512 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java @@ -1,5 +1,6 @@ package com.dy.pipIrrGlobal.voPr; +import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.dy.common.po.BaseEntity; import lombok.Data; @@ -33,4 +34,9 @@ * 鏄惁鍦ㄧ嚎 */ private Boolean isOnLine; + + /** + * 鏄惁缁戝畾 + */ + private Boolean isBinded; } diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml index 54809d4..afcd2da 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml @@ -379,26 +379,36 @@ <if test="intakeNum != null and intakeNum != ''"> AND inta.name = #{intakeNum} </if> + <if test="isBinded == 0"> + AND inta.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0) + </if> + <if test="isBinded == 1"> + AND inta.id IN(SELECT intakeId FROM pr_controller where deleted = 0) + </if> </where> </select> <!--鑾峰彇鍙栨按鍙e垪琛紙鍦ㄧ嚎鍜屼笉鍦ㄥ厛锛�--> <select id="getOnLineIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake"> SELECT - con.intakeId, - con.rtuAddr, - inta.name AS intakeNum, - rtus.isOnLine - FROM pr_controller con - 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 + inta.id AS intakeId, + con.rtuAddr, + inta.name AS intakeNum, + (CASE + WHEN con.rtuAddr IS NULL THEN "false" + WHEN con.rtuAddr IS NOT NULL THEN "true" + END) AS isBinded, + rtus.isOnLine + FROM pr_intake inta + LEFT JOIN pr_controller con 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> <if test="isOnLine != null"> rtus.isOnLine = #{isOnLine} @@ -406,6 +416,12 @@ <if test="intakeNum != null and intakeNum != ''"> AND inta.name = #{intakeNum} </if> + <if test="isBinded == false "> + AND con.rtuAddr IS NULL + </if> + <if test="isBinded == true "> + AND con.rtuAddr IS NOT NULL + </if> </where> order by con.id ASC <if test="pageCurr != null and pageSize != null"> diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java index aebcdd0..023af9e 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java @@ -27,7 +27,12 @@ /** * 鏄惁鍦ㄧ嚎 */ - @Max(value = 1,message = "鏄惁鍦ㄧ嚎浠呭厑璁镐负鐪熸垨鍋�") - @Min(value = 0,message = "鏄惁鍦ㄧ嚎浠呭厑璁镐负鐪熸垨鍋�") + private Boolean isOnLine; + + /** + * 鏄惁缁戝畾 + */ + + private Boolean isBinded; } -- Gitblit v1.8.0