From afa3bc1e2f39f66f59ee9b15d6af16593acdc9a4 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期六, 02 十二月 2023 10:38:27 +0800
Subject: [PATCH] #

---
 src/main/resources/mapper/OrderMapper.xml |   69 +++++++++++++++++++++++++++++++---
 1 files changed, 63 insertions(+), 6 deletions(-)

diff --git a/src/main/resources/mapper/OrderMapper.xml b/src/main/resources/mapper/OrderMapper.xml
index 20f3343..1f8c3b4 100644
--- a/src/main/resources/mapper/OrderMapper.xml
+++ b/src/main/resources/mapper/OrderMapper.xml
@@ -27,6 +27,9 @@
         <result column="update_by" property="updateBy" />
         <result column="update_time" property="updateTime" />
         <result column="memo" property="memo" />
+        <result column="transaction_rate" property="transactionRate" />
+        <result column="order_product_type_id" property="orderProductTypeId" />
+        <result column="memo_experience" property="memoExperience" />
 
     </resultMap>
 
@@ -56,13 +59,30 @@
         WHERE 1=1
         <choose>
             <when test="deptId != null and deptId != ''">
-                AND (CHARINDEX(','+#{deptId}+',', ','+sd.path+',') > 0 OR sd.id = #{deptId})
+                AND (   (CHARINDEX(','+#{deptId}+',', ','+sd.path+',') > 0 OR sd.id = #{deptId})
+                or
+                (
+                    mo.user_id = #{userId}
+                    or
+                    mo.id in
+                    (
+                        select
+                        order_id
+                        from man_order_foll
+                        where 1=1
+                        and user_id = #{userId}
+                    )
+                ))
             </when>
             <otherwise>
                 and
                 (
-                    user_id = #{userId}
-                    or
+                    <if test="userId != null and userId != ''">
+                        mo.user_id = #{userId}
+                        or
+                        mo.director = #{userId}
+                        or
+                    </if>
                     mo.id in
                     (
                         select
@@ -77,18 +97,55 @@
         <if test="hostId != null">
             and mo.host_id = #{hostId}
         </if>
+        <if test="status != null">
+            and mo.status = #{status}
+        </if>
         <if test="condition != null and condition != ''">
             and (
             mo.uuid like concat('%',#{condition},'%')
             or mo.name like concat('%',#{condition},'%')
-            or mo.tel like concat('%',#{condition},'%')
-            or mo.contacts like concat('%',#{condition},'%')
             or mo.remarks like concat('%',#{condition},'%')
-            or mo.director like concat('%',#{condition},'%')
             or mo.addr like concat('%',#{condition},'%')
             )
         </if>
+        <if test="director != null and director != ''">
+            or mo.director = #{director}
+        </if>
         ORDER BY mo.create_time DESC
     </select>
 
+    <select id="selectMoneyByYearAndStatus" resultType="java.lang.Double">
+        select sum(money) money from man_order
+        where year(create_time) = #{year}
+        and status = #{status}
+    </select>
+
+    <select id="selectMoneyByUserAndYearAndStatus" resultType="java.lang.Double">
+        select sum(money) money from man_order
+        where year(create_time) = #{year}
+        and status = #{status}
+        and user_id = #{userId}
+    </select>
+
+    <select id="selectCountByUserYearAndStatus" resultType="java.lang.Integer">
+        select count(*) num from man_order
+        where year(create_time) = #{year}
+        and status = #{status}
+        and user_id = #{userId}
+    </select>
+
+    <select id="selectTopMoney" resultMap="BaseResultMap">
+        select top 7 user_id,sum(money) money from man_order
+        where status = 1
+        group by user_id
+        order by money desc
+    </select>
+
+    <select id="selectCurrentYearMonthSuccess" resultType="java.util.HashMap">
+        select month(create_time) mon,sum(money) money from man_order
+        where year(create_time) = year(GETDATE())
+        and status = 1
+        group by month(create_time)
+    </select>
+
 </mapper>

--
Gitblit v1.9.1