From d6001eac15349a55a01b5ff781b1fcf285b32efe Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 31 Oct 2023 19:06:44 +0800
Subject: [PATCH] Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/jczz_app

---
 api/doorplateAddress/doorplateAddress.js |   32 +
 subPackage/house/roomDetails/index.vue   |   89 +-
 pages/home/index.vue                     |  868 ++++++++++++++--------------
 subPackage/bs/views/rentDetail.vue       |  116 +++
 subPackage/house/family/index.vue        |  475 +++++----------
 subPackage/house/list/index.vue          |  187 +++--
 6 files changed, 885 insertions(+), 882 deletions(-)

diff --git a/api/doorplateAddress/doorplateAddress.js b/api/doorplateAddress/doorplateAddress.js
index a8c9cf3..5ad328d 100644
--- a/api/doorplateAddress/doorplateAddress.js
+++ b/api/doorplateAddress/doorplateAddress.js
@@ -10,4 +10,36 @@
 			roleName
 		}
 	})
+}
+
+export const getHouseList = (type, name) => {
+	return http.request({
+		url: '/blade-doorplateAddress/doorplateAddress/getHousesList',
+		method: 'GET',
+		params: {
+			type,
+			name
+		}
+	})
+}
+
+export const getHouseInfoList = (type, code) => {
+	return http.request({
+		url: '/blade-doorplateAddress/doorplateAddress/getHousesList',
+		method: 'GET',
+		params: {
+			type,
+			code
+		}
+	})
+}
+
+export const getHouseRentInfo = (code) => {
+	return http.request({
+		url: '/blade-doorplateAddress/doorplateAddress/getHouseRentInfo',
+		method: 'GET',
+		params: {
+			code
+		}
+	})
 }
\ No newline at end of file
diff --git a/pages/home/index.vue b/pages/home/index.vue
index 14c76d4..7c720ab 100644
--- a/pages/home/index.vue
+++ b/pages/home/index.vue
@@ -1,430 +1,440 @@
-<template>
-	<view class="container">
-		<u-navbar height="48" bgColor="#5887f9" :autoBack="false" safeAreaInsetTop placeholder>
-			<view slot="left">
-				<u--text color="#ffffff" text="基层智治" size="18" />
-			</view>
-		</u-navbar>
-
-		<view class="main">
-			<view class="main-bg">
-
-			</view>
-
-			<view class="main-select" @click="selectBoxShow = !selectBoxShow">
-				<u-icon name="map" color="#fff"></u-icon>
-				<view>
-					当前场所:{{curSelectSite.name?curSelectSite.name:'暂无绑定场所信息'}}
-				</view>
-
-				<u-picker title="场所" :show="selectBoxShow" keyName="name" ref="uPicker" :columns="siteColumns"
-					@confirm="confirm" @change="changeHandler"></u-picker>
-			</view>
-
-			<view class="main-btn">
-				<menu-list :menuData="btnList"></menu-list>
-			</view>
-
-			<view class="main-phone-house">
-				<view v-if="gridDataList.length>0" class="phone-box">
-					<grid-menu :gridData='item' v-for="(item, index) in gridDataList" :key='index'></grid-menu>
-				</view>
-
-				<view v-if="hasMenu('楼盘表').length>0" class="house-box">
-					<box-title :title="'楼盘表'"></box-title>
-					<view class="content">
-						<grid-menu :gridData='item' v-for="(item, index) in houseDataList" :key='index'></grid-menu>
-					</view>
-				</view>
-			</view>
-
-			<view class="main-bt pb-40">
-				<view v-if="liveList.length>0" class="mt-20">
-					<box-title :title="'生活'">
-						<template slot="titleMore">
-							<view style="color: red;">titleMore</view>
-						</template>
-					</box-title>
-					<view class="mt-20">
-						<view class="mt-20 b-c-w">
-							<menu-list :menuData="liveList"></menu-list>
-						</view>
-					</view>
-				</view>
-
-				<view v-if="jobList.length>0" class="mt-20">
-					<box-title :title="'工作台'"></box-title>
-
-					<view class="mt-20 b-c-w">
-						<menu-list :border='true' :menuData="jobList"></menu-list>
-					</view>
-				</view>
-
-				<view class="mt-20 main-taska">
-					<box-title :title="'我的任务'"></box-title>
-
-					<view class="mt-20 b-c-w">
-						<view class="flex">
-							<view class="flex-1" v-for="(item, index) in taskTypeList" :key='index'>
-								<cur-menu class='boder-f7f8f9-1 p-all-16' :curMenu="item" :imgShow="false"
-									:textShow="true"></cur-menu>
-							</view>
-						</view>
-						<u-cell-group :border='false'>
-							<u-cell class="boder-f7f8f9-1" :border='false' :title="item.title"
-								v-for="(item, index) in taskList" :key="index">
-								<view slot="right-icon">待处理 {{item.num}}</view>
-							</u-cell>
-						</u-cell-group>
-					</view>
-
-				</view>
-			</view>
-		</view>
-
-		<tabBar @change='change' :currentTab="0"></tabBar>
-	</view>
-</template>
-
-<script>
-	import tabBar from "@/components/tabBar/tabBar.vue";
-	import curMenu from "@/components/curMenu/index.vue";
-	import menuList from "@/components/menuList/index.vue";
-	import gridMenu from "@/components/gridMenu/index.vue";
-	import {
-		getFuncList
-	} from "@/api/doorplateAddress/doorplateAddress";
-
-	export default {
-		components: {
-			tabBar,
-			curMenu,
-			menuList,
-			gridMenu
-		},
-
-		data() {
-			return {
-				menuList: [],
-				selectRole: {},
-				selectBoxShow: false,
-				siteColumns: [],
-				curSelectSite: {},
-				columnData: [],
-				btnList: [{
-						imgUrl: '/static/img/sys.png',
-						title: '扫一扫',
-						imgWidth: 54,
-						imgHeight: 54
-					},
-					{
-						imgUrl: '/static/img/bs.png',
-						title: '报事',
-						imgWidth: 54,
-						imgHeight: 54
-					}
-				],
-				gridDataList: [],
-
-				houseDataList: [{
-						title: '万达广场',
-						useSlot: true
-					},
-					{
-						title: '万达晶座',
-						useSlot: true
-					},
-					{
-						title: '万达华府',
-						useSlot: true
-					},
-					{
-						title: '万达华府',
-						useSlot: true
-					}
-				],
-
-				liveList: [],
-
-				jobList: [],
-
-				taskTypeList: [{
-						title: '一次性',
-						num: 1,
-					},
-					{
-						title: '周期性',
-						num: 0,
-					}
-				],
-
-				taskList: [{
-						title: '综治任务',
-						num: 0
-					},
-					{
-						title: '住建任务',
-						num: 0
-					},
-					{
-						title: '公安任务',
-						num: 0
-					},
-				],
-			}
-		},
-
-		onShow() {
-			this.init()
-		},
-
-		computed: {
-			hasMenu() {
-				return (name) => {
-					let resultArr = []
-					resultArr = this.getMenu(name, this.menuList, resultArr)
-					if (resultArr.length > 0) {
-						return resultArr
-					} else {
-						return []
-					}
-
-				}
-			}
-		},
-
-		methods: {
-			//初始化
-			init() {
-				this.curSelectSite = {}
-				this.menuList = uni.getStorageSync("menu")
-				this.selectRole = uni.getStorageSync("activeRole")
-				this.getMenuList()
-				this.getSiteList()
-				uni.hideTabBar()
-			},
-			//获取场所列表
-			async getSiteList() {
-				console.log(this.selectRole)
-				let type = null
-				let roleName = this.selectRole.roleName
-				console.log("roleName", roleName)
-				if (roleName == '网格员' || roleName == '系统管理员') {
-					type = 1
-				} else if (roleName == '场所负责人') {
-					type = 2
-				} else if (roleName == '居民') {
-					type = 3
-				}
-
-				const res = await getFuncList(type, roleName)
-				console.log(res, "-----------")
-				let data = res.data
-				this.siteColumns = []
-
-				this.buildSiteColumn(data, 0)
-				console.log(this.siteColumns)
-
-			},
-
-			buildSiteColumn(dataList, index) {
-				if (dataList.length > 0) {
-					this.siteColumns[index] = dataList
-					if (dataList[0].children && dataList[0].children.length > 0) {
-						this.buildSiteColumn(dataList[0].children, index + 1)
-					}
-				}
-			},
-
-			//获取首页菜单
-			getMenuList() {
-				console.log("当前角色菜单", this.menuList)
-				this.getPhoneList()
-				this.getLiveList()
-				this.getWorkbenchList()
-			},
-			getPhoneList() {
-				this.gridDataList = []
-				const resultArr = this.hasMenu('快捷拨号')
-				if (resultArr.length == 0) {
-					return
-				}
-
-				const topMenu = resultArr[0]
-
-				topMenu.children.forEach(menu => {
-					this.gridDataList.push({
-						title: menu.name,
-						data: "无数据",
-						phone: "无"
-					})
-				})
-			},
-
-			//获取生活菜单
-			getLiveList() {
-				this.liveList = []
-				const resultArr = this.hasMenu('生活')
-				if (resultArr.length == 0) {
-					return
-				}
-
-				const topMenu = resultArr[0]
-
-				topMenu.children.forEach(menu => {
-					this.liveList.push({
-						imgUrl: menu.source,
-						title: menu.name,
-					})
-				})
-			},
-
-			//获取工作台菜单
-			getWorkbenchList() {
-				this.jobList = []
-				const resultArr = this.hasMenu('工作台')
-				if (resultArr.length == 0) {
-					return
-				}
-
-				const topMenu = resultArr[0]
-
-				topMenu.children.forEach(menu => {
-					this.jobList.push({
-						imgUrl: menu.source,
-						title: menu.name,
-					})
-				})
-			},
-
-
-
-
-
-			getMenu(menuName, menuList, resultArr) {
-				// console.log(menuList, menuName)
-				for (var i = 0; i < menuList.length; i++) {
-					if (menuList[i].name == menuName) {
-						resultArr.push(menuList[i])
-					} else {
-						if (menuList[i].children && menuList[i].children.length) {
-							this.getMenu(menuName, menuList[i].children, resultArr);
-						}
-					}
-				}
-
-				return resultArr
-
-			},
-
-			change(index) {
-				let url = index
-				this.$u.func.globalNavigator(url, "switchTab")
-			},
-			changeHandler(e) {
-				const {
-					columnIndex,
-					value,
-					values, // values为当前变化列的数组内容
-					index,
-					// 微信小程序无法将picker实例传出来,只能通过ref操作
-					picker = this.$refs.uPicker
-				} = e
-				// 当第一列值发生变化时,变化第二列(后一列)对应的选项
-				if (columnIndex === 0 && this.columnData.length > 0) {
-					// picker为选择器this实例,变化第二列对应的选项
-					picker.setColumnValues(1, this.columnData[index])
-				}
-			},
-			// 回调参数为包含columnIndex、value、values
-			confirm(e) {
-				console.log('confirm', e)
-				this.curSelectSite = e.value[e.value.length - 1]
-				this.selectBoxShow = false
-			}
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	.container {
-		width: 100%;
-		height: 100%;
-
-		display: flex;
-		flex-direction: column;
-		background: #F9F9FA;
-		color: #fff;
-		font-size: 32rpx;
-
-		.main {
-			position: relative;
-			height: 0;
-			flex: 1;
-			overflow-y: auto;
-
-			.main-bg {
-				height: 36%;
-				background: royalblue;
-			}
-
-			.main-select {
-				margin: 0 6%;
-				position: absolute;
-				bottom: 74%;
-				display: flex;
-				align-items: center;
-			}
-
-			.main-btn {
-				margin: 0 6%;
-				position: absolute;
-				top: 28%;
-				width: 88%;
-				height: 20%;
-				background: #fff;
-				border-radius: 10rpx;
-				color: #000;
-			}
-
-			.main-phone-house {
-				margin-top: 180rpx;
-				width: 100%;
-
-				.phone-box {
-					display: flex;
-
-					&>view {
-						margin: 0 16rpx;
-						height: 116rpx;
-						flex: 1;
-						background: linear-gradient(to right, #407BE9, #73A2F9);
-						border-radius: 10rpx;
-					}
-				}
-
-				.house-box {
-					.content {
-						display: flex;
-						flex-wrap: wrap;
-
-						&>view {
-							margin: 0 16rpx;
-							margin-top: 20rpx;
-							min-width: calc((100% - 16rpx * 6) / 3);
-							height: 66rpx;
-							background: linear-gradient(to right, #407BE9, #73A2F9);
-							border-radius: 33rpx;
-						}
-					}
-				}
-			}
-
-			.main-bt {
-				margin-top: 2%;
-				width: 100%;
-				color: #000;
-			}
-		}
-	}
+<template>
+	<view class="container">
+		<u-navbar height="48" bgColor="#5887f9" :autoBack="false" safeAreaInsetTop placeholder>
+			<view slot="left">
+				<u--text color="#ffffff" text="基层智治" size="18" />
+			</view>
+		</u-navbar>
+
+		<view class="main">
+			<view class="main-bg">
+
+			</view>
+
+			<view class="main-select" @click="selectBoxShow = !selectBoxShow">
+				<u-icon name="map" color="#fff"></u-icon>
+				<view>
+					当前场所:{{curSelectSite.name?curSelectSite.name:'暂无绑定场所信息'}}
+				</view>
+
+				<u-picker title="场所" :show="selectBoxShow" keyName="name" ref="uPicker" :columns="siteColumns"
+					@confirm="confirm" @change="changeHandler"></u-picker>
+			</view>
+
+			<view class="main-btn">
+				<menu-list :menuData="btnList"></menu-list>
+			</view>
+
+			<view class="main-phone-house">
+				<view v-if="gridDataList.length>0" class="phone-box">
+					<grid-menu :gridData='item' v-for="(item, index) in gridDataList" :key='index'></grid-menu>
+				</view>
+
+				<view v-if="hasMenu('楼盘表').length>0" class="house-box">
+					<box-title :title="'楼盘表'"></box-title>
+					<view class="content">
+						<grid-menu :gridData='item' v-for="(item, index) in houseDataList.slice(0, 6)" :key='index'
+							@click.native="pushPage(item)"></grid-menu>
+					</view>
+				</view>
+			</view>
+
+			<view class="main-bt pb-40">
+				<view v-if="liveList.length>0" class="mt-20">
+					<box-title :title="'生活'">
+						<template slot="titleMore">
+							<view style="color: red;">titleMore</view>
+						</template>
+					</box-title>
+					<view class="mt-20">
+						<view class="mt-20 b-c-w">
+							<menu-list :menuData="liveList"></menu-list>
+						</view>
+					</view>
+				</view>
+
+				<view v-if="jobList.length>0" class="mt-20">
+					<box-title :title="'工作台'"></box-title>
+
+					<view class="mt-20 b-c-w">
+						<menu-list :border='true' :menuData="jobList"></menu-list>
+					</view>
+				</view>
+
+				<view class="mt-20 main-taska">
+					<box-title :title="'我的任务'"></box-title>
+
+					<view class="mt-20 b-c-w">
+						<view class="flex">
+							<view class="flex-1" v-for="(item, index) in taskTypeList" :key='index'>
+								<cur-menu class='boder-f7f8f9-1 p-all-16' :curMenu="item" :imgShow="false"
+									:textShow="true"></cur-menu>
+							</view>
+						</view>
+						<u-cell-group :border='false'>
+							<u-cell class="boder-f7f8f9-1" :border='false' :title="item.title"
+								v-for="(item, index) in taskList" :key="index">
+								<view slot="right-icon">待处理 {{item.num}}</view>
+							</u-cell>
+						</u-cell-group>
+					</view>
+
+				</view>
+			</view>
+		</view>
+
+		<tabBar @change='change' :currentTab="0"></tabBar>
+	</view>
+</template>
+
+<script>
+	import tabBar from "@/components/tabBar/tabBar.vue";
+	import curMenu from "@/components/curMenu/index.vue";
+	import menuList from "@/components/menuList/index.vue";
+	import gridMenu from "@/components/gridMenu/index.vue";
+	import {
+		getFuncList,
+		getHouseList
+	} from "@/api/doorplateAddress/doorplateAddress";
+
+	export default {
+		components: {
+			tabBar,
+			curMenu,
+			menuList,
+			gridMenu
+		},
+
+		data() {
+			return {
+				menuList: [],
+				selectRole: {},
+				selectBoxShow: false,
+				siteColumns: [],
+				curSelectSite: {},
+				columnData: [],
+				btnList: [{
+						imgUrl: '/static/img/sys.png',
+						title: '扫一扫',
+						imgWidth: 54,
+						imgHeight: 54
+					},
+					{
+						imgUrl: '/static/img/bs.png',
+						title: '报事',
+						imgWidth: 54,
+						imgHeight: 54
+					}
+				],
+				gridDataList: [],
+				houseDataList: [{
+					title: '-',
+					useSlot: true
+				}],
+
+				liveList: [],
+
+				jobList: [],
+
+				taskTypeList: [{
+						title: '一次性',
+						num: 1,
+					},
+					{
+						title: '周期性',
+						num: 0,
+					}
+				],
+
+				taskList: [{
+						title: '综治任务',
+						num: 0
+					},
+					{
+						title: '住建任务',
+						num: 0
+					},
+					{
+						title: '公安任务',
+						num: 0
+					},
+				],
+			}
+		},
+
+		onShow() {
+			this.init()
+		},
+
+		computed: {
+			hasMenu() {
+				return (name) => {
+					let resultArr = []
+					resultArr = this.getMenu(name, this.menuList, resultArr)
+					if (resultArr.length > 0) {
+						return resultArr
+					} else {
+						return []
+					}
+
+				}
+			}
+		},
+
+		methods: {
+			//初始化
+			init() {
+				this.curSelectSite = {}
+				this.menuList = uni.getStorageSync("menu")
+				this.selectRole = uni.getStorageSync("activeRole")
+				this.getMenuList()
+				this.getSiteList()
+				uni.hideTabBar()
+			},
+			//获取场所列表
+			async getSiteList() {
+				console.log(this.selectRole)
+				let type = null
+				let roleName = this.selectRole.roleName
+				console.log("roleName", roleName)
+				if (roleName == '网格员' || roleName == '系统管理员') {
+					type = 1
+				} else if (roleName == '场所负责人') {
+					type = 2
+				} else if (roleName == '居民') {
+					type = 3
+				}
+
+				const res = await getFuncList(type, roleName)
+				console.log(res, "-----------")
+				let data = res.data
+				this.siteColumns = []
+
+				this.buildSiteColumn(data, 0)
+				console.log(this.siteColumns)
+
+			},
+
+			buildSiteColumn(dataList, index) {
+				if (dataList.length > 0) {
+					this.siteColumns[index] = dataList
+					if (dataList[0].children && dataList[0].children.length > 0) {
+						this.buildSiteColumn(dataList[0].children, index + 1)
+					}
+				}
+			},
+
+			//获取首页菜单
+			getMenuList() {
+				console.log("当前角色菜单", this.menuList)
+				this.getPhoneList()
+				this.getLiveList()
+				this.getWorkbenchList()
+			},
+			getPhoneList() {
+				this.gridDataList = []
+				const resultArr = this.hasMenu('快捷拨号')
+				if (resultArr.length == 0) {
+					return
+				}
+
+				const topMenu = resultArr[0]
+
+				topMenu.children.forEach(menu => {
+					this.gridDataList.push({
+						title: menu.name,
+						data: "无数据",
+						phone: "无"
+					})
+				})
+			},
+
+			//获取生活菜单
+			getLiveList() {
+				this.liveList = []
+				const resultArr = this.hasMenu('生活')
+				if (resultArr.length == 0) {
+					return
+				}
+
+				const topMenu = resultArr[0]
+
+				topMenu.children.forEach(menu => {
+					this.liveList.push({
+						imgUrl: menu.source,
+						title: menu.name,
+					})
+				})
+			},
+
+			//获取工作台菜单
+			getWorkbenchList() {
+				this.jobList = []
+				const resultArr = this.hasMenu('工作台')
+				if (resultArr.length == 0) {
+					return
+				}
+
+				const topMenu = resultArr[0]
+
+				topMenu.children.forEach(menu => {
+					this.jobList.push({
+						imgUrl: menu.source,
+						title: menu.name,
+					})
+				})
+			},
+
+			// 获取楼盘表
+			async getHouseDataList(name) {
+				const res = await getHouseList(1, name)
+				// 数据处理
+				res.data.forEach(item => {
+					item.title = item.name
+					item.useSlot = true
+					delete item.name
+				})
+				this.houseDataList = res.data || [{
+					title: '-',
+					useSlot: true
+				}]
+			},
+
+
+
+			getMenu(menuName, menuList, resultArr) {
+				// console.log(menuList, menuName)
+				for (var i = 0; i < menuList.length; i++) {
+					if (menuList[i].name == menuName) {
+						resultArr.push(menuList[i])
+					} else {
+						if (menuList[i].children && menuList[i].children.length) {
+							this.getMenu(menuName, menuList[i].children, resultArr);
+						}
+					}
+				}
+
+				return resultArr
+
+			},
+
+			change(index) {
+				let url = index
+				this.$u.func.globalNavigator(url, "switchTab")
+			},
+			changeHandler(e) {
+				const {
+					columnIndex,
+					value,
+					values, // values为当前变化列的数组内容
+					index,
+					// 微信小程序无法将picker实例传出来,只能通过ref操作
+					picker = this.$refs.uPicker
+				} = e
+				// 当第一列值发生变化时,变化第二列(后一列)对应的选项
+				if (columnIndex === 0 && this.columnData.length > 0) {
+					// picker为选择器this实例,变化第二列对应的选项
+					picker.setColumnValues(1, this.columnData[index])
+				}
+			},
+			// 回调参数为包含columnIndex、value、values
+			confirm(e) {
+				console.log('confirm', e)
+				this.curSelectSite = e.value[e.value.length - 1]
+				this.selectBoxShow = false
+				this.getHouseDataList(e.value[1].name)
+			},
+
+			// 页面跳转
+			pushPage({id, title}) {
+				if (id !== void 0) {
+					let url = `/subPackage/house/list/index?id=${id}&title=${title}`
+					this.$u.func.globalNavigator(url, "navTo")
+				}
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.container {
+		width: 100%;
+		height: 100%;
+
+		display: flex;
+		flex-direction: column;
+		background: #F9F9FA;
+		color: #fff;
+		font-size: 32rpx;
+
+		.main {
+			position: relative;
+			height: 0;
+			flex: 1;
+			overflow-y: auto;
+
+			.main-bg {
+				height: 36%;
+				background: royalblue;
+			}
+
+			.main-select {
+				margin: 0 6%;
+				position: absolute;
+				bottom: 74%;
+				display: flex;
+				align-items: center;
+			}
+
+			.main-btn {
+				margin: 0 6%;
+				position: absolute;
+				top: 28%;
+				width: 88%;
+				height: 20%;
+				background: #fff;
+				border-radius: 10rpx;
+				color: #000;
+			}
+
+			.main-phone-house {
+				margin-top: 180rpx;
+				width: 100%;
+
+				.phone-box {
+					display: flex;
+
+					&>view {
+						margin: 0 16rpx;
+						height: 116rpx;
+						flex: 1;
+						background: linear-gradient(to right, #407BE9, #73A2F9);
+						border-radius: 10rpx;
+					}
+				}
+
+				.house-box {
+					.content {
+						display: flex;
+						flex-wrap: wrap;
+
+						&>view {
+							margin: 0 16rpx;
+							margin-top: 20rpx;
+							min-width: calc((100% - 16rpx * 6) / 3);
+							height: 66rpx;
+							background: linear-gradient(to right, #407BE9, #73A2F9);
+							border-radius: 33rpx;
+						}
+					}
+				}
+			}
+
+			.main-bt {
+				margin-top: 2%;
+				width: 100%;
+				color: #000;
+			}
+		}
+	}
 </style>
\ No newline at end of file
diff --git a/subPackage/bs/views/rentDetail.vue b/subPackage/bs/views/rentDetail.vue
index 1e1df41..7625d76 100644
--- a/subPackage/bs/views/rentDetail.vue
+++ b/subPackage/bs/views/rentDetail.vue
@@ -6,17 +6,33 @@
 			</view>
 			<view class="basic-info">
 
-				<u-form-item @click="showList.relation = true" class="form-item" labelWidth="100" label="租客关系:" required
-					prop="type">
-					<u--input border="none" v-model="nameList.relation" disabled disabledColor="#ffffff"
-						placeholder="请选择租客关系">
+
+
+				<u-form-item @click="showSelectBus(dataList.relation, '租客关系', 'relationName','relation')"
+					class="form-item" labelWidth="100" label="租客关系" required prop="type">
+					<u--input border="none" v-model="relationName" disabled disabledColor="#ffffff" placeholder="请选择">
 					</u--input>
 					<u-icon slot="right" name="arrow-right"></u-icon>
 				</u-form-item>
 
-				<u-form-item @click="typeShow = true" class="form-item" labelWidth="100" label="事件类型:" required
+				<u-form-item @click="showSelectBus(dataList.houseType, '房屋状态', 'houseTypeName','houseType')"
+					class="form-item" labelWidth="100" label="房屋状态:" required prop="type">
+					<u--input border="none" v-model="houseTypeName" disabled disabledColor="#ffffff" placeholder="请选择">
+					</u--input>
+					<u-icon slot="right" name="arrow-right"></u-icon>
+				</u-form-item>
+
+
+				<u-form-item @click="showSelectBus(dataList.rentalUse, '租房用途', 'rentalUseName','rentalUse')"
+					class="form-item" labelWidth="100" label="租房用途:" required prop="type">
+					<u--input border="none" v-model="rentalUseName" disabled disabledColor="#ffffff" placeholder="请选择">
+					</u--input>
+					<u-icon slot="right" name="arrow-right"></u-icon>
+				</u-form-item>
+
+				<u-form-item @click="rentTimeShow = true" class="form-item" labelWidth="100" label="租房时间:" required
 					prop="type">
-					<u--input border="none" v-model="typeName" disabled disabledColor="#ffffff" placeholder="请选择事件类型">
+					<u--input border="none" v-model="form.rentTime" disabled disabledColor="#ffffff" placeholder="请选择">
 					</u--input>
 					<u-icon slot="right" name="arrow-right"></u-icon>
 				</u-form-item>
@@ -48,11 +64,12 @@
 		</u-form>
 
 
-		<!-- 租客关系下拉框 -->
-		<my-select v-if="showList.relation" :show="showList.relation" v-model="form.relation" type="radio"
-			popupTitle="请选择租客关系" :dataLists="dataList.relation" @cancel="showList.relation = false">
-		</my-select>
-
+		<!-- 事件类型下拉框 -->
+		<select-bus v-if="typeShow" :show="typeShow" v-model="form[selectBusModel]" type="radio"
+			:popupTitle="selectBusTitle" :dataLists="selectBusList" @cancel="typeShow = false" @submit="typeSelect">
+		</select-bus>
+		<!--出租时间选择-->
+		<u-datetime-picker :show="rentTimeShow" v-model="form.rentTime" mode="date"></u-datetime-picker>
 
 
 
@@ -62,23 +79,68 @@
 </template>
 
 <script>
+	import selectBus from "@/components/my-components/selectBus.vue"
 	import uploadMixin from "@/mixin/uploadMixin";
 	export default {
 		mixins: [uploadMixin],
+		components: {
+			selectBus
+		},
 		data() {
 			return {
 				form: {
-					relation: ""
+					relation: "",
+					houseTyep: "",
+					rentTime: "",
 				},
-				showList: {
-					relation: false
-				},
-				nameList: {
-					relation: ""
-				},
+				rules: {},
+				rentTimeShow: false,
+
+				relationName: "",
+				houseTypeName: "",
+				rentalUseName: "",
 				dataList: {
-					relation: []
-				}
+					relation: [{
+							name: "同一户",
+							value: "1"
+						},
+						{
+							name: "不同户",
+							value: "2"
+						}
+					],
+					houseType: [{
+							name: "部分出租",
+							value: "1"
+						},
+						{
+							name: "全部出租",
+							value: "2"
+						}
+					],
+					rentalUse: [{
+							name: "仓库",
+							value: "1"
+						},
+						{
+							name: "办公",
+							value: "2"
+						},
+						{
+							name: "商用",
+							value: "3"
+						},
+						{
+							name: "居住",
+							value: "4"
+						}
+					]
+				},
+				selectBusList: [],
+				selectBusTitle: '',
+				selectBusModel: '',
+				selectBusKey: '',
+				typeShow: false
 
 
 			}
@@ -96,7 +158,19 @@
 
 		},
 		methods: {
-
+			showSelectBus(data, title, model, key) {
+				this.selectBusList = data
+				this.selectBusTitle = title
+				this.selectBusModel = model
+				this.selectBusKey = key
+				this.typeShow = true
+			},
+			//类型选择确认
+			typeSelect(item) {
+				this[this.selectBusModel] = item.name
+				this.form[this.selectBusKey] = item.value
+				this.typeShow = !this.typeShow
+			},
 		}
 	}
 </script>
diff --git a/subPackage/house/family/index.vue b/subPackage/house/family/index.vue
index e3fd773..1a5393f 100644
--- a/subPackage/house/family/index.vue
+++ b/subPackage/house/family/index.vue
@@ -1,310 +1,171 @@
-<template>
-	<view class="container">
-		<view class="flex f-d-c main">
-			<view class="cur-header">
-				<u-icon name="home" color="#fff"></u-icon>
-				{{housingName}}/{{buildingName}}栋
-			</view>
-			<view class="h0 flex-1 build-list-box">
-				<u-collapse :border="false">
-					<u-collapse-item style="border: none;" :title="item.unitName" :name="index"
-						v-for="(item, index) in buildingList" :key="index">
-						<view class="flex floor-content" v-for="(floor, floorIndex) in item.floorList"
-							:key="floorIndex">
-							<view class="floor-num-box flex a-i-c j-c-c">
-								{{floor.floorName}}
-							</view>
-							<view class="room-content">
-								<u-grid class="flex flex-wrap" col="2" :border="true">
-									<u-grid-item v-for="(family, familyIndex) in floor.familyList" :key="familyIndex">
-										<view class="room-box flex f-d-c">
-											
-											<view class="flex a-i-c j-c-s-b" v-show="family.resideStatus">
-												<view class="l">{{family.houseHoldName}}</view>
-												<view class="r flex">
-													<view v-show="family.resideStatus">
-														<u-icon name="photo"></u-icon>
-													</view>
-
-													<view v-show="family.isOwner">
-														<u-icon name="photo"></u-icon>
-													</view>
-												</view>
-											</view>
-
-											<view class="flex">
-												<view class="l flex">
-													<u-icon name="home" color="blue"></u-icon>
-													{{family.roomNumber}}
-												</view>
-												<view class="r">
-													
-												</view>
-											</view>
-											
-										</view>
-									</u-grid-item>
-								</u-grid>
-							</view>
-						</view>
-					</u-collapse-item>
-				</u-collapse>
-			
-				<u-divider text="已经到底了"></u-divider>
-			</view>
-		</view>
-	</view>
-</template>
-
+<template>
+	<view class="container">
+		<view class="flex f-d-c main">
+			<view class="cur-header">
+				<u-icon name="home" color="#fff"></u-icon>
+				{{housingName}}/{{buildingName}}栋
+			</view>
+			<view class="h0 flex-1 build-list-box">
+				<u-collapse :border="false">
+					<u-collapse-item style="border: none;" :title="item.unitName" :name="index"
+						v-for="(item, index) in buildingList" :key="index">
+						<view class="flex floor-content" v-for="(cItem, cIndex) in item.children"
+							:key="cIndex">
+							<view class="floor-num-box flex a-i-c j-c-c">
+								{{cItem.floor}}
+							</view>
+							<view class="room-content">
+								<u-grid class="flex flex-wrap" col="2" :border="true">
+									<u-grid-item v-for="(scItem, scIndex) in cItem.children" :key="scItem.id"  @click.native="pushPage(scItem)">
+										<view class="room-box flex f-d-c">
+											<view class="flex a-i-c j-c-s-b" v-show="scItem.resideStatus">
+												<view class="l">{{scItem.realName}}</view>
+												<view class="r flex">
+													<view v-show="scItem.resideStatus">
+														<u-icon name="photo"></u-icon>
+													</view>
+
+													<view v-show="!!scItem.roleType === '业主'">
+														<u-icon name="photo"></u-icon>
+													</view>
+												</view>
+											</view>
+
+											<view class="flex">
+												<view class="l flex">
+													<u-icon name="home" color="blue"></u-icon>
+													{{scItem.houseNo}}
+												</view>
+												<view class="r">
+
+												</view>
+											</view>
+
+										</view>
+									</u-grid-item>
+								</u-grid>
+							</view>
+						</view>
+					</u-collapse-item>
+				</u-collapse>
+
+				<u-divider text="已经到底了"></u-divider>
+			</view>
+		</view>
+	</view>
+</template>
+
 <script>
-	export default {
-		components: {},
-
-		data() {
+	import {
+		getHouseInfoList
+	} from "@/api/doorplateAddress/doorplateAddress";
+	export default {
+		components: {},
+
+		data() {
 			return {
-				housingName: '万达晶座',
-				buildingName: 11,
-				buildingList: [{
-						unitName: '一单元',
-						floorList: [{
-								floorName: '1层',
-								familyList: [{
-										houseHoldName: '王子豪1',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪2',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪3',
-										resideStatus: 0, // 1居住,0未居住
-										isOwner: 0, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪4',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪5',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪6',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									}
-								]
-							},
-							{
-								floorName: '2层',
-								familyList: [{
-										houseHoldName: '王子豪1',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪2',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪3',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪4',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪5',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪6',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									}
-								]
-							}
-						]
-					},
-					{
-						unitName: '二单元',
-						floorList: [{
-								floorName: '1层',
-								familyList: [{
-									houseHoldName: '王子豪1',
-									resideStatus: 0, // 1居住,0未居住
-									isOwner: 0, // 1业主, 0不是业主
-									roomNumber: 301
-								}]
-							},
-							{
-								floorName: '2层',
-								familyList: [{
-										houseHoldName: '王子豪1',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪2',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪3',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪4',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪5',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪6',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									},
-									{
-										houseHoldName: '王子豪',
-										resideStatus: 1, // 1居住,0未居住
-										isOwner: 1, // 1业主, 0不是业主
-										roomNumber: 301
-									}
-								]
-							}
-						]
-					}
-				]
-			}
-		},
-
-		onShow() {},
-
-		methods: {
-
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	.container {
-		width: 100%;
-		height: 100%;
-
-		display: flex;
-		flex-direction: column;
-		background: #F9F9FA;
-		font-size: 26rpx;
-
-
-		.main {
-			position: relative;
-			height: 0;
-			flex: 1;
-			overflow-y: auto;
-
-			.cur-header {
-				padding-left: 16rpx;
-				display: flex;
-				align-items: center;
-				min-height: 96rpx;
-				color: #fff;
-				background: #6A9DFD;
-			}
-
-			.build-list-box {
-				/deep/ .u-cell {
-					background: #A0C0FC !important;
-				}
-
-				/deep/ .u-collapse-item__content__text {
-					padding: 0 !important;
-				}
-			}
-
-			/deep/ .floor-content {
-				border-bottom: 1rpx solid #ccc;
-
-				.floor-num-box {
-					padding: 0 20rpx !important;
-					background: #EAECF0;
-				}
-
-				.room-content {
-					width: 0;
-					flex: 1;
-					background: #FEFEFF;
-
-					.room-box {
-						padding: 8rpx;
-						justify-content: center;
-						align-items: center;
-						width: 100%;
-						min-height: 116rpx;
-						box-sizing: border-box;
-						
-						&>view {
-							margin: auto;
-							width: 100%;
-						}
-					}
-
-					.u-grid-item:nth-child(2n-1) {
-						border-right: 1rpx solid #dadbde !important;
-					}
-				}
-			}
-		}
-	}
+				currentId: '',
+				housingName: '',
+				buildingName: 0,
+				buildingList: []
+			}
+		},
+		onLoad(e) {
+			const { id, housingName, buildingName } = e
+			this.currentId = id
+			this.housingName = housingName
+			this.buildingName = buildingName
+			
+		},
+		onShow() {
+			this.getBuildingList()
+		},
+		methods: {
+			async getBuildingList() {
+				const res = await getHouseInfoList(3, '9cedfffba380fc19f88ede2323aca651')
+				res.data.forEach(item => {
+					item.children && item.children.sort((a, b) => a.floor - b.floor)
+				})
+				console.log(res.data)
+				this.buildingList = res.data || []
+			},
+			pushPage(value) {
+				const { addressCode } = value
+				let url = `/subPackage/house/roomDetails/index?id=${addressCode}`
+				this.$u.func.globalNavigator(url, "navTo")
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.container {
+		width: 100%;
+		height: 100%;
+
+		display: flex;
+		flex-direction: column;
+		background: #F9F9FA;
+		font-size: 26rpx;
+
+
+		.main {
+			position: relative;
+			height: 0;
+			flex: 1;
+			overflow-y: auto;
+
+			.cur-header {
+				padding-left: 16rpx;
+				display: flex;
+				align-items: center;
+				min-height: 96rpx;
+				color: #fff;
+				background: #6A9DFD;
+			}
+
+			.build-list-box {
+				/deep/ .u-cell {
+					background: #A0C0FC !important;
+				}
+
+				/deep/ .u-collapse-item__content__text {
+					padding: 0 !important;
+				}
+			}
+
+			/deep/ .floor-content {
+				border-bottom: 1rpx solid #ccc;
+
+				.floor-num-box {
+					padding: 0 20rpx !important;
+					background: #EAECF0;
+				}
+
+				.room-content {
+					width: 0;
+					flex: 1;
+					background: #FEFEFF;
+
+					.room-box {
+						padding: 8rpx;
+						justify-content: center;
+						align-items: center;
+						width: 100%;
+						min-height: 116rpx;
+						box-sizing: border-box;
+
+						&>view {
+							margin: auto;
+							width: 100%;
+						}
+					}
+
+					.u-grid-item:nth-child(2n-1) {
+						border-right: 1rpx solid #dadbde !important;
+					}
+				}
+			}
+		}
+	}
 </style>
\ No newline at end of file
diff --git a/subPackage/house/list/index.vue b/subPackage/house/list/index.vue
index c08138d..c8cd711 100644
--- a/subPackage/house/list/index.vue
+++ b/subPackage/house/list/index.vue
@@ -1,83 +1,106 @@
-<template>
-	<view class="container">
-		<view class="flex f-d-c main">
-			<view class="flex house-container">
-				<view class="house-list-box" v-for="(item, index) in houseList">
-					<view class="l">
-						<u-icon name="home" color="#fff"></u-icon>
-					</view>
-					<view class="r">
-						{{item.title}}栋
-					</view>
-				</view>
-			</view>
-
-			<u-divider text="已经到底了"></u-divider>
-		</view>
-	</view>
-</template>
-
-<script>
-	export default {
-		components: {},
-
-		data() {
-			return {
-				houseList: [{
-						title: 11
-					},
-					{
-						title: 12
-					},
-					{
-						title: 13
-					}
-				]
-			}
-		},
-
-		onShow() {},
-
-		methods: {
-
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	.container {
-		width: 100%;
-		height: 100%;
-
-		display: flex;
-		flex-direction: column;
-		background: #F9F9FA;
-		font-size: 26rpx;
-		
-		
-		.main {
-			position: relative;
-			height: 0;
-			flex: 1;
-			overflow-y: auto;
-
-			.house-container {
-				flex-wrap: wrap;
-				
-				.house-list-box {
-					margin: 16rpx;
-					padding: 0 16rpx;
-					display: flex;
-					justify-content: space-between;
-					align-items: center;
-					width: calc((100% - 96rpx) / 3);
-					height: 68rpx;
-					border-radius: 34rpx;
-					color: #fff;
-						background: linear-gradient(to right, #417BE9, #6D9FFB);
-					box-sizing: border-box;
-				}
-			}
-		}
-	}
+<template>
+	<view class="container">
+		<view class="flex f-d-c main">
+			<view class="flex house-container">
+				<view class="house-list-box" v-for="(item, index) in houseList" @click="pushPage(item)">
+					<view class="l">
+						<u-icon name="home" color="#fff"></u-icon>
+					</view>
+					<view class="r">
+						{{item.title}}栋
+					</view>
+				</view>
+			</view>
+
+			<u-divider text="已经到底了"></u-divider>
+		</view>
+	</view>
+</template>
+
+<script>
+	import {
+		getHouseInfoList
+	} from "@/api/doorplateAddress/doorplateAddress";
+	export default {
+		components: {},
+
+		data() {
+			return {
+				currentId: '',
+				curHouseTitle: '',
+				houseList: [{
+					title: '-'
+				}]
+			}
+		},
+		onLoad(e) {
+			const { id, title } = e
+			this.currentId = id
+			this.curHouseTitle = title
+			
+		},
+		onShow() {
+			this.getHouseInfo()
+		},
+
+		methods: {
+			async getHouseInfo() {
+				const res = await getHouseInfoList(2, this.currentId)
+				// 删除栋字
+				const reg = new RegExp('栋', 'g')
+				res.data.forEach(item => {
+					item.title = item['name'].replace(reg, '')
+					delete item.name
+				})
+				this.houseList = res.data || [{
+					title: '-'
+				}]
+			},
+			pushPage(value) {
+				const { id, title } = value
+				if (id !== void 0) {
+					let url = `/subPackage/house/family/index?id=${id}&housingName=${this.curHouseTitle}&buildingName=${title}`
+					this.$u.func.globalNavigator(url, "navTo")
+				}
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.container {
+		width: 100%;
+		height: 100%;
+
+		display: flex;
+		flex-direction: column;
+		background: #F9F9FA;
+		font-size: 26rpx;
+
+
+		.main {
+			position: relative;
+			height: 0;
+			flex: 1;
+			overflow-y: auto;
+
+			.house-container {
+				flex-wrap: wrap;
+
+				.house-list-box {
+					margin: 16rpx;
+					padding: 0 16rpx;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+					width: calc((100% - 96rpx) / 3);
+					height: 68rpx;
+					border-radius: 34rpx;
+					color: #fff;
+					background: linear-gradient(to right, #417BE9, #6D9FFB);
+					box-sizing: border-box;
+				}
+			}
+		}
+	}
 </style>
\ No newline at end of file
diff --git a/subPackage/house/roomDetails/index.vue b/subPackage/house/roomDetails/index.vue
index 657e006..e089107 100644
--- a/subPackage/house/roomDetails/index.vue
+++ b/subPackage/house/roomDetails/index.vue
@@ -4,11 +4,12 @@
 			<view class="content">
 				<view class="base b-c-w">
 					<view class="flex a-i-c">
-						<u-icon name="photo"></u-icon> 万达晶座:11栋
+						<u-icon name="photo"></u-icon> {{ houseTitle }}
 					</view>
 					<view class="flex j-c-s-b">
 						<view>
-							一单元单元 2901室(共2人)
+							{{ unitName }}单元 {{ houseName }}室
+							<!-- (共2人) -->
 						</view>
 						<view class="flex a-i-c">
 							<u-button size='small' shape="circle" type="primary" :plain="true" text="房屋管理"></u-button>
@@ -28,13 +29,13 @@
 							<view class="info">
 								<view>姓名:{{item.name}}</view>
 								<view class="flex">
-									手机:{{item.phone}} <u-icon name="phone-fill" color="#4586FE"></u-icon>
+									手机:{{item.phoneNumber}} <u-icon name="phone-fill" color="#4586FE"></u-icon>
 								</view>
 								<view class="flex">
 									关系:
 									<view class="flex a-i-c">
-										<u-tag :text="item.relation" size="mini"
-											:bgColor="item.relationType == 1 ? '#07C160' : '#1989FA'"></u-tag>
+										<u-tag :text="item.relationship" size="mini"
+											:bgColor="item.residentialStatus == 1 ? '#07C160' : '#1989FA'"></u-tag>
 									</view>
 								</view>
 							</view>
@@ -65,7 +66,7 @@
 					<view class="mt-40 rent-out-list b-c-w" v-for="(item, index) in rentOutList" :key="index">
 						<view class="t flex j-c-s-b a-i-c">
 							<view class="l">
-								租客:{{item.name}}(共{{item.allNum}}人)
+								租客:{{item.tenant}}(共{{item.allNum}}人)
 							</view>
 							<view class="r">
 								<u-icon name="trash-fill" color="red"></u-icon>
@@ -73,7 +74,7 @@
 						</view>
 						<view class="t flex j-c-s-b a-i-c">
 							<view class="l">
-								{{item.startTime}} - {{item.endTime}}
+								{{item.rentalTime}} - {{item.dueTime}}
 							</view>
 							<view class="r">
 								{{item.status == 1 ? '已到期' : '未到期'}}
@@ -91,9 +92,9 @@
 			</view>
 
 			<view class="edit-btn">
-				<veiw>
+				<view>
 					<u-button type="primary" text="添加成员"></u-button>
-				</veiw>
+				</view>
 
 				<view>
 					<u-button type="primary" :plain="true" text="添加租赁信息"></u-button>
@@ -104,50 +105,52 @@
 </template>
 
 <script>
+	import {
+		getHouseRentInfo
+	} from "@/api/doorplateAddress/doorplateAddress";
 	export default {
 		components: {},
 
 		data() {
 			return {
-				ownerInfoList: [{
-						src: 'https://cdn.uviewui.com/uview/album/1.jpg',
-						name: '郑洪峰',
-						phone: 13566687549,
-						relationType: 1,
-						relation: '业主'
-					},
-					{
-						src: 'https://cdn.uviewui.com/uview/album/1.jpg',
-						name: '郑小峰',
-						phone: 13547687549,
-						relationType: 3,
-						relation: '儿子'
-					}
-				],
-				
-				rentOutList: [
-					{
-						name: '皇阿玛',
-						startTime: '2023-01-01',
-						endTime: '2024-01-01',
-						status: 0, // 0 未到期,1已到期
-						allNum: 1
-					},
-					{
-						name: '皇阿玛two',
-						startTime: '2023-01-01',
-						endTime: '2024-01-01',
-						status: 0, // 0 未到期,1已到期
-						allNum: 2
-					}
-				]
+				houseTitle: '',
+				currentId: '',
+				houseName: '',
+				unitName: '',
+				ownerInfoList: [],
+				rentOutList: []
 			}
 		},
 
-		onShow() {},
+		onLoad(e) {
+			const { id } = e
+			this.currentId = id
+		},
+		onShow() {
+			this.getHouseRentInfoList()
+		},
 
 		methods: {
-
+			async getHouseRentInfoList() {
+				const res = await getHouseRentInfo(this.currentId)
+				const { districtName, doorplateName, buildingName, houseName, unitName, houseRentalList, householdList } = res.data
+				this.houseTitle = districtName + ':' + buildingName
+				this.rentOutList = houseRentalList
+				this.ownerInfoList = householdList
+				this.houseName = houseName
+				this.unitName = unitName
+				// 判断当前租客有没有过期
+				this.rentOutList.forEach(item => {
+					// 事件格式处理
+					item.rentalTime = item.rentalTime.split(' ')[0]
+					item.dueTime = item.dueTime.split(' ')[0]
+					// 当前房间租客数量
+					item.allNum = item.houseTenantVOList.length
+					// 多人个租客将第一个作为显示
+					item.tenant = item.houseTenantVOList.length > 0 ? item.houseTenantVOList[0].name : ''
+				})
+				
+			}
 		}
 	}
 </script>

--
Gitblit v1.9.3