From 34f99d106551b51bf2af3bbd40c64624a3af25eb Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期六, 09 九月 2023 09:43:57 +0800
Subject: [PATCH] #

---
 src/main/resources/mapper/OrderMapper.xml |  109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 109 insertions(+), 0 deletions(-)

diff --git a/src/main/resources/mapper/OrderMapper.xml b/src/main/resources/mapper/OrderMapper.xml
index db34d6c..091faa1 100644
--- a/src/main/resources/mapper/OrderMapper.xml
+++ b/src/main/resources/mapper/OrderMapper.xml
@@ -27,7 +27,116 @@
         <result column="update_by" property="updateBy" />
         <result column="update_time" property="updateTime" />
         <result column="memo" property="memo" />
+        <result column="transaction_rate" property="transactionRate" />
 
     </resultMap>
 
+    <select id="selectByUuid" resultMap="BaseResultMap">
+        select * from man_order
+        where 1=1
+        and uuid = #{uuid}
+        <if test="hostId != null">
+            and host_id = #{hostId}
+        </if>
+    </select>
+
+    <select id="selectOrderByNewestUuid" resultMap="BaseResultMap">
+        select top 1 * from man_order
+        where 1=1
+        <if test="hostId != null">
+            and host_id = #{hostId}
+        </if>
+        order by uuid + 0 desc
+    </select>
+
+    <select id="listByPage" resultMap="BaseResultMap">
+        SELECT
+        mo.*
+        FROM man_order mo
+        LEFT JOIN sys_dept sd ON mo.dept_id = sd.id
+        WHERE 1=1
+        <choose>
+            <when test="deptId != null and deptId != ''">
+                AND (CHARINDEX(','+#{deptId}+',', ','+sd.path+',') > 0 OR sd.id = #{deptId})
+                or
+                (
+                    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
+                    mo.id in
+                    (
+                        select
+                        order_id
+                        from man_order_foll
+                        where 1=1
+                        and user_id = #{userId}
+                    )
+                )
+            </otherwise>
+        </choose>
+        <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.remarks like concat('%',#{condition},'%')
+            or mo.addr like concat('%',#{condition},'%')
+            )
+        </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