From bac6dff53fabb35a057685aadd9511c6c240eb32 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 22 Nov 2021 11:30:06 +0800
Subject: [PATCH] 20211122

---
 gc-user/src/main/java/com/xzx/gc/user/service/UserService.java |    8 +-
 gc-user/src/main/resources/mapper/user/OrderMapper.xml         |  112 ++++++++++++++++++++++++++++++++++++
 gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java  |    4 +
 3 files changed, 119 insertions(+), 5 deletions(-)

diff --git a/gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java b/gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java
index e7e33e5..461aa64 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java
@@ -68,5 +68,9 @@
     List<CategaryVo> selectJHYListByOrderId(String orderId);
 
     String selectTGRMobileByPhone(@Param("mobilePhone")String mobilePhone);
+
+    Map<String, Object> queryCuserOrderByUserIdOrderIng(@Param("userId")String userId);
+
+    Map<String, Object> queryCuserOrderByUserIdOrderDone(@Param("userId")String userId);
 }
 
diff --git a/gc-user/src/main/java/com/xzx/gc/user/service/UserService.java b/gc-user/src/main/java/com/xzx/gc/user/service/UserService.java
index c975ff7..3789202 100644
--- a/gc-user/src/main/java/com/xzx/gc/user/service/UserService.java
+++ b/gc-user/src/main/java/com/xzx/gc/user/service/UserService.java
@@ -469,9 +469,11 @@
                 mx.setNickName(com.xzx.gc.common.utils.StringUtils.decode(mx.getNickName()));
             }
             // 待完成订单总数
-            Map<String, Object> osMap = orderMapper.queryCuserOrderByUserIdCount1(mx.getUserId());
-            mx.setOrderStatus3(Integer.parseInt(osMap.get("count1").toString()));
-            mx.setOrderStatus5(Integer.parseInt(osMap.get("count").toString()));
+//            Map<String, Object> osMap = orderMapper.queryCuserOrderByUserIdCount1(mx.getUserId());
+            Map<String, Object> orderIng = orderMapper.queryCuserOrderByUserIdOrderIng(mx.getUserId());
+            Map<String, Object> orderDone = orderMapper.queryCuserOrderByUserIdOrderDone(mx.getUserId());
+            mx.setOrderStatus3(Integer.parseInt(orderIng.get("count").toString()));
+            mx.setOrderStatus5(Integer.parseInt(orderDone.get("count").toString()));
 
             //查询用户首次下单时间和最近下单时间
             List<OrderInfo> byCreateUserId = orderService.findByCreateUserId(mx.getUserId(), null);
diff --git a/gc-user/src/main/resources/mapper/user/OrderMapper.xml b/gc-user/src/main/resources/mapper/user/OrderMapper.xml
index 8bd0e08..3427663 100644
--- a/gc-user/src/main/resources/mapper/user/OrderMapper.xml
+++ b/gc-user/src/main/resources/mapper/user/OrderMapper.xml
@@ -232,7 +232,7 @@
                             LEFT JOIN xzx_jhy_order_items d ON a.id = d.order_id
                     WHERE
                         a.user_id = #{userId}
-                        and a.status != 5
+                        and a.status = 3
                     GROUP BY
                         a.id
                 )
@@ -433,7 +433,7 @@
                             LEFT JOIN xzx_jhy_info e ON a.jhy_id = e.user_id
                     WHERE
                         a.user_id = #{userId}
-                    and a.status != 5
+                    and a.status = 3
                     GROUP BY
                         a.id
                 )
@@ -620,4 +620,112 @@
         WHERE  a.register_mobile_phone = #{mobilePhone}
     </select>
 
+
+
+    <select id="queryCuserOrderByUserIdOrderIng" resultType="java.util.Map">
+
+        SELECT
+            COUNT(*) as count
+        FROM
+            (
+            (
+            SELECT
+            a.order_id orderId,
+            a.order_status STATUS,
+            '1' type,
+            ifnull(sum(d.money), 0) money,
+            '0' score,
+            a.address address,
+            ifnull(sum(d.weight), 0) weight,
+            e. NAME NAME,
+            a.create_time createTime
+            FROM
+            xzx_order_info a
+            LEFT JOIN xzx_order_item_info d ON a.order_id = d.order_id
+            LEFT JOIN xzx_user_info e ON e.user_id = a.receiver
+            WHERE
+            a.create_user_id=#{userId}
+            and a.order_status in (1,2,3)
+            GROUP BY
+            a.order_id
+            )
+            UNION
+            (
+            SELECT
+            a.id orderId,
+            a. STATUS STATUS,
+            '2' type,
+            '0' money,
+            ifnull(sum(d.score), 0) score,
+            a.address address,
+            ifnull(sum(d.weight), 0) weight,
+            a.username NAME,
+            a.CREATED_TIME createTime
+            FROM
+            xzx_jhy_order a
+            LEFT JOIN xzx_jhy_order_items d ON a.id = d.order_id
+            WHERE
+            a.user_id = #{userId}
+            and a.status in (1,2)
+            GROUP BY
+            a.id
+            )
+            ) v
+        ORDER BY
+            createTime DESC
+    </select>
+
+    <select id="queryCuserOrderByUserIdOrderDone" resultType="java.util.Map">
+
+        SELECT
+            COUNT(*) as count
+        FROM
+            (
+            (
+            SELECT
+            a.order_id orderId,
+            a.order_status STATUS,
+            '1' type,
+            ifnull(sum(d.money), 0) money,
+            '0' score,
+            a.address address,
+            ifnull(sum(d.weight), 0) weight,
+            e. NAME NAME,
+            a.create_time createTime
+            FROM
+            xzx_order_info a
+            LEFT JOIN xzx_order_item_info d ON a.order_id = d.order_id
+            LEFT JOIN xzx_user_info e ON e.user_id = a.receiver
+            WHERE
+            a.create_user_id=#{userId}
+            and a.order_status in (4,5,7)
+            GROUP BY
+            a.order_id
+            )
+            UNION
+            (
+            SELECT
+            a.id orderId,
+            a. STATUS STATUS,
+            '2' type,
+            '0' money,
+            ifnull(sum(d.score), 0) score,
+            a.address address,
+            ifnull(sum(d.weight), 0) weight,
+            a.username NAME,
+            a.CREATED_TIME createTime
+            FROM
+            xzx_jhy_order a
+            LEFT JOIN xzx_jhy_order_items d ON a.id = d.order_id
+            WHERE
+            a.user_id = #{userId}
+            and a.status = 3
+            GROUP BY
+            a.id
+            )
+            ) v
+        ORDER BY
+            createTime DESC
+    </select>
+
 </mapper>

--
Gitblit v1.9.1