From 52b31d09cd0270e2b488b82da39ebdf4ade3d3f3 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 22 Sep 2022 16:48:55 +0800
Subject: [PATCH] 20220902

---
 src/main/resources/mapper/modules/MallTeamLeaderMapper.xml |   60 ++++++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 48 insertions(+), 12 deletions(-)

diff --git a/src/main/resources/mapper/modules/MallTeamLeaderMapper.xml b/src/main/resources/mapper/modules/MallTeamLeaderMapper.xml
index fcd5bac..f95435a 100644
--- a/src/main/resources/mapper/modules/MallTeamLeaderMapper.xml
+++ b/src/main/resources/mapper/modules/MallTeamLeaderMapper.xml
@@ -22,6 +22,7 @@
     <select id="selectApiLeaderListInPage" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
         select
         a.*,
+        b.longlatiarr,
         ROUND(
             6378.138 * 2 * ASIN(
                 SQRT(
@@ -32,8 +33,9 @@
             ) * 1000
         ) AS distance
         from mall_team_leader a
+        left join mall_electronic_fence b on b.team_leader_code = a.unique_code
         <where>
-            a.state = 1
+            a.state = 1 and a.online_state = 1
             <if test="record.query != null and record.query != ''">
                 and (a.name like CONCAT('%', CONCAT(#{record.query}, '%'))
                     or a.phone like CONCAT('%', CONCAT(#{record.query}, '%'))
@@ -111,15 +113,7 @@
         inner join mall_order_item b on a.id=b.order_id
         inner join mall_member c on a.take_unique_code=c.invite_id
         <where>
-            a.del_flag=2
-            and a.delivery_type = 1
-            and c.id=#{record.memberId}
-            <if test="record.query != null and record.query != ''">
-                and ( a.name like CONCAT('%', CONCAT(#{record.query}, '%'))
-                    or a.phone like CONCAT('%', CONCAT(#{record.query}, '%'))
-                    or a.take_code like CONCAT('%', CONCAT(#{record.query}, '%'))
-                    )
-            </if>
+            c.id=#{record.memberId}
             <if test="record.status == 4 and record.status != 0">
                 and a.status = 4
             </if>
@@ -135,9 +129,17 @@
             <if test="record.status == 0">
                 and a.status in (2,3,4)
             </if>
+            <if test="record.query != null and record.query != ''">
+                and ( a.name like CONCAT('%', CONCAT(#{record.query}, '%'))
+                    or a.phone like CONCAT('%', CONCAT(#{record.query}, '%'))
+                    or a.take_code like CONCAT('%', CONCAT(#{record.query}, '%'))
+                    or b.goods_name like CONCAT('%', CONCAT(#{record.query}, '%'))
+                    )
+            </if>
             <if test="record.orderType != null">
                 and a.order_type=#{record.orderType}
             </if>
+            and a.delivery_type = 1
         </where>
         order by a.created_time desc
     </select>
@@ -146,7 +148,7 @@
         select
             a.*
         from mall_team_leader a
-        where a.state = 1
+        where a.state = 1 and a.online_state = 1
     </select>
 
     <select id="selectLeaderByUniqueCode" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
@@ -169,7 +171,7 @@
         ) * 1000
         ) AS distance
         from mall_team_leader a
-        where a.state = 1
+        where a.state = 1 and a.online_state = 1
         order by distance ASC limit 1
     </select>
 
@@ -178,4 +180,38 @@
         where a.team_leader_id = #{record.teamLeaderId}
     </select>
 
+    <select id="selectLeaderByUniqueCodeAndOrderBycreateTime" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
+        select
+            a.*
+        from mall_team_leader a
+        where a.unique_code = #{uniqueCode}
+        order by a.CREATED_TIME desc
+        limit 1
+    </select>
+
+    <select id="selectByFenceIdAndFenceNameAndLonAndLat" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
+        select
+            a.*,
+            ROUND(
+                        6378.138 * 2 * ASIN(
+                            SQRT(
+                                        POW(SIN((#{latitude} * PI() / 180 - a.latitude * PI() / 180) / 2),2)
+                                        + COS(40.0497810000 * PI() / 180) * COS(a.latitude * PI() / 180)
+                                            * POW(SIN((#{longitude}  * PI() / 180 - a.longitude * PI() / 180) / 2),2)
+                                )
+                        ) * 1000
+                ) AS distance
+        from mall_team_leader a
+        inner join mall_electronic_fence b on b.team_leader_code = a.unique_code
+        where b.gid = #{fenceId}
+        and b.fence_name = #{fenceName}
+    </select>
+
+    <select id="getAllMallTeamLeaderList" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
+        select
+            a.*
+        from mall_team_leader a
+        where a.state = 1
+    </select>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1