From d2fc819dc069c7b8d338ae52a90a7f38704fac08 Mon Sep 17 00:00:00 2001
From: zuoxiao <lf_zuo@163.com>
Date: 星期三, 25 六月 2025 19:52:17 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml | 76 +++++++++++++++++++++++++++++++++++++
1 files changed, 75 insertions(+), 1 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 4ec263b..76c469e 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml
@@ -804,7 +804,81 @@
card.protocol AS cardAgreement
FROM se_client_card card
INNER JOIN se_client cli ON cli.id = card.clientId
- WHERE card.cardAddr = #{cardAddr}
+ WHERE card.cardAddr = #{cardAddr} AND card.state != 4
+ ORDER BY card.createDt DESC
LIMIT 1
</select>
+
+ <!--鑾峰彇宸叉寕澶辨按鍗″垪琛ㄨ褰曟暟閲�-->
+ <select id="getLostCardsCount" parameterType="java.util.Map" resultType="java.lang.Long">
+ SELECT COUNT(*) AS recordCount
+ FROM se_client_card card
+ LEFT JOIN se_client cli ON card.clientId = cli.id
+ WHERE card.state = 3
+ </select>
+
+ <!--鑾峰彇宸叉寕澶辨按鍗″垪琛�-->
+ <select id="getLostCards" resultType="com.dy.pipIrrGlobal.voSe.VoCards">
+ SELECT cli.clientNum,
+ cli.name AS clientName,
+ card.cardNum,
+ cli.phone,
+ cli.idCard,
+ card.state AS cardState,
+ '宸叉寕澶�' AS stateName,
+ '鍐滄埛鍗�' AS cardType,
+ FORMAT(card.money, 2) AS money
+ FROM se_client_card card
+ LEFT JOIN se_client cli ON card.clientId = cli.id
+ WHERE card.state = 3
+ ORDER BY card.lossDtDt DESC
+ <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="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