From 4065813b0584dd9fbd2f014fea1aca912354f121 Mon Sep 17 00:00:00 2001 From: wuzeyu <1223318623@qq.com> Date: 星期二, 27 二月 2024 10:42:52 +0800 Subject: [PATCH] 修改取水口查询 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml | 64 +++++++++++++++++++++++++------ 1 files changed, 51 insertions(+), 13 deletions(-) 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 bc529ac..8470ae2 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml @@ -214,12 +214,11 @@ <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> SELECT COUNT(*) AS recordCount FROM pr_intake ge - INNER JOIN ba_divide divi ON ge.divideId = divi.id + INNER JOIN pr_divide divi ON ge.divideId = divi.id INNER JOIN ba_block blo ON divi.blockId = blo.id - INNER JOIN ba_district country ON ge.countyId = country.id - INNER JOIN ba_district town ON ge.townId = town.id - INNER JOIN ba_district village ON ge.villageId = village.id - , (SELECT @i:=0) AS itable + LEFT JOIN ba_district country ON ge.countyId = country.id + LEFT JOIN ba_district town ON ge.townId = town.id + LEFT JOIN ba_district village ON ge.villageId = village.id <where> ge.deleted = 0 AND divi.deleted = 0 @@ -233,26 +232,42 @@ </if> <if test="blockName != null and blockName != ''"> - AND blo.name = #{blockName} + AND blo.name LIKE CONCAT('%', #{blockName}, '%') + </if> + + <if test="isBinded == 0"> + AND ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0) + </if> + <if test="isBinded == 1"> + AND ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0) + </if> + <if test="isBinded == null"> + + </if> + <if test="address != null and address != ''"> + AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%') </if> </where> </select> <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鍙栨按鍙h褰�--> <select id="getIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoIntake"> - SELECT (@i:=@i+1) AS id, + SELECT CAST(ge.id AS char) AS id, ge.`name` AS intakeName, divi.`name` AS divideName, blo.`name` AS blockName, ge.operateDt As operateDt, + (CASE + WHEN ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0) THEN "鏈粦瀹�" + WHEN ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0) THEN "宸茬粦瀹�" + END) AS isBind, CONCAT(country.`name`, town.`name`, village.`name`) AS address FROM pr_intake ge INNER JOIN pr_divide divi ON ge.divideId = divi.id INNER JOIN ba_block blo ON divi.blockId = blo.id - INNER JOIN ba_district country ON ge.countyId = country.id - INNER JOIN ba_district town ON ge.townId = town.id - INNER JOIN ba_district village ON ge.villageId = village.id - , (SELECT @i:=0) AS itable + LEFT JOIN ba_district country ON ge.countyId = country.id + LEFT JOIN ba_district town ON ge.townId = town.id + LEFT JOIN ba_district village ON ge.villageId = village.id <where> ge.deleted = 0 AND divi.deleted = 0 @@ -260,17 +275,31 @@ <if test="intakeName != null and intakeName != ''"> AND ge.name LIKE CONCAT('%', #{intakeName}, '%') </if> + <if test="divideName != null and divideName != ''"> AND divi.name LIKE CONCAT('%', #{divideName}, '%') </if> <if test="blockName != null and blockName != ''"> - AND blo.name = #{blockName} + AND blo.name LIKE CONCAT('%', #{blockName}, '%') + </if> + + <if test="isBinded == 0"> + AND ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0) + </if> + <if test="isBinded == 1"> + AND ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0) + </if> + <if test="isBinded == null"> + + </if> + <if test="address != null and address != ''"> + AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%') </if> </where> ORDER BY ge.operateDt DESC <if test="pageCurr != null and pageSize != null"> - LIMIT ${pageCurr}, ${pageSize} + LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} </if> </select> @@ -309,4 +338,13 @@ where region.id = #{regionId,jdbcType=BIGINT} </select> + <!--鑾峰彇鏈粦鎺у埗鍣ㄧ殑鍙栨按鍙e垪琛�--> + <select id="getNoBindingIntakes" resultType="java.util.HashMap"> + SELECT + CAST(inta.id AS char)AS intakeId, + name AS intakeName + FROM pr_intake inta + WHERE id NOT IN(SELECT intakeId FROM pr_controller) AND deleted = 0 + </select> + </mapper> \ No newline at end of file -- Gitblit v1.8.0