From d46ca134f82fd106bfbbbd71aef7184805e6d7e7 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Fri, 19 Jan 2024 09:17:54 +0800
Subject: [PATCH] bug 修复

---
 src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml |  154 ++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 120 insertions(+), 34 deletions(-)

diff --git a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
index d34ab7d..dd8d62d 100644
--- a/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
+++ b/src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
@@ -8,6 +8,7 @@
         <collection property="placePoiLabelVOList" javaType="java.util.List" ofType="org.springblade.modules.place.vo.PlacePoiLabelVO"
         autoMapping="true">
             <id property="id" column="plid"/>
+            <result property="remark" column="cremark"/>
         </collection>
     </resultMap>
 
@@ -34,24 +35,11 @@
         ) b on a.id = b.id
         ) jppl on jppl.place_id = jp.id
         where jp.is_deleted = 0 and jp.source!=3
-        <if test="place.roleName!=null and place.roleName!='' and place.createUser!=null">
-            <choose>
-                <when test="place.roleName=='网格员'">
-                    and
-                    (
-                    jp.create_user = #{place.createUser}
-                    <if test="houseCodeList != null and houseCodeList.size()>0">
-                        or jp.house_code in
-                        <foreach collection="houseCodeList" item="houseCode" separator ="," open="("  close=")">
-                            #{houseCode}
-                        </foreach>
-                    </if>
-                    )
-                </when>
-                <otherwise>
-                    and jp.principal_user_id = #{place.createUser}
-                </otherwise>
-            </choose>
+        <if test="houseCodeList != null and houseCodeList.size()>0">
+            and jp.house_code in
+            <foreach collection="houseCodeList" item="houseCode" separator ="," open="("  close=")">
+                #{houseCode}
+            </foreach>
         </if>
         <if test="place.placeName!=null and place.placeName!=''">
             and jp.place_name like concat('%',#{place.placeName},'%')
@@ -78,24 +66,23 @@
             and jp.source = #{place.source}
         </if>
         <if test="place.isPerfect==1">
-            and
-            (
-            jp.place_name is null
-            or jp.image_urls is null
-            or jppl.poi_code is null
-            or bu.real_name is null
-            or bu.phone is null
-            )
+            and jp.status = 1
         </if>
         <if test="place.isPerfect==2">
-            and jp.place_name != ""
-            and jp.image_urls != ""
-            and jppl.poi_code is not null
-            and bu.real_name != ""
-            and bu.phone != ""
+            and jp.status = 2
         </if>
-        <if test="place.regionCode != null and place.regionCode !='' ">
-            and jg.community_code like concat('%',#{place.regionCode},'%')
+        <if test="isAdministrator==2">
+            <choose>
+                <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                    and jg.community_code in
+                    <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                        #{code}
+                    </foreach>
+                </when>
+                <otherwise>
+                    and jg.community_code in ('')
+                </otherwise>
+            </choose>
         </if>
         order by jp.create_time desc,jp.id desc
     </select>
@@ -145,7 +132,13 @@
         select
         jp.*,
         bu.real_name as username,bu.phone as phone,
-        jppl.id as plid,jppl.*,jc.category_name as labelName,
+        jppl.id as plid,
+        jppl.place_id,
+        jppl.poi_code,
+        jppl.type,
+        jppl.color,
+        jppl.remark as cremark,
+        jc.category_name as labelName,
         br.code as neiCode,jg.id as gridId
         from jczz_place jp
         left join blade_user bu on bu.id = jp.principal_user_id and bu.is_deleted = 0
@@ -208,4 +201,97 @@
         and jp.is_deleted = 0
         and jp.source !=3
     </select>
+
+    <!--根据标签编号集合查询对应的场所-->
+    <select id="getPlaceListByParam" resultType="org.springblade.modules.place.vo.PlaceVO">
+        select jp.*,jppl.poi_code as label from jczz_place jp
+        left join jczz_place_poi_label jppl on jppl.place_id = jp.id
+        where jp.is_deleted = 0 and jppl.type = 3
+        and jppl.color = 'green'
+        and jp.principal_user_id is not null
+        and jp.house_code != ''
+        and jp.id in (
+            select place_id from ${tableName} where is_deleted = 0 and source = 2 and TIMESTAMPDIFF( day, now(), create_time )=30
+        )
+        <choose>
+            <when test="list!=null and list.size()>0">
+                and jppl.poi_code in
+                <foreach collection="list" item="id" separator="," open="(" close=")">
+                    #{id}
+                </foreach>
+            </when>
+            <otherwise>
+                and jppl.poi_code in ('')
+            </otherwise>
+        </choose>
+        union all
+        (
+        select jp.*,jppl.poi_code as label from jczz_place jp
+        left join jczz_place_poi_label jppl on jppl.place_id = jp.id
+        where jp.is_deleted = 0 and jppl.type = 3
+        and jppl.color = 'yellow'
+        and jp.principal_user_id is not null
+        and jp.house_code != ''
+        and jp.id in (
+            select place_id from ${tableName} where is_deleted = 0 and source = 2 and TIMESTAMPDIFF( day, now(), create_time )=14
+        )
+        <choose>
+            <when test="list!=null and list.size()>0">
+                and jppl.poi_code in
+                <foreach collection="list" item="id" separator="," open="(" close=")">
+                    #{id}
+                </foreach>
+            </when>
+            <otherwise>
+                and jppl.poi_code in ('')
+            </otherwise>
+        </choose>
+        )
+        union all
+        (
+        select jp.*,jppl.poi_code as label from jczz_place jp
+        left join jczz_place_poi_label jppl on jppl.place_id = jp.id
+        where jp.is_deleted = 0 and jppl.type = 3
+        and jppl.color = 'red'
+        and jp.principal_user_id is not null
+        and jp.house_code != ''
+        and jp.id in (
+            select place_id from ${tableName} where is_deleted = 0 and source = 2 and TIMESTAMPDIFF( day, now(), create_time )=7
+        )
+        <choose>
+            <when test="list!=null and list.size()>0">
+                and jppl.poi_code in
+                <foreach collection="list" item="id" separator="," open="(" close=")">
+                    #{id}
+                </foreach>
+            </when>
+            <otherwise>
+                and jppl.poi_code in ('')
+            </otherwise>
+        </choose>
+        )
+        union all
+        (
+        select jp.*,jppl.poi_code as label from jczz_place jp
+        left join jczz_place_poi_label jppl on jppl.place_id = jp.id
+        where jp.is_deleted = 0 and jppl.type = 3
+        and jp.principal_user_id is not null
+        and jp.house_code != ''
+        and (jppl.color = 'green' or jppl.color = 'yellow' or jppl.color = 'red')
+        and jp.id not in (
+            select place_id from ${tableName} where is_deleted = 0 and source = 2 and place_id is not null group by place_id
+        )
+        <choose>
+            <when test="list!=null and list.size()>0">
+                and jppl.poi_code in
+                <foreach collection="list" item="id" separator="," open="(" close=")">
+                    #{id}
+                </foreach>
+            </when>
+            <otherwise>
+                and jppl.poi_code in ('')
+            </otherwise>
+        </choose>
+        )
+    </select>
 </mapper>

--
Gitblit v1.9.3