From 0185fb8ca2086e80d54dbfabe399b6af684368d9 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Tue, 02 Jan 2024 20:25:19 +0800
Subject: [PATCH] 楼盘表新增住户标签

---
 src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml |   31 ++++++++++++++++++++++++-------
 src/main/java/org/springblade/modules/doorplateAddress/vo/FuncNode.java                  |    9 +++++++++
 2 files changed, 33 insertions(+), 7 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 8fbe960..aa4de06 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
+++ b/src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
@@ -179,17 +179,32 @@
         )
     </select>
 
+    <!--户室map-->
+    <resultMap id="houseFuncNodeMap" type="org.springblade.modules.doorplateAddress.vo.FuncNode" autoMapping="true" >
+        <id column="id" property="id"/>
+        <collection property="householdLabelList" javaType="java.util.List"
+                    ofType="org.springblade.modules.house.vo.HouseholdLabelVO" autoMapping="true">
+            <id property="id" column="cid"/>
+        </collection>
+    </resultMap>
+
     <!--查询户室及住户相关信息,单元中包含住户-->
-    <select id="getUnitHouseholdList" resultType="org.springblade.modules.doorplateAddress.vo.FuncNode" >
+    <select id="getUnitHouseholdList" resultMap="houseFuncNodeMap" >
         (
             select
-            ifnull(jda.unit_name,"未知单元") unitName,jda.unit_code unitCode,jda.floor,jda.house_name as houseNo,
+            jda.id,ifnull(jda.unit_name,"未知单元") unitName,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
+            jh.name as realName,jh.relationship as roleType,1 as addressType,
+            juhl.id as cid,juhl.house_code,juhl.label_id,juhl.label_name,juhl.color,juhl.household_id
             from jczz_doorplate_address jda
             left join
-                (select house_code,name,role_type from jczz_household where role_type = 1) jh
+            (
+                SELECT house_code, NAME, relationship FROM jczz_household WHERE id in(
+                    SELECT max(id) FROM jczz_household where relationship = 1 GROUP BY house_code
+                )
+            ) jh
             on jda.address_code = jh.house_code
+            left join jczz_user_house_label juhl on juhl.house_code = jda.address_code and lable_type=1
             where 1=1
             and floor != ''
             and house_name != ''
@@ -202,9 +217,11 @@
         )
         union all
         (
-            select '' as unitName,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
+            select jda2.id,'' as unitName,address_code as unitCode,doorplate_name as floor,'' as houseNo,address_code as addressCode,
+            '' as realName,'' as roleType,2 as addressType,
+            juhl.id as cid,juhl.house_code,juhl.label_id,juhl.label_name,juhl.color,juhl.household_id
+            from jczz_doorplate_address jda2
+            left join jczz_user_house_label juhl on juhl.house_code = jda2.address_code and lable_type=1
             where 1=1
             and building_code = #{houseParam.code}
             and building_name != ''
diff --git a/src/main/java/org/springblade/modules/doorplateAddress/vo/FuncNode.java b/src/main/java/org/springblade/modules/doorplateAddress/vo/FuncNode.java
index 4d2b9e2..4a187e1 100644
--- a/src/main/java/org/springblade/modules/doorplateAddress/vo/FuncNode.java
+++ b/src/main/java/org/springblade/modules/doorplateAddress/vo/FuncNode.java
@@ -1,12 +1,16 @@
 package org.springblade.modules.doorplateAddress.vo;
 
 import lombok.Data;
+import org.springblade.modules.house.vo.HouseholdLabelVO;
+
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.List;
 
 @Data
 public class FuncNode implements Serializable {
+
+	private Long id;
 
 	/**
 	 * 单元编号
@@ -63,4 +67,9 @@
 	 */
 	private List<FuncNode> children = new ArrayList<>();
 
+	/**
+	 * 标签
+	 */
+	private List<HouseholdLabelVO> householdLabelList = new ArrayList<>();
+
 }

--
Gitblit v1.9.3