From d65cc4cd967d9c8cbdc8a4dd7c803e952f01098f Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期三, 28 八月 2024 14:53:35 +0800
Subject: [PATCH] 修改用户登录接口 优化取水口绑定、解绑控制器接口

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml |   82 ++++++++++++++++++++++++++++++++---------
 1 files changed, 64 insertions(+), 18 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 71d1989..bd1b81a 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml
@@ -75,6 +75,16 @@
     WHERE card.cardAddr = #{cardAddr} and  card.cardNum = #{cardNum}
   </select>
 
+
+  <!-- 鏍规嵁姘村崱缂栧彿鑾峰彇姘村崱 -->
+  <select id="getCardsByAddrAndNum"  resultType="com.dy.pipIrrGlobal.voSe.VoCardInfo1">
+    SELECT
+    id,
+    money
+    FROM se_client_card
+    WHERE cardAddr = #{cardAddr} and  cardNum = #{cardNum}
+  </select>
+
   <!--鏍规嵁琛屾斂鍖哄垝涓叉ā绯婃煡璇㈡按鍗$紪鍙�-->
   <select id="getCardNumOfMax"  resultType="java.lang.String">
     SELECT cardNum
@@ -104,6 +114,9 @@
     <!--@mbg.generated-->
     insert into se_client_card
     <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
       <if test="protocol != null">
         protocol,
       </if>
@@ -160,6 +173,9 @@
       </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=BIGINT},
+      </if>
       <if test="protocol != null">
         #{protocol,jdbcType=VARCHAR},
       </if>
@@ -280,8 +296,8 @@
   <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoSe.SeClientCard">
     <!--@mbg.generated-->
     update se_client_card
-    set protocol = #{protocol,jdbcType=VARCHAR}
-    cardAddr = #{cardaddr,jdbcType=VARCHAR},
+    set protocol = #{protocol,jdbcType=VARCHAR},
+      cardAddr = #{cardaddr,jdbcType=VARCHAR},
       cardNum = #{cardnum,jdbcType=BIGINT},
       clientId = #{clientid,jdbcType=BIGINT},
       money = #{money,jdbcType=FLOAT},
@@ -300,30 +316,52 @@
       remarks = #{remarks,jdbcType=VARCHAR}
     where id = #{id,jdbcType=BIGINT}
   </update>
-
-  <!--鏍规嵁鍐滄埛涓婚敭鑾峰彇姘村崱鍒楄〃-->
+  <update id="updateMoney" >
+    update se_client_card
+    set money = #{money,jdbcType=FLOAT}
+    where id = #{id,jdbcType=BIGINT}
+  </update>
+  <!--鏍规嵁鍐滄埛涓婚敭鑾峰彇姘村崱鍒楄〃锛堢墿鐞嗗崱+铏氭嫙鍗★級-->
   <select id="getCardInfoByClientId" resultType="com.dy.pipIrrGlobal.voSe.VoCardInfo">
     SELECT
-        cardNum,
-        '鐢ㄦ埛鍗�' AS cardType,
-        money,
-        (CASE
-            WHEN state = 1 THEN "姝e父"
-            WHEN state = 2 THEN "宸叉敞閿�"
-            ELSE "宸叉寕澶�"
-        END) AS state
-    FROM se_client_card
-    WHERE clientId = ${clientId}
+    *
+    FROM
+    (SELECT
+    '鐗╃悊鍗�' AS cardType,
+    clientCard.cardNum   AS CardNum,
+    clientCard.money   AS Money,
+    (CASE
+    WHEN clientCard.state = 1 THEN '姝e父'
+    WHEN clientCard.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}
+    UNION ALL
+    SELECT
+    '铏氭嫙鍗�' AS cardType,
+    virtualCard.vc_num   AS CardNum,
+    virtualCard.money   AS vcMoney,
+    (CASE
+    WHEN virtualCard.in_use = 0 THEN '鏈娇鐢�'
+    WHEN virtualCard.in_use = 1 THEN '浣跨敤涓�'
+    END) AS State
+    FROM se_client client
+    LEFT JOIN se_virtual_card virtualCard ON client.id = virtualCard.client_id
+    WHERE client.id = #{clientId,jdbcType=BIGINT}
+    ) card
+    ORDER BY card.Money DESC , card.State DESC
   </select>
 
   <!--鏍规嵁姘村崱缂栧彿鑾峰彇鎿嶄綔璁板綍鍒楄〃-->
   <select id="getOperateRecordsByCardNum" resultType="java.util.HashMap">
-    SELECT * FROM v_operate WHERE cardNum = ${cardNum}
+    SELECT * FROM v_operate WHERE cardNum = #{cardNum,jdbcType=BIGINT}
   </select>
 
   <!--鏍规嵁姘村崱缂栧彿鑾峰彇浣欓-->
   <select id="getMoneyByCardNum" resultType="java.lang.Float">
-    SELECT money FROM se_client_card WHERE cardNum = ${cardNum}
+    SELECT money FROM se_client_card WHERE cardNum = #{cardNum,jdbcType=BIGINT}
   </select>
 
   <!--鏍规嵁姘村崱缂栧彿鑾峰彇鍏呭�兼�婚-->
@@ -332,7 +370,7 @@
       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}
+    WHERE card.cardNum = #{cardNum,jdbcType=BIGINT}
   </select>
 
   <!--鏍规嵁姘村崱缂栧彿鑾峰彇鍗$墖鐘舵�侊細1-寮�鍗★紝2-琛ュ崱锛�3-鍏呭�硷紝4-鎸傚け锛�5-娉ㄩ攢锛�6-瑙i攣锛�7-鍐叉锛�8-娑堣垂-->
@@ -357,7 +395,7 @@
             WHEN state = 3 THEN '宸叉寕澶�'
         END) AS stateName
     FROM se_client_card
-    WHERE cardNum = ${cardNum}
+    WHERE cardNum = #{cardNum,jdbcType=BIGINT}
   </select>
 
   <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇姘村崱鍒楄〃璁板綍鏁帮紝搴旂敤绋嬪簭浣跨敤-->
@@ -569,4 +607,12 @@
 
     ORDER BY card.id
   </select>
+  <!--褰撳墠浣欓鎬婚噺锛堢墿鐞嗗崱锛�-->
+  <select id="getTotalMoneyIcCards" resultType="java.lang.Double">
+    SELECT
+      IFNULL(SUM(money),0) AS totalMoney
+    FROM
+      `se_client_card`
+    WHERE state = 1
+  </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0