From d0b0e00e40226700a0ffa1f1671a8dc273610f67 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Mon, 18 Dec 2023 14:28:10 +0800
Subject: [PATCH] 菜单分类优化

---
 src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml |   51 ++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 34 insertions(+), 17 deletions(-)

diff --git a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
index 7118c6d..cd9f2b1 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
+++ b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
@@ -36,6 +36,15 @@
     <!--自定义分页查询-->
     <select id="selectDoorplateAddressPage" resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO">
         select * from jczz_doorplate_address where 1=1
+        <if test="doorplateAddress.aoiName!=null and doorplateAddress.aoiName!=''">
+            and aoi_name like concat('%',#{doorplateAddress.aoiName},'%')
+        </if>
+        <if test="doorplateAddress.addressName!=null and doorplateAddress.addressName!=''">
+            and address_name like concat('%',#{doorplateAddress.addressName},'%')
+        </if>
+        <if test="doorplateAddress.townStreetCode != null and doorplateAddress.townStreetCode != ''">
+            and town_street_code like concat('%',#{doorplateAddress.townStreetCode},'%')
+        </if>
     </select>
 
 
@@ -244,6 +253,7 @@
       and street_ru_code = #{houseParam.code}
       and nei_code = #{houseParam.name}
       and aoi_code is null
+      and doorplate_type = '中门牌'
       <include refid="filterHouseGrid"/>
       order by doorplate_num,sub_door_plate_no
     </select>
@@ -280,7 +290,11 @@
 
     <!--查询社区信息-->
     <select id="getAllDoorplateAddress" resultType="org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity">
-        select * from jczz_doorplate_address where nei_name = #{name}
+        select * from jczz_doorplate_address
+        where 1=1
+        <if test="name!=null and name!=''">
+            and nei_name = #{name}
+        </if>
     </select>
 
     <!--获取房屋树-->
@@ -341,11 +355,11 @@
 
     <!--查询所有户室数据-->
     <select id="getHouseList" resultType="org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity">
-        select * from jczz_doorplate_address
-        where 1=1 and doorplate_type = '户室牌'
-        and address_code not in (
-            select house_code from jczz_house
-        )
+        select jda.* from jczz_doorplate_address jda
+        left join jczz_house jh on jh.house_code = jda.address_code
+        where 1=1
+        and jh.house_code is null
+        and doorplate_type = '户室牌'
     </select>
 
     <!--查询商超-->
@@ -417,19 +431,22 @@
 
     <!--查询所有的地址表和场所表差集集合(小区和非小区的)-->
     <select id="getPlaceList" resultType="org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity">
-        select jda.* from jczz_doorplate_address jda
-        left join jczz_place jp on jp.house_code = jda.address_code and jp.is_deleted =0
-        where 1=1
-        and jp.house_code is null
-        and (doorplate_type = '小门牌' or (doorplate_type = '中门牌' and address_level = 1))
+        select
+        min(jda.id)
+        from jczz_doorplate_address jda
+				left join jczz_district jd on jda.aoi_code = jd.aoi_code
+        where jda.aoi_code != "" and jda.aoi_name !="" and jd.id is null
+				and (doorplate_type = '大门牌' or doorplate_type = '楼幢牌'  or doorplate_type = '中门牌' or doorplate_type = '单元牌')
+        GROUP BY jda.aoi_code
         union all
         (
-        select jda.* from jczz_doorplate_address jda
-        left join jczz_place jp on jp.house_code = jda.address_code and jp.is_deleted =0
-        where 1=1
-        and jp.house_code is null
-        and aoi_code is null
-		and doorplate_type='中门牌'
+        select
+        min(jda.id)
+        from jczz_doorplate_address jda
+				left join jczz_district jd on jda.aoi_code = jd.aoi_code
+        where jda.aoi_code != "" and jda.sub_aoi != ""
+				and (doorplate_type = '大门牌' or doorplate_type = '楼幢牌'  or doorplate_type = '中门牌')
+        group by jda.aoi_code
         )
     </select>
 </mapper>

--
Gitblit v1.9.3