From f37e7e5c00cb8196ff978f8eac2aab3fe9465b0d Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Fri, 03 Nov 2023 10:04:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml |   71 ++++++++++++++++++++++++-----------
 1 files changed, 48 insertions(+), 23 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 f5a81fd..71bf634 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
+++ b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
@@ -20,7 +20,7 @@
 
     <!--根据社区名称查询小区集合-->
     <select id="getDistrictList" resultType="org.springblade.common.node.TreeNode" >
-        select aoi_code as id,aoi_name as name from jczz_doorplate_address
+        select aoi_code as id,aoi_name as name,1 as addressType from jczz_doorplate_address
         where 1=1
         and aoi_name !=''
         and aoi_code !=''
@@ -33,7 +33,7 @@
         group by aoi_code,aoi_name
         union all
         (
-        select aoi_code as id,sub_aoi as name from jczz_doorplate_address
+        select aoi_code as id,sub_aoi as name,1 as addressType from jczz_doorplate_address
         where 1=1
         and aoi_code !=''
         and sub_aoi != ''
@@ -47,7 +47,7 @@
         )
         union all
         (
-        select nei_code as id,'自建房/商铺' as name from jczz_doorplate_address
+        select nei_code as id,'自建房/商铺' as name,2 as addressType from jczz_doorplate_address
         where 1=1
         and aoi_code is null
         <if test="name != null and name!=''">
@@ -60,36 +60,60 @@
         )
     </select>
 
-    <!--根据小区名称查询楼栋集合-->
+    <!--根据小区名称查询楼栋/商铺集合-->
     <select id="getBuildingList" resultType="org.springblade.common.node.TreeNode" >
-        select building_code as id,building_name as name,1 as addressType from jczz_doorplate_address
-        where 1=1
-        and aoi_code = #{code}
-        and building_code !=''
-        and building_name !=''
-        group by building_code,building_name
-        order by building_name
+        (
+            select building_code as id,building_name as name,1 as addressType from jczz_doorplate_address
+            where 1=1
+            and aoi_code = #{code}
+            and building_code !=''
+            and building_name !=''
+            and doorplate_type = '户室牌'
+            group by building_code,building_name
+            order by building_name
+        )
+        union all
+        (
+            select address_code as id,doorplate_name as name,2 as addressType from jczz_doorplate_address
+            where 1=1
+            and aoi_code = #{code}
+            and building_name is null
+            and (doorplate_type = '小门牌' or (doorplate_type = '中门牌' and address_level = 1))
+        )
     </select>
 
     <!--查询户室及住户相关信息,单元中包含住户-->
     <select id="getUnitHouseholdList" resultType="org.springblade.modules.doorplateAddress.vo.FuncNode" >
-        select
-        jda.unit_code unitCode,jda.floor,jda.house_name as houseNo,jda.address_code addressCode,
-        jh.name as realName,jh.role_type as roleType
-        from jczz_doorplate_address jda
-        left join
-			(select house_code,name,role_type from jczz_household where role_type = '业主') jh
-		on jda.address_code = jh.house_code
-        where 1=1 and floor != '' and house_name != ''
-        and building_code = #{code}
+        (
+            select
+            jda.unit_code unitCode,jda.floor,jda.house_name as houseNo,jda.address_code addressCode,
+            jh.name as realName,jh.role_type as roleType,1 as addressType
+            from jczz_doorplate_address jda
+            left join
+                (select house_code,name,role_type from jczz_household where role_type = '业主') jh
+            on jda.address_code = jh.house_code
+            where 1=1
+            and floor != ''
+            and house_name != ''
+            and doorplate_type = '户室牌'
+            and building_code = #{code}
+        )
+        union all
+        (
+            select address_code as unitCode,doorplate_name as floor,'' as houseNo,address_code as addressCode,
+            '' as realName,'' as roleType,2 as addressType
+            from jczz_doorplate_address
+            where 1=1
+            and building_code = #{code}
+            and building_name != ''
+            and (doorplate_type = '小门牌' or (doorplate_type = '中门牌' and address_level = 1))
+        )
     </select>
 
     <!--先查询门牌信息-->
     <select id="getDoorplateAddressDetailByCode" resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO">
         select * from jczz_doorplate_address where address_code = #{code}
     </select>
-
-
 
     <select id="getTownStreetVOTreeList"
             resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree">
@@ -107,8 +131,8 @@
         and street_ru_code is not null and street_ru_code !=''
         and street_ru_name is not null and street_ru_name !=''
         GROUP BY street_ru_code,street_ru_name
-
     </select>
+
     <select id="getDistrictVOTreeList"
             resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree">
         SELECT aoi_code as code,aoi_name as name
@@ -118,6 +142,7 @@
         and aoi_name is not null and aoi_name !=''
        GROUP BY aoi_code,aoi_name
     </select>
+
     <select id="getBuildingVOTreeList"
             resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree">
         SELECT building_code as code,building_name as name

--
Gitblit v1.9.3