From e1cb03bf866b04589dd5457db1f4517d9e77f42d Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期五, 11 十月 2024 15:45:29 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml | 90 ++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 81 insertions(+), 9 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml index c947dc6..8935aee 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml @@ -346,17 +346,17 @@ <!--鏍规嵁鍐滄埛涓婚敭鑾峰彇姘村崱鍒楄〃锛堢墿鐞嗗崱+铏氭嫙鍗★級--> <select id="getCardInfoByClientId" resultType="com.dy.pipIrrGlobal.voSe.VoCardInfo"> SELECT * - FROM (SELECT '鐗╃悊鍗�' AS cardType, - clientCard.cardNum AS cardNum, - clientCard.money AS money, + FROM (SELECT '鐗╃悊鍗�' AS cardType, + card.cardNum AS cardNum, + card.money AS money, (CASE - WHEN clientCard.state = 1 THEN '姝e父' - WHEN clientCard.state = 2 THEN '宸叉敞閿�' + WHEN card.state = 1 THEN '姝e父' + WHEN card.state = 2 THEN '宸叉敞閿�' ELSE '宸叉寕澶�' - END) AS state - FROM se_client client - LEFT JOIN se_client_card clientCard ON clientCard.clientId = client.id - WHERE client.id = #{clientId,jdbcType=BIGINT} + END) AS state + FROM se_client_card card + INNER JOIN se_client cli ON cli.id = card.clientId + WHERE card.clientId = #{clientId,jdbcType=BIGINT} UNION ALL SELECT '铏氭嫙鍗�' AS cardType, vc.vc_num AS cardNum, @@ -650,4 +650,76 @@ WHERE cardAddr = #{cardAddr} AND state IN (1, 3) </select> + + <!--鑾峰彇鎸囧畾鏃堕棿娈垫按鍗′娇鐢ㄦ儏鍐佃褰曟暟閲�--> + <select id="getCardUsagesCount" resultType="com.dy.pipIrrGlobal.voSt.VoCardUsage"> + SELECT + cli.name AS clientName, + card.cardNum, + (SELECT ROUND(SUM(rch.amount),2) FROM se_recharge_history rch WHERE rch.cardId = card.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.cl_ic_card_no = card.cardNum AND his.cl_dt BETWEEN #{timeStart} AND #{timeStop}) AS totalConsumption, + ROUND(card.money,2) AS balance + FROM se_client_card card + INNER JOIN se_client cli ON cli.id = card.clientId + INNER JOIN se_recharge_history rch ON rch.cardId = card.id + <where> + <if test="clientName != null and clientName != ''"> + AND cli.name like CONCAT('%', #{clientName}, '%') + </if> + + <if test="cardNum != null and cardNum != ''"> + AND card.cardNum like CONCAT('%', #{cardNum}, '%') + </if> + + <if test="clientNum != null and clientNum != ''"> + AND cli.clientNum like CONCAT('%', #{clientNum}, '%') + </if> + </where> + </select> + + <!--鑾峰彇鎸囧畾鏃堕棿娈垫按鍗′娇鐢ㄦ儏鍐碉細鍏呭�煎悎璁°�佹秷璐瑰悎璁°�佷綑棰�--> + <select id="getCardUsages" resultType="com.dy.pipIrrGlobal.voSt.VoCardUsage"> + SELECT + cli.name AS clientName, + card.cardNum, + (SELECT ROUND(SUM(rch.amount),2) FROM se_recharge_history rch WHERE rch.cardId = card.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.cl_ic_card_no = card.cardNum AND his.cl_dt BETWEEN #{timeStart} AND #{timeStop}) AS totalConsumption, + ROUND(card.money,2) AS balance + FROM se_client_card card + INNER JOIN se_client cli ON cli.id = card.clientId + INNER JOIN se_recharge_history rch ON rch.cardId = card.id + <where> + <if test="clientName != null and clientName != ''"> + AND cli.name like CONCAT('%', #{clientName}, '%') + </if> + + <if test="cardNum != null and cardNum != ''"> + AND card.cardNum like CONCAT('%', #{cardNum}, '%') + </if> + + <if test="clientNum != null and clientNum != ''"> + AND cli.clientNum like CONCAT('%', #{clientNum}, '%') + </if> + </where> + ORDER BY cli.name, card.cardNum + <trim prefix="limit "> + <if test="start != null and count != null"> + #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} + </if> + </trim> + </select> + + <!--鑾峰彇鎸囧畾鏃堕棿娈靛唴姘村崱鍏呭�兼�昏--> + <select id="getTotalRecharge" resultType="java.lang.Float"> + SELECT ROUND(SUM(amount),2) AS totalRecharge + FROM se_recharge_history + WHERE operateDt BETWEEN #{timeStart} AND #{timeStop} + </select> + + <!--鑾峰彇鎸囧畾鏃堕棿娈靛唴姘村崱娑堣垂鎬昏--> + <select id="getTotalConsumption" resultType="java.lang.Float"> + SELECT ROUND(SUM(cl_this_money),2) AS totalConsumption + FROM rm_open_close_valve_history + WHERE cl_dt BETWEEN #{timeStart} AND #{timeStop} + </select> </mapper> \ No newline at end of file -- Gitblit v1.8.0