From d4c8e72800fcf6fbaa3804d383c7b6a23f826f3e Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期三, 20 八月 2025 14:35:00 +0800
Subject: [PATCH] 修改bug
---
pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml | 81 +++++++++++++++++++++++++++++++++++++---
1 files changed, 75 insertions(+), 6 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 cd47ae0..ff87890 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml
@@ -401,17 +401,34 @@
LEFT JOIN se_client_card card ON card.id = ope.card_id
LEFT JOIN se_payment_method pay ON pay.id = ope.payment_id
LEFT JOIN ba_user user ON user.id = ope.operator
- WHERE ope.operate_valid = 2 AND ope.operate_type in (1,2,3) AND cardNum = #{cardNum,jdbcType=BIGINT}
- <!-- SELECT *-->
- <!-- FROM v_operate-->
- <!-- WHERE cardNum = #{cardNum,jdbcType=BIGINT}-->
+<!-- WHERE ope.operate_valid = 2 AND ope.operate_type in (1,2,3) AND cardNum = #{cardNum,jdbcType=BIGINT}-->
+ <where>
+ AND ope.operate_valid = 2
+ AND ope.operate_type in (1,2,3)
+ <if test="cardNum != null and cardNum != ''">
+ AND card.cardNum = #{cardNum}
+ </if>
+
+ <if test="cardAddr != null and cardAddr != ''">
+ AND card.cardAddr = #{cardAddr}
+ </if>
+ </where>
</select>
<!--鏍规嵁姘村崱缂栧彿鑾峰彇浣欓-->
<select id="getMoneyByCardNum" resultType="java.lang.Float">
SELECT money
FROM se_client_card
- WHERE cardNum = #{cardNum,jdbcType=BIGINT}
+<!-- WHERE cardNum = #{cardNum,jdbcType=BIGINT}-->
+ <where>
+ <if test="cardNum != null and cardNum != ''">
+ AND cardNum = #{cardNum}
+ </if>
+
+ <if test="cardAddr != null and cardAddr != ''">
+ AND cardAddr = #{cardAddr}
+ </if>
+ </where>
</select>
<!--鏍规嵁姘村崱缂栧彿鑾峰彇鍏呭�兼�婚-->
@@ -419,7 +436,16 @@
SELECT SUM(his.amount) AS amount
FROM se_recharge_history his
INNER JOIN se_client_card card ON his.cardId = card.id
- WHERE card.cardNum = #{cardNum,jdbcType=BIGINT}
+<!-- WHERE card.cardNum = #{cardNum,jdbcType=BIGINT}-->
+ <where>
+ <if test="cardNum != null and cardNum != ''">
+ AND card.cardNum = #{cardNum}
+ </if>
+
+ <if test="cardAddr != null and cardAddr != ''">
+ AND card.cardAddr = #{cardAddr}
+ </if>
+ </where>
</select>
<!--鏍规嵁姘村崱缂栧彿鑾峰彇鍗$墖鐘舵�侊細1-寮�鍗★紝2-琛ュ崱锛�3-鍏呭�硷紝4-鎸傚け锛�5-娉ㄩ攢锛�6-瑙i攣锛�7-鍐叉锛�8-娑堣垂-->
@@ -838,4 +864,47 @@
</if>
</trim>
</select>
+
+ <!--鏍规嵁姘村崱缂栧彿鑾峰彇鍗′俊鎭�-->
+ <select id="getCardByCardNum" resultType="com.dy.pipIrrGlobal.voSe.VoCardByClientNum">
+ SELECT
+ card.cardNum,
+ card.state AS cardState,
+ '鍐滄埛鍗�' AS cardType,
+ cli.name AS clientName,
+ cli.clientNum,
+ cli.idCard,
+ FORMAT(card.money, 1) AS money,
+ cli.phone,
+ (CASE
+ WHEN card.state = 1 THEN '姝e父'
+ WHEN card.state = 2 THEN '宸叉敞閿�'
+ WHEN card.state = 3 THEN '宸叉寕澶�'
+ WHEN card.state = 4 THEN '鏃犳晥'
+ ELSE '鏈煡'
+ END) AS stateName
+ FROM se_client_card card
+ INNER JOIN se_client cli ON card.clientId = cli.id
+ WHERE card.cardNum = #{cardNum}
+ AND card.state != 4
+ ORDER BY card.createDt DESC
+ LIMIT 1
+ </select>
+
+ <!--妫�鏌ュ崱鍦板潃鏄惁宸插瓨鍦紙绠$悊鍗¤〃 + 鍐滄埛姘村崱琛級-->
+ <select id="checkCardAddrExists" resultType="java.lang.Long">
+ SELECT COUNT(*) AS totalCount FROM (
+ -- 妫�鏌ョ鐞嗗崱琛ㄤ腑姝e父(1)鍜屾寕澶�(3)鐘舵�佺殑璁板綍锛屾帓闄ゅ凡娉ㄩ攢(2)鍜屾湭鍐欏崱(4)
+ SELECT card_addr FROM se_management_card
+ WHERE card_addr = #{cardAddr}
+ AND state IN (1, 3)
+
+ UNION ALL
+
+ -- 妫�鏌ュ啘鎴锋按鍗¤〃涓甯�(1)鍜屾寕澶�(3)鐘舵�佺殑璁板綍
+ SELECT cardAddr FROM se_client_card
+ WHERE cardAddr = #{cardAddr}
+ AND state IN (1, 3)
+ ) AS combined_result
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0