From 88e7bb7f517bf1f0ec39ac257e35e485392d55d1 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Sat, 04 Nov 2023 16:19:54 +0800
Subject: [PATCH] 房屋即房屋标签操作修改

---
 src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml |  107 +++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 78 insertions(+), 29 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..62fc194 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
@@ -130,7 +155,7 @@
 
     <!--根据社区查询街路巷集合-->
     <select id="getStreetRuList" resultType="org.springblade.common.node.TreeNode" >
-        select street_ru_code as id,street_ru_name as name,2 as addressType from jczz_doorplate_address
+        select street_ru_code as id,street_ru_name as name,3 as addressType from jczz_doorplate_address
         where 1=1
         and aoi_code is null
         <if test="name != null and name!=''">
@@ -144,11 +169,35 @@
 
     <!--根据街路巷编号查询街路巷门牌名称集合-->
     <select id="getDoorplateNameList" resultType="org.springblade.modules.doorplateAddress.vo.FuncNode">
-        select address_code as addressCode,doorplate_name as houseNo from jczz_doorplate_address
-        where 1=1
-		and street_ru_code = #{code}
-		and nei_code = #{name}
-		and aoi_code is null
+      select address_code as addressCode,doorplate_name as floor from jczz_doorplate_address
+      where 1=1
+      and street_ru_code = #{code}
+      and nei_code = #{name}
+      and aoi_code is null
+    </select>
+
+    <select id="getDoorplateAddressDetail"
+            resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO">
+        SELECT * FROM jczz_doorplate_address
+        WHERE 1=1
+        <if test="vo.stdId != null and vo.stdId != ''">
+            AND address_code = #{vo.stdId}
+        </if>
+        <if test="vo.buildingCode != null and vo.buildingCode !='' ">
+            AND building_code = #{vo.buildingCode}
+        </if>
+    </select>
+
+    <select id="getDoorplateAddressList"
+            resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO">
+        SELECT * FROM jczz_doorplate_address
+        WHERE 1=1
+        <if test="vo.stdId != null and vo.stdId != ''">
+            AND address_code = #{vo.stdId}
+        </if>
+        <if test="vo.buildingCode != null and vo.buildingCode !='' ">
+            AND building_code = #{vo.buildingCode}
+        </if>
     </select>
 
 </mapper>

--
Gitblit v1.9.3