From eef1bac64a0080f8f609312e31f63280b85e62d6 Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期五, 26 一月 2024 20:26:12 +0800
Subject: [PATCH] 2024-01-26 朱宝民 添加获取卡列表接口,应用程序使用

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml |  132 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 132 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
index 553c23f..c16ceaf 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
@@ -361,6 +361,10 @@
       <if test = "operateTimeStart != null and operateTimeStop != null">
         AND ope.operate_dt BETWEEN #{operateTimeStart} AND #{operateTimeStop}
       </if>
+
+      <if test = "cashierId != null and cashierId > 0">
+        AND user.id = ${cashierId}
+      </if>
     </where>
     ORDER BY ope.operate_dt
     <if test="pageCurr != null and pageSize != null">
@@ -451,4 +455,132 @@
     </where>
     GROUP BY ope.payment_id,  Date(ope.operate_dt)
   </select>
+
+  <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍗¤褰曟暟閲�-->
+  <select id="getActiveCardRecordCount" parameterType="java.util.Map" resultType="java.lang.Long">
+    select
+    COUNT(*) AS recordCount
+    FROM se_card_operate ope
+    INNER JOIN se_client_card card ON ope.card_id = card.id
+    INNER JOIN se_client cli ON ope.client_id = cli.id
+    <where>
+      AND ope.operate_type = 1
+      <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 = "state != null and state > 0">
+        AND card.state = ${state}
+      </if>
+
+      <if test = "activeTimeStart != null and activeTimeStop != null">
+        AND ope.operate_dt BETWEEN #{activeTimeStart} AND #{activeTimeStop}
+      </if>
+    </where>
+  </select>
+
+  <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍗¤褰�-->
+  <select id="getActiveCards" resultType="com.dy.pipIrrGlobal.voSe.VoActiveCardNew">
+    SELECT
+    CAST(ope.id AS char) AS id ,
+    cli.name AS clientName,
+    cli.clientNum AS clientNum,
+    card.cardNum AS cardNum,
+    card.state AS state,
+    (CASE
+    WHEN card.state = 1 THEN "姝e父"
+    WHEN card.state = 2 THEN "宸叉敞閿�"
+    WHEN card.state = 3 THEN "宸叉寕澶�"
+    END) AS stateName,
+    ope.card_cost AS cardCost,
+    ope.payment_id AS paymentId,
+    (SELECT `name` FROM ba_user WHERE id =  ope.operator) AS operator,
+    ope.operate_dt AS operateDt
+    FROM se_card_operate ope
+    INNER JOIN se_client_card card ON ope.card_id = card.id
+    INNER JOIN se_client cli ON ope.client_id = cli.id
+    <where>
+      AND ope.operate_type = 1
+      <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 = "state != null and state > 0">
+        AND card.state = ${state}
+      </if>
+
+      <if test = "activeTimeStart != null and activeTimeStop != null">
+        AND ope.operate_dt BETWEEN #{activeTimeStart} AND #{activeTimeStop}
+      </if>
+    </where>
+    ORDER BY ope.operate_dt DESC
+    <if test="pageCurr != null and pageSize != null">
+      LIMIT ${pageCurr}, ${pageSize}
+    </if>
+  </select>
+
+  <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇琛ュ崱璁板綍鏁伴噺-->
+  <select id="getReissueCardRecordCount" parameterType="java.util.Map" resultType="java.lang.Long">
+    select
+    COUNT(*) AS recordCount
+    FROM se_card_operate ope
+    INNER JOIN se_client_card card ON ope.card_id = card.id
+    INNER JOIN se_client cli ON ope.client_id = cli.id
+    <where>
+      AND ope.operate_type = 4
+      <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 = "activeTimeStart != null and activeTimeStop != null">
+        AND ope.operate_dt BETWEEN #{reissueCardTimeStart} AND #{reissueCardTimeStop}
+      </if>
+    </where>
+  </select>
+
+  <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇琛ュ崱璁板綍-->
+  <select id="getReissueCards" resultType="com.dy.pipIrrGlobal.voSe.VoReissueCard">
+    SELECT
+    CAST(ope.id AS char) AS id ,
+    cli.name AS clientName,
+    cli.clientNum AS clientNum,
+    card.cardNum AS cardNum,
+    ope.card_cost AS cardCost,
+    IFNULL(ope.no_trade_amount,0) AS reissueAmount,
+    (SELECT `name` FROM ba_user WHERE id =  ope.operator) AS operator,
+    ope.operate_dt AS operateDt
+    FROM se_card_operate ope
+    INNER JOIN se_client_card card ON ope.card_id = card.id
+    INNER JOIN se_client cli ON ope.client_id = cli.id
+    <where>
+      AND ope.operate_type = 4
+      <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 = "activeTimeStart != null and activeTimeStop != null">
+        AND ope.operate_dt BETWEEN #{reissueCardTimeStart} AND #{reissueCardTimeStop}
+      </if>
+    </where>
+    ORDER BY ope.operate_dt DESC
+    <if test="pageCurr != null and pageSize != null">
+      LIMIT ${pageCurr}, ${pageSize}
+    </if>
+  </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0