From e5c29d6ac2b210a9385723598d79a42ae5a9679e Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期三, 23 四月 2025 15:20:13 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml | 191 +++++++++++++++++++++++++++++++++-------------- 1 files changed, 132 insertions(+), 59 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml index 65bb9e1..91c9588 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml @@ -302,60 +302,24 @@ </select> <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鍐滄埛璁板綍鏁�--> - <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> - SELECT - COUNT(*) AS recordCount - FROM se_client cli - , (SELECT @i:=0) AS itable - <where> - AND cli.disabled = 0 - AND cli.deleted = 0 - <if test = "name != null and name !=''"> - AND cli.name like CONCAT('%',#{name},'%') - </if> - - <if test = "clientNum != null and clientNum !=''"> - AND cli.clientNum like CONCAT('%',#{clientNum},'%') - </if> - - <if test = "phone != null and phone !=''"> - AND cli.phone like CONCAT('%',#{phone},'%') - </if> - - <if test = "address != null and address !=''"> - AND cli.address like CONCAT('%',#{address},'%') - </if> - - <if test = "villageId != null and villageId !=''"> - AND cli.villageId = #{villageId} - </if> - <if test = "blockId != null and blockId !=''"> - AND cli.blockId = #{blockId} - </if> - <if test = "divideId != null and divideId !=''"> - AND cli.divideId = #{divideId} - </if> - </where> - - </select> - - - <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鍐滄埛鏁版嵁--> - <select id="getClients" resultType="com.dy.pipIrrGlobal.voSe.VoClient"> - SELECT - CAST(cli.countyId AS char) AS countyId, +<!-- <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long">--> + <select id="getRecordCount" resultType="com.dy.pipIrrGlobal.voSe.VoClient"> +<!-- SELECT--> +<!-- COUNT(*) AS recordCount--> + SELECT DISTINCT + cli.countyId, dis_con.name AS countryName, - CAST(cli.townId AS char) AS townId, + cli.townId, dis_town.name AS townName, - CAST(cli.villageId AS char) AS villageId, + cli.villageId, dis_village.name AS villageName, - CAST(cli.blockId AS char) AS blockId, + cli.blockId, blo.name AS blockName, - CAST(cli.divideId AS char) AS divideId, + cli.divideId, divi.name AS divideName, - CAST(cli.typeId AS char) AS typeId, + cli.typeId, wat.typeName AS waterTypeName, - CAST(cli.id AS char) AS clientId, + cli.id AS clientId, cli.name, cli.clientNum, cli.phone, @@ -366,12 +330,13 @@ cli.remarks, cli.operateDt FROM se_client cli - LEFT JOIN ba_district dis_con ON cli.countyId = dis_con.id - LEFT JOIN ba_district dis_town ON cli.townId = dis_town.id - LEFT JOIN ba_district dis_village ON cli.villageId = dis_village.id - LEFT JOIN ba_block blo ON cli.blockId = blo.id - LEFT JOIN pr_divide divi ON cli.divideId = divi.id - LEFT JOIN se_water_type wat ON cli.typeId = wat.id + LEFT JOIN ba_district dis_con ON cli.countyId = dis_con.id + LEFT JOIN ba_district dis_town ON cli.townId = dis_town.id + LEFT JOIN ba_district dis_village ON cli.villageId = dis_village.id + LEFT JOIN ba_block blo ON cli.blockId = blo.id + LEFT JOIN pr_divide divi ON cli.divideId = divi.id + LEFT JOIN se_water_type wat ON cli.typeId = wat.id + LEFT JOIN se_client_card card ON card.clientId = cli.id <where> AND cli.disabled = 0 AND cli.deleted = 0 @@ -399,6 +364,78 @@ </if> <if test = "divideId != null and divideId !=''"> AND cli.divideId = #{divideId} + </if> + <if test = "cardNum != null"> + AND card.cardNum = #{cardNum} + </if> + </where> + + </select> + + + <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鍐滄埛鏁版嵁--> + <select id="getClients" resultType="com.dy.pipIrrGlobal.voSe.VoClient"> + SELECT DISTINCT + cli.countyId, + dis_con.name AS countryName, + cli.townId, + dis_town.name AS townName, + cli.villageId, + dis_village.name AS villageName, + cli.blockId, + blo.name AS blockName, + cli.divideId, + divi.name AS divideName, + cli.typeId, + wat.typeName AS waterTypeName, + cli.id AS clientId, + cli.name, + cli.clientNum, + cli.phone, + cli.idCard, + cli.area, + (SELECT COUNT(*) FROM se_client_card WHERE clientId = cli.id)+(SELECT COUNT(*) FROM se_virtual_card WHERE client_id = cli.id) AS cardCount, + cli.address, + cli.remarks, + cli.operateDt + FROM se_client cli + LEFT JOIN ba_district dis_con ON cli.countyId = dis_con.id + LEFT JOIN ba_district dis_town ON cli.townId = dis_town.id + LEFT JOIN ba_district dis_village ON cli.villageId = dis_village.id + LEFT JOIN ba_block blo ON cli.blockId = blo.id + LEFT JOIN pr_divide divi ON cli.divideId = divi.id + LEFT JOIN se_water_type wat ON cli.typeId = wat.id + LEFT JOIN se_client_card card ON card.clientId = cli.id + <where> + AND cli.disabled = 0 + AND cli.deleted = 0 + <if test = "name != null and name !=''"> + AND cli.name like CONCAT('%',#{name},'%') + </if> + + <if test = "clientNum != null and clientNum !=''"> + AND cli.clientNum like CONCAT('%',#{clientNum},'%') + </if> + + <if test = "phone != null and phone !=''"> + AND cli.phone like CONCAT('%',#{phone},'%') + </if> + + <if test = "address != null and address !=''"> + AND cli.address like CONCAT('%',#{address},'%') + </if> + + <if test = "villageId != null and villageId !=''"> + AND cli.villageId = #{villageId} + </if> + <if test = "blockId != null and blockId !=''"> + AND cli.blockId = #{blockId} + </if> + <if test = "divideId != null and divideId !=''"> + AND cli.divideId = #{divideId} + </if> + <if test = "cardNum != null"> + AND card.cardNum = #{cardNum} </if> </where> ORDER BY cli.operateDt DESC @@ -411,7 +448,7 @@ <!--鏍规嵁鍐滄埛缂栧彿鑾峰彇5绾ц鏀垮尯鍒掍唬鐮�--> <select id="getAreaCodeByNum" resultType="java.lang.Long"> - SELECT districtNum FROM se_client WHERE clientNum = ${clientNum} LIMIT 0,1 + SELECT districtNum FROM se_client WHERE clientNum = #{clientNum} LIMIT 0,1 </select> <!--鏍规嵁鍐滄埛缂栧彿鑾峰彇5绾ц鏀垮尯鍒掍覆areaCode锛岃ˉ鍗¤繃绋嬩腑寮�鏂板崱浣跨敤--> @@ -421,7 +458,7 @@ <!--鏍规嵁鍐滄埛缂栧彿鑾峰彇鍐滄埛ID--> <select id="getClientIdByNum" resultType="java.lang.Long"> - SELECT id FROM se_client WHERE clientNum = ${clientNum} LIMIT 0,1 + SELECT id FROM se_client WHERE clientNum = #{clientNum} LIMIT 0,1 </select> <!--鏍规嵁鐢佃瘽鍙风爜鑾峰彇鍐滄埛ID--> @@ -434,14 +471,14 @@ update se_client set deleted = 1 <where> <if test = "id != null and id > 0"> - AND id = ${id} + AND id = #{id} </if> </where> </update> <!--鏍规嵁涓婚敭鑾峰彇鏉慖D--> <select id="getVillageIdById" parameterType="java.lang.Long" resultType="java.lang.Long"> - SELECT villageId FROM se_client WHERE id = ${id} + SELECT villageId FROM se_client WHERE id = #{id} </select> <!--鑾峰彇铏氭嫙鍗″彿鏈�澶у��--> @@ -475,5 +512,41 @@ </where> LIMIT 0,1 </select> - + <!--鑾峰彇鎸囧畾鏃堕棿娈靛啘鎴凤細鍏呭�煎悎璁°�佹秷璐瑰悎璁°�佷綑棰�--> + <select id="getClientUsagesCount" resultType="java.lang.Long"> + SELECT + count(*) + FROM se_client cli + <where> + <if test="clientName != null and clientName != ''"> + AND cli.name like CONCAT('%', #{clientName}, '%') + </if> + <if test="clientNum != null and clientNum != ''"> + AND cli.clientNum like CONCAT('%', #{clientNum}, '%') + </if> + </where> + </select> + <!--鑾峰彇鎸囧畾鏃堕棿娈靛啘鎴凤細鍏呭�煎悎璁°�佹秷璐瑰悎璁°�佷綑棰�--> + <select id="getClientUsages" resultType="com.dy.pipIrrGlobal.voSt.VoCardUsage"> + SELECT + cli.name AS clientName, + (SELECT ROUND(SUM(rch.amount),2) FROM se_recharge_history rch WHERE rch.clientId = cli.id AND rch.operateDt BETWEEN #{timeStart} AND #{timeStop}) AS totalRecharge, + (SELECT ROUND(SUM(his.cl_this_money),2) FROM rm_open_close_valve_history his WHERE his.client_id = cli.id AND his.cl_dt BETWEEN #{timeStart} AND #{timeStop}) AS totalConsumption, + (SELECT ROUND(SUM(card.money),2) FROM se_client_card card WHERE card.clientId = cli.id) AS balance + FROM se_client cli + <where> + <if test="clientName != null and clientName != ''"> + AND cli.name like CONCAT('%', #{clientName}, '%') + </if> + <if test="clientNum != null and clientNum != ''"> + AND cli.clientNum like CONCAT('%', #{clientNum}, '%') + </if> + </where> + ORDER BY totalConsumption DESC, totalRecharge DESC + <trim prefix="limit "> + <if test="start != null and count != null"> + #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} + </if> + </trim> + </select> </mapper> \ No newline at end of file -- Gitblit v1.8.0