From b3b566ebdfed4005aaa513da3d5d2fd3924903cc Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Wed, 31 Jan 2024 16:17:54 +0800
Subject: [PATCH] 拿不到地址总表数据,不设置网格信息

---
 src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml |  210 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 159 insertions(+), 51 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 979b556..96c2113 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>
 
@@ -15,16 +16,15 @@
     <select id="selectPlacePage" resultType="org.springblade.modules.place.vo.PlaceVO">
         select
         jp.*,
+        jpe.id as placeExtId,
         bu.real_name as username,bu.phone as phone,
-        bx.real_name as createUserName,
         br.town_name as townStreetName,br.name as neiName,
-        jpe.confirm_flag confirmFlag
+        jpe.confirm_flag confirmFlag,
+        jg.grid_name as gridName
         from jczz_place jp
         left join blade_user bu on bu.id = jp.principal_user_id and bu.is_deleted = 0
-        left join blade_user bx on bx.id = jp.create_user and bx.is_deleted = 0
-        LEFT JOIN jczz_place_ext jpe on jpe.place_id=jp.id
-        left join jczz_grid_range jgr on jgr.house_code = jp.house_code
-        left join jczz_grid jg on jg.id = jgr.grid_id and jg.is_deleted = 0
+        left join jczz_place_ext jpe on jpe.place_id=jp.id and jpe.is_deleted = 0
+        left join jczz_grid jg on jg.grid_code = jp.grid_code and jg.is_deleted = 0
         left join blade_region br on br.code = jg.community_code
         left join (
         select a.* from jczz_place_poi_label a inner join
@@ -32,26 +32,8 @@
         select place_id,max(id) as id from jczz_place_poi_label b group by place_id
         ) b on a.id = b.id
         ) jppl on jppl.place_id = jp.id
-        where jp.is_deleted = 0
-        <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>
+        where jp.is_deleted = 0 and jp.source!=3
+        and jp.place_name != ''
         <if test="place.placeName!=null and place.placeName!=''">
             and jp.place_name like concat('%',#{place.placeName},'%')
         </if>
@@ -62,7 +44,7 @@
             and jp.principal_phone like concat('%',#{place.principalPhone},'%')
         </if>
         <if test="place.houseCode!=null and place.houseCode!=''">
-            and jp.house_code = #{place.houseCode}
+            and jp.house_code like concat('%',#{place.houseCode},'%')
         </if>
         <if test="place.townStreetName!=null and place.townStreetName!=''">
             and br.town_name like concat('%',#{place.townStreetName},'%')
@@ -73,24 +55,35 @@
         <if test="place.id!=null">
             and jp.id = #{place.id}
         </if>
+        <if test="place.source!=null">
+            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>
-        order by jpe.create_time desc
+        <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="isAdministrator==2">
+            <choose>
+                <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                    and jg.grid_code in
+                    <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                        #{code}
+                    </foreach>
+                </when>
+                <otherwise>
+                    and jg.grid_code in ('')
+                </otherwise>
+            </choose>
+        </if>
+        order by jp.create_time desc,jp.id desc
     </select>
 
     <!--查询场所集合信息-->
@@ -98,13 +91,12 @@
         SELECT jp.id,
                jp.house_code      houseCode,
                jp.place_name AS   NAME,
-               jpr.doorplate_num  doorplateType,
-               jda.address_level  addressLevel,
-               jpr.community_name neiName,
+               jp.is_nine AS isNine,
+               br.name neiName,
                FALSE         AS   hasChildren
         FROM jczz_place jp
-                 LEFT JOIN jczz_place_rel jpr ON jp.id = jpr.place_id
-                 LEFT JOIN jczz_doorplate_address jda on jp.house_code = jda.address_code
+                 LEFT JOIN jczz_grid jg on jp.grid_code = jg.grid_code and jg.is_deleted = 0
+                 LEFT JOIN blade_region br on br.code = jg.community_code
         where 1 = 1
           and jp.is_deleted = 0
           and jp.principal_user_id = #{userId}
@@ -139,18 +131,23 @@
         select
         jp.*,
         bu.real_name as username,bu.phone as phone,
-        jppl.id as plid,jppl.*,jc.category_name as labelName,
-        br.code as neiCode,jg.id as gridId
+        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
         from jczz_place jp
         left join blade_user bu on bu.id = jp.principal_user_id and bu.is_deleted = 0
         left join jczz_place_poi_label jppl on jppl.place_id = jp.id
         left join jczz_category jc on jc.category_no = jppl.poi_code
-        left join jczz_grid_range jgr on jgr.house_code = jp.house_code
-        left join jczz_grid jg on jg.id = jgr.grid_id and jg.is_deleted = 0
+        left join jczz_grid jg on jp.grid_code = jg.grid_code and jg.is_deleted = 0
         left join blade_region br on br.code = jg.community_code
         where jp.is_deleted = 0
         <if test="place.houseCode!=null and place.houseCode!=''">
-            and jp.house_code = #{place.houseCode}
+            and jp.house_code like concat('%',#{place.houseCode},'%')
         </if>
         <if test="place.id!=null">
             and jp.id = #{place.id}
@@ -184,4 +181,115 @@
         left join blade_user bu on bu.id = jp.principal_user_id and bu.is_deleted = 0
         where jp.is_deleted = 0 and jp.principal_user_id is not null
     </select>
+
+    <!--查询所有的场所数据(除去详情表已有的)-->
+    <select id="getPlaceListByNoExt" resultType="org.springblade.modules.place.entity.PlaceEntity">
+        select
+        jp.*
+        from jczz_place jp
+        LEFT JOIN jczz_place_ext jpe on jpe.place_id=jp.id and jpe.is_deleted = 0
+        where jp.is_deleted = 0 and jpe.id is null
+    </select>
+
+    <!--商超数据处理-->
+    <select id="placeAndRelHandle" resultType="org.springblade.modules.place.entity.PlaceEntity">
+        select jp.* from jczz_place jp
+        left join jczz_place_rel jpr on jp.id = jpr.place_id and jpr.is_deleted =0
+        where jpr.id is not null
+        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