From ae0a1bdde246c8b0231dd07a99ecb9b965b6d0b6 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 18 Nov 2021 11:39:21 +0800
Subject: [PATCH] fix

---
 gc-shop/src/main/resources/mapper/shop/ScoreOrderMapper.xml |   83 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 79 insertions(+), 4 deletions(-)

diff --git a/gc-shop/src/main/resources/mapper/shop/ScoreOrderMapper.xml b/gc-shop/src/main/resources/mapper/shop/ScoreOrderMapper.xml
index d0c4f51..fb8685a 100644
--- a/gc-shop/src/main/resources/mapper/shop/ScoreOrderMapper.xml
+++ b/gc-shop/src/main/resources/mapper/shop/ScoreOrderMapper.xml
@@ -6,9 +6,11 @@
         SELECT
                a.*,
                a.CREATED_TIME createTime,
+               ifnull(a.is_finish,2) isFinish,
                b.nick_name name,
                b.mobile_phone phone,
                d.express_com expressCom,
+               d.address expressAddress,
                d.express_no expressNo
         FROM
         xzx_score_order a
@@ -20,10 +22,14 @@
         </if>
 
         <if test="name != null and name != ''">
-            and b.nick_name like concat('%',#{name},'%')
+            and (b.nick_name like concat('%',#{name},'%')
+                     or b.mobile_phone like concat('%',#{accountName},'%') )
         </if>
-        <if test="status != null and status != ''">
-            and a.status = #{status}
+        <if test="status.size > 0">
+            and a.status in
+            <foreach collection="status" item="sta" open="(" separator="," close=")">
+                #{sta}
+            </foreach>
         </if>
         <if test="createdTimeStart != null">
             and a.CREATED_TIME >= #{createdTimeStart}
@@ -32,7 +38,21 @@
         <if test="createdTimeEnd != null">
             and a.CREATED_TIME &lt;= #{createdTimeEnd}
         </if>
-        order by a.CREATED_TIME desc
+        order by
+            <if test="namePx != null and namePx != '' and namePx == 1">
+                a.CREATED_TIME
+            </if>
+            <if test="namePx != null and namePx != '' and namePx == 2">
+                from_base64(b.nick_name)
+            </if>
+
+            <if test="typePx != null and typePx != '' and typePx == 1">
+                asc
+            </if>
+            <if test="typePx != null and typePx != '' and typePx == 2">
+                desc
+            </if>
+
     </select>
 
     <select id="selectXcxOrderList" resultType="com.xzx.gc.shop.vo.XcxOrderListVo">
@@ -82,4 +102,59 @@
         set status=#{status}
         where id=#{id} and user_id=#{userId}
     </update>
+
+    <select id="selectOrderStastics" resultType="java.util.Map">
+        select
+            IFNULL(count(1), 0) totalBuy,
+            IFNULL(sum(IFNULL(total_price,0)),0) totalPrice,
+            (
+                select IFNULL(count(1),0) from xzx_jhy_order where status in (3, 4)
+                <if test="userId != null and userId != ''">
+                    and user_id=#{userId}
+                </if>
+            ) totalOrder
+        from xzx_score_order
+        where status in (3, 4)
+        <if test="userId != null and userId != ''">
+            and user_id=#{userId}
+        </if>
+    </select>
+
+    <select id="selectScoreOrderCnt" resultType="java.lang.Integer">
+        select IFNULL(count(1), 0) from xzx_score_order
+        where status in (3, 4)
+        <if test="userId != null and userId != ''">
+            and user_id=#{userId}
+        </if>
+    </select>
+
+
+    <select id="selectGoodsQuotaTime" resultType="java.lang.Integer">
+        SELECT
+            IFNULL(SUM(a.cnt), 0)
+        FROM
+            xzx_score_order a
+                LEFT JOIN xzx_score_order_details b ON b.order_id = a.id
+        WHERE
+            a. STATUS IN (1, 2, 3, 4, 5)
+          and a.user_id = #{userId}
+          AND b.goods_id = #{goodsId}
+          and a.CREATED_TIME &gt;= #{qgStartTime}
+          and a.CREATED_TIME &lt;= #{qgEndTime}
+    </select>
+
+    <select id="selectOrderByIsFinish" resultType="com.xzx.gc.entity.ScoreOrder">
+        select
+        a.*
+        from xzx_score_order a
+        where a.is_finish = 1
+        and a.status = 2
+        and a.is_finish_time &lt;= #{dateTime}
+    </select>
+
+    <update id="updateOrderStatusToDone">
+        update xzx_score_order
+        set status = 4
+        where id = #{id}
+    </update>
 </mapper>

--
Gitblit v1.9.1