From 7e243d1b887bbc82d2d4c8075bf4c4a549e79f68 Mon Sep 17 00:00:00 2001 From: wuzeyu <1223318623@qq.com> Date: 星期六, 19 十月 2024 11:58:42 +0800 Subject: [PATCH] 实现接口 获取指定时间内农户充值、消费、余额合计 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml | 62 +++++++++++++++++++++++++++++- 1 files changed, 59 insertions(+), 3 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 fbf92a0..fefa9d6 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientMapper.xml @@ -325,6 +325,16 @@ <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> @@ -351,7 +361,7 @@ cli.phone, cli.idCard, cli.area, - (SELECT COUNT(*) FROM se_client_card WHERE clientId = cli.id) AS cardCount, + (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 @@ -380,6 +390,16 @@ <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> ORDER BY cli.operateDt DESC <trim prefix="limit " > @@ -396,7 +416,7 @@ <!--鏍规嵁鍐滄埛缂栧彿鑾峰彇5绾ц鏀垮尯鍒掍覆areaCode锛岃ˉ鍗¤繃绋嬩腑寮�鏂板崱浣跨敤--> <select id="getAreaCodeById" resultType="java.lang.Long"> - SELECT districtNum FROM se_client WHERE id = ${clientId} + SELECT districtNum FROM se_client WHERE id = #{clientId} </select> <!--鏍规嵁鍐滄埛缂栧彿鑾峰彇鍐滄埛ID--> @@ -455,5 +475,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