From 1d401fef814034b884e423879cda16f207e2c88b Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期日, 04 二月 2024 19:49:50 +0800
Subject: [PATCH] 2024-02-04 朱宝民 优化交易明细接口,合并交易统计接口

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeGeneralMapper.xml |  126 ++++++++++++++++++------------------------
 1 files changed, 54 insertions(+), 72 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeGeneralMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeGeneralMapper.xml
index 6cee85f..785e7b2 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeGeneralMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeGeneralMapper.xml
@@ -9,13 +9,13 @@
     <result column="cashier_name" jdbcType="VARCHAR" property="cashierName" />
     <result column="trade_amount" jdbcType="FLOAT" property="tradeAmount" />
     <result column="gift" jdbcType="FLOAT" property="gift" />
-    <result column="total_amount" jdbcType="FLOAT" property="totalAmount" />
+    <result column="refund_amount" jdbcType="FLOAT" property="refundAmount" />
     <result column="operate_date" jdbcType="TIMESTAMP" property="operateDate" />
     <result column="audit_status" jdbcType="TINYINT" property="auditStatus" />
   </resultMap>
   <sql id="Base_Column_List">
     <!--@mbg.generated-->
-    id, cashier_id, cashier_name, trade_amount, gift, total_amount, operate_date, audit_status
+    id, cashier_id, cashier_name, trade_amount, gift, refund_amount, operate_date, audit_status
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
@@ -32,10 +32,10 @@
   <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoSe.SeGeneral">
     <!--@mbg.generated-->
     insert into se_general (id, cashier_id, cashier_name, 
-      trade_amount, gift, total_amount, 
+      trade_amount, gift, refund_amount,
       operate_date, audit_status)
     values (#{id,jdbcType=BIGINT}, #{cashierId,jdbcType=BIGINT}, #{cashierName,jdbcType=VARCHAR}, 
-      #{tradeAmount,jdbcType=FLOAT}, #{gift,jdbcType=FLOAT}, #{totalAmount,jdbcType=FLOAT}, 
+      #{tradeAmount,jdbcType=FLOAT}, #{gift,jdbcType=FLOAT}, #{refundAmount,jdbcType=FLOAT},
       #{operateDate,jdbcType=TIMESTAMP}, #{auditStatus,jdbcType=TINYINT})
   </insert>
   <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeGeneral">
@@ -57,8 +57,8 @@
       <if test="gift != null">
         gift,
       </if>
-      <if test="totalAmount != null">
-        total_amount,
+      <if test="refundAmount != null">
+        refund_amount,
       </if>
       <if test="operateDate != null">
         operate_date,
@@ -83,8 +83,8 @@
       <if test="gift != null">
         #{gift,jdbcType=FLOAT},
       </if>
-      <if test="totalAmount != null">
-        #{totalAmount,jdbcType=FLOAT},
+      <if test="refundAmount != null">
+        #{refundAmount,jdbcType=FLOAT},
       </if>
       <if test="operateDate != null">
         #{operateDate,jdbcType=TIMESTAMP},
@@ -110,8 +110,8 @@
       <if test="gift != null">
         gift = #{gift,jdbcType=FLOAT},
       </if>
-      <if test="totalAmount != null">
-        total_amount = #{totalAmount,jdbcType=FLOAT},
+      <if test="refundAmount != null">
+        refund_amount = #{refundAmount,jdbcType=FLOAT},
       </if>
       <if test="operateDate != null">
         operate_date = #{operateDate,jdbcType=TIMESTAMP},
@@ -129,7 +129,7 @@
       cashier_name = #{cashierName,jdbcType=VARCHAR},
       trade_amount = #{tradeAmount,jdbcType=FLOAT},
       gift = #{gift,jdbcType=FLOAT},
-      total_amount = #{totalAmount,jdbcType=FLOAT},
+      refund_amount = #{refundAmount,jdbcType=FLOAT},
       operate_date = #{operateDate,jdbcType=TIMESTAMP},
       audit_status = #{auditStatus,jdbcType=TINYINT}
     where id = #{id,jdbcType=BIGINT}
@@ -146,28 +146,28 @@
   <!--鏍规嵁浜ゆ槗鏃ユ湡鑾峰彇鎬昏处璁板綍鍒楄〃锛堝緟鐢熸垚鐨勶級  -->
   <select id="getGeneralByOperateDate" resultType="com.dy.pipIrrGlobal.pojoSe.SeGeneral">
     SELECT
-      us.id AS cashierId,
-      us.`name` AS cashierName,
-      IFNULL(SUM(ope.trade_amount),0) AS tradeAmount,
-      IFNULL(SUM(ope.gift),0) AS gift,
-      IFNULL((SUM(ope.trade_amount) + SUM(ope.gift)),0) AS totalAmount,
-      Date(ope.operate_dt) AS operateDate,
-      1 AS auditStatus
+        us.id AS cashierId,
+        us.`name` AS cashierName,
+        (IFNULL(SUM(ope.trade_amount),0) + IFNULL(SUM(ope.card_cost),0)) AS tradeAmount,
+        IFNULL(SUM(ope.gift),0) AS gift,
+        IFNULL(SUM(ope.refund_amount),0) AS refundAmount,
+        Date(ope.operate_dt) AS operateDate,
+        1 AS auditStatus
     FROM se_card_operate ope
-      INNER JOIN ba_user us ON ope.operator = us.id
+        INNER JOIN ba_user us ON ope.operator = us.id
     WHERE Date(ope.operate_dt) = #{operateDate}
     GROUP BY ope.operator, Date(ope.operate_dt)
 
     UNION ALL
 
     SELECT
-      1000000 AS cashierId,
-      '寰俊' AS cashierName,
-      IFNULL(SUM(amount), 0) AS tradeAmount,
-      0 AS gift,
-      IFNULL(SUM(amount), 0) AS totalAmount,
-      Date(recharge_time) AS operateDate,
-      1 AS auditStatus
+        1000000 AS cashierId,
+        '寰俊' AS cashierName,
+        IFNULL(SUM(amount), 0) AS tradeAmount,
+        0 AS gift,
+        0 AS refundAmount,
+        Date(recharge_time) AS operateDate,
+        1 AS auditStatus
     FROM se_wallet_recharge
     WHERE Date(recharge_time) = #{operateDate}
     GROUP BY Date(recharge_time)
@@ -175,13 +175,13 @@
     UNION ALL
 
     SELECT
-      1000000 AS cashierId,
-      '寰俊' AS cashierName,
-      IFNULL(-SUM(refund_amount), 0) AS tradeAmount,
-      0 AS gift,
-      IFNULL(-SUM(refund_amount), 0) AS totalAmount,
-      Date(audit_time) AS operateDate,
-      1 AS auditStatus
+        1000000 AS cashierId,
+        '寰俊' AS cashierName,
+        IFNULL(-SUM(refund_amount), 0) AS tradeAmount,
+        0 AS gift,
+        0 AS refundAmount,
+        Date(audit_time) AS operateDate,
+        1 AS auditStatus
     FROM se_refund
     WHERE Date(audit_time) = #{operateDate}
     GROUP BY Date(audit_time)
@@ -215,7 +215,7 @@
         cashier_name AS cashierName,
         trade_amount AS tradeAmount,
         gift,
-        total_amount AS totalAmount,
+        refund_amount AS refundAmount,
         Date(operate_date) AS operateDate,
         (CASE
           WHEN audit_status = 1 THEN "鏈鏍�"
@@ -265,50 +265,32 @@
     GROUP BY ope.payment_id,  Date(ope.operate_dt)
   </select>
 
-  <!--鏍瑰熀鎸囧畾鏃ユ湡銆佹寚瀹氭敹閾跺憳鑾峰彇绗旀暟鍚堣銆佸疄鏀堕噾棰濆悎璁°�佽禒閫侀噾棰濆悎璁�-->
-  <select id="getTransactionStatisticsSums" resultType="java.util.Map">
-    SELECT
-      SUM(count) AS totalCount,
-      SUM(received) AS totalReceived,
-      SUM(gift) AS totalGift
-    FROM v_trade_summary
-    <where>
-      <if test = "tradeDate != null and tradeDate !=''">
-        AND tradeDate = #{tradeDate}
-      </if>
-
-      <if test = "cashierId != null and cashierId >0">
-        AND cashierId = ${cashierId}
-      </if>
-    </where>
-  </select>
-
   <!--  璐㈠姟瀵硅处瀹℃牳椤碉紝鏀堕摱鍛�+鏃ユ湡鍒嗙粍锛屾帓闄や氦鏄撶被鍨嬪垎缁勶紝璁板綍鏁�-->
-  <select id="getToAuditRecordCount" parameterType="java.util.Map" resultType="java.lang.Long">
-    SELECT
-    COUNT(*) AS recordCount
-    FROM v_trade_summary
-    <where>
-      <if test = "cashierId != null and cashierId > 0">
-        AND cashierId = ${cashierId}
-      </if>
+<!--  <select id="getToAuditRecordCount" parameterType="java.util.Map" resultType="java.lang.Long">-->
+<!--    SELECT-->
+<!--    COUNT(*) AS recordCount-->
+<!--    FROM v_trade_summary-->
+<!--    <where>-->
+<!--      <if test = "cashierId != null and cashierId > 0">-->
+<!--        AND cashierId = ${cashierId}-->
+<!--      </if>-->
 
-      <if test = "tradeDate != null">
-        AND tradeDate = #{tradeDate}
-      </if>
-    </where>
-  </select>
+<!--      <if test = "tradeDate != null">-->
+<!--        AND tradeDate = #{tradeDate}-->
+<!--      </if>-->
+<!--    </where>-->
+<!--  </select>-->
 
-  <!--璐㈠姟瀵硅处瀹℃牳椤碉紝鏀堕摱鍛�+鏃ユ湡+绫诲瀷鍒嗙粍锛屾帓闄や氦鏄撶被鍨嬪垎缁�-->
-  <select id="getToAudit" resultType="com.dy.pipIrrGlobal.voSe.VoTransactionStatistics">
+  <!--寮�鍗$郴缁熶氦鏄撶粺璁★紝鏀堕摱鍛�+鏃ユ湡+绫诲瀷鍒嗙粍-->
+  <select id="getSummaries" resultType="com.dy.pipIrrGlobal.voSe.VoTransactionStatistics">
     SELECT * FROM v_trade_summary
     <where>
       <if test = "cashierId != null and cashierId > 0">
         AND cashierId = ${cashierId}
       </if>
 
-      <if test = "tradeDate != null">
-        AND tradeDate = #{tradeDate}
+      <if test = "timeStart != null and timeStop != null">
+        AND Date(tradeDate) BETWEEN #{timeStart} AND #{timeStop}
       </if>
     </where>
     ORDER BY tradeDate
@@ -325,7 +307,7 @@
       </if>
 
       <if test = "tradeDate != null">
-        AND tradeDate = #{tradeDate}
+        AND Date(tradeTime) = #{tradeDate}
       </if>
     </where>
   </select>
@@ -338,8 +320,8 @@
         AND cashierId = ${cashierId}
       </if>
 
-      <if test = "tradeTime != null">
-        AND tradeTime = #{tradeTime}
+      <if test = "tradeDate != null">
+        AND Date(tradeTime) = #{tradeDate}
       </if>
     </where>
     ORDER BY tradeTime

--
Gitblit v1.8.0