From fe77767115b4c1e30909757384d69dc6aee4c0dc Mon Sep 17 00:00:00 2001
From: Lou <luzhiping@qqyjz.com>
Date: Wed, 20 Dec 2023 18:46:27 +0800
Subject: [PATCH] 首页扫码逻辑修改,楼栋、楼盘列表修改,场所采集标签选择组件编写

---
 pages/user/center.vue                   |    2 
 pages/user/test.vue                     |  503 +++--------------
 subPackage/house/roomDetails/index.vue  |   10 
 pages/home/index.vue                    |   45 
 pages.json                              |    2 
 subPackage/workbench/views/cscj.vue     |   13 
 common/setting.js                       |    2 
 subPackage/house/family/index.vue       |   94 +++
 subPackage/workbench/views/cscj.vue.bak |  908 +++++++++++++++++++++++++++++++++
 api/label/categoryLabel.js              |    9 
 subPackage/house/list/index.vue         |   21 
 11 files changed, 1,167 insertions(+), 442 deletions(-)

diff --git a/api/label/categoryLabel.js b/api/label/categoryLabel.js
index 199a63c..33f0805 100644
--- a/api/label/categoryLabel.js
+++ b/api/label/categoryLabel.js
@@ -7,4 +7,13 @@
 		method: 'GET',
 		params
 	})
+}
+
+//标签分类
+export const getLabelCate = (params) => {
+	return http.request({
+		url: '/blade-category/category/getCategory',
+		method: 'GET',
+		params
+	})
 }
\ No newline at end of file
diff --git a/common/setting.js b/common/setting.js
index f8f9fe8..aa5b2fe 100644
--- a/common/setting.js
+++ b/common/setting.js
@@ -12,7 +12,7 @@
 	// devUrl: 'https://sk.hubeishuiyi.cn',
 	// devUrl: 'http://192.168.1.156:9528',
 	// devUrl:'http://192.168.1.50:9528',
-	// devUrl: 'http://192.168.0.112:9528',
+	// devUrl: 'http://192.168.0.106:9528',
 	devUrl:'https://srgdjczzxtpt.com:2080/api',
 	
 	// devUrl:'http://z4042833u6.wicp.vip',
diff --git a/pages.json b/pages.json
index b448dc7..a75d48f 100644
--- a/pages.json
+++ b/pages.json
@@ -23,7 +23,7 @@
 		{
 			"path": "pages/user/test",
 			"style": {
-				"navigationBarTitleText": "z-paging插件测试",
+				"navigationBarTitleText": "测试页面",
 				"navigationBarBackgroundColor": "#fff",
 				"navigationBarTextStyle": "black"
 			}
diff --git a/pages/home/index.vue b/pages/home/index.vue
index 355ba1b..c908b40 100644
--- a/pages/home/index.vue
+++ b/pages/home/index.vue
@@ -14,6 +14,9 @@
 		</view>
 		<view class="content">
 			<view class="">
+				
+				
+				
 				<view class="section flex j-c-s-a a-i-c mb-20" v-if="isShowContact && curSelectSite.addressType == 1">
 					<view class="section-item" v-for="(i,k) in contactList" :key="k" v-if="i.name"   @click="navigatorPage(`${i.path}?id=${i.id}`)">
 						<image class="section-item-bg" :src="i.bgImg" mode="aspectFill"></image>
@@ -114,7 +117,7 @@
 				</view>
 			</view> -->
 
-			<view class="bgc-ff mb-20 p-20 pb-20" v-if="jobList.length && roleType == 1">
+			<view class="bgc-ff mb-20 p-20 pb-20" v-if="jobList.length">
 				<caption-row title="工作台" />
 				<u-grid :border="false" col="4">
 					<u-grid-item @click="navigatorPage(item.path)" v-for="(item, index) in jobList" :index="index"
@@ -261,7 +264,7 @@
 						path: "/subPackage/workbench/views/patrol"
 					}
 				],
-				roleType: 2, // 1网格员/系统管理员 、  2居民
+				roleType: 2, // 1网格员/系统管理员 、  2居民   3民警
 				roleTypeName: "街道社区网格",
 				selectBoxShow: false,
 				siteColumns: [],
@@ -478,6 +481,10 @@
 					type = 2
 					this.roleType = 2
 					this.roleTypeName = "居民"
+				}else if (roleName == '民警'){
+					type = 3
+					this.roleType = 3
+					this.roleTypeName = "街道社区网格"
 				}
 				const res = await getFuncList(type, roleName)
 				this.columnData = res.data;
@@ -620,7 +627,7 @@
 							index = this.getLiveMenuItem(arr, 1)
 							index2 = this.getLiveMenuItem(arr, 2)
 						}
-						if (index2 == -1) {
+						if (index2 == -1  && this.roleType == 2) {
 							arr.push({
 								name: "租客上报",
 								path: "/subPackage/bs/views/zhsb",
@@ -761,15 +768,15 @@
 			},
 			
 			getHouseType(code){
-				// getQrCodeDetail
 				
-				getPublicSecurityDetail({
-					// roleName:"网格员"
+				// getPublicSecurityDetail
+				  getQrCodeDetail({
+					roleName:"网格员",
 					addressCode:code,
 				}).then(res=>{
 					console.log(res)
-					let {isJur,doorplateType, addressLevel,aoiName,addressName,neiName,buildingName,unitName } = res.data;
-					// if(isJur == 1){
+					let {isJur,doorplateType, addressLevel,aoiName,addressName,neiName,buildingName,unitName,aoiCode,neiCode,unitCode,buildingCode } = res.data;
+					if(isJur == 1){
 					   if(doorplateType == "户室牌"){
 					   	this.$u.func.globalNavigator(`/subPackage/house/roomDetails/index?id=${code}&from=scan`,"navTo")
 					   }else if (doorplateType =="中门牌"){
@@ -781,21 +788,21 @@
 					   	}
 					   }else if (doorplateType == "楼幢牌"){
 					   	let url = "/subPackage/house/family/index"
-					   	this.$u.func.globalNavigator(`${url}?id=${code}&address=${addressName}&neiName=${neiName}&housingName=${aoiName}&buildingName=${buildingName}`,"navTo")
+					   	this.$u.func.globalNavigator(`${url}?id=${code}&address=${addressName}&neiName=${neiName}&housingName=${aoiName}&buildingName=${buildingName}&buildingCode=${buildingCode}&aoiCode=${aoiCode}&neiCode=${neiCode}`,"navTo")
 					   }else if ( doorplateType == "单元牌"){
 					   	let url = "/subPackage/house/family/index"
-					   	this.$u.func.globalNavigator(`${url}?id=${code}&address=${addressName}&neiName=${neiName}&housingName=${aoiName}&buildingName=${buildingName}&unitName=${unitName}`,"navTo")
+					   	this.$u.func.globalNavigator(`${url}?id=${code}&address=${addressName}&neiName=${neiName}&housingName=${aoiName}&buildingName=${buildingName}&unitName=${unitName}&unitCode=${unitCode}&neiCode=${neiCode}&buildingCode=${buildingCode}`,"navTo")
 					   }else if (doorplateType  =="大门牌"){
-					   	this.$u.func.globalNavigator(`/subPackage/house/list/index?id=${code}&title=${aoiName}&neiName=${neiName}&address=${addressName}`,"navTo")
+					   	this.$u.func.globalNavigator(`/subPackage/house/list/index?id=${code}&title=${aoiName}&neiName=${neiName}&address=${addressName}&neiCode=${neiCode}&aoiCode=${aoiCode}`,"navTo")
 					   }
-						   
-					// }else {
-					//     uni.showModal({
-					//     	title:"提示!",
-					// 		content:"该区域不是您管辖范围",
-					// 		showCancel:false
-					//     })	
-					// }
+					}
+					else {
+					    uni.showModal({
+					    	title:"提示!",
+							content:"该区域不是您管辖范围",
+							showCancel:false
+					    })	
+					}
 				})	
 			},
 			
diff --git a/pages/user/center.vue b/pages/user/center.vue
index 59f1c2e..e4b1cc4 100644
--- a/pages/user/center.vue
+++ b/pages/user/center.vue
@@ -64,7 +64,7 @@
 				<u-cell title="修改密码"  :border="false"   isLink  url="/subPackage/user/password/index">
 					<image slot="icon" src="/static/icon/menu-center-03.png" class="icon" mode=""></image>
 				</u-cell>
-				<!-- <u-cell title="签名"  :border="false"   isLink  url="/subPackage/article/signature">
+				<!-- <u-cell title="测试页面"  :border="false"   isLink  url="test">
 					<image slot="icon" src="/static/icon/menu-center-03.png" class="icon" mode=""></image>
 				</u-cell> -->
 				<!-- <u-cell-item title="评分">
diff --git a/pages/user/test.vue b/pages/user/test.vue
index d49556b..adef062 100644
--- a/pages/user/test.vue
+++ b/pages/user/test.vue
@@ -1,341 +1,97 @@
 <template>
 	<view class="">
-		<z-paging ref="paging" v-model="tenantList" @query="queryList" loading-more-no-more-text="没有更多了"
-			@onRefresh="refreshList">
-			<view class="header bgc-ff" slot="top">
-				<!-- <view class="filter-box">
-				<chenchuang-CCDropDownFilter :filterData='filterData' :defaultIndex='defaultIndex'
-					@onSelected='handleSelect'></chenchuang-CCDropDownFilter>
-			</view> -->
-				<view class="tabs">
-					<u-tabs :list="tabsList" :current="tabIndex" @click="tabClick" :inactiveStyle="{color:'#999999'}"
-						:activeStyle="{color:'#017BFC'}"></u-tabs>
+		<view class="cell  flex j-c-s-b a-i-c  bgc-ff"   @click="isShow = true">
+			<text class="f-28">选择标签</text>
+			<u-icon name="arrow-right"></u-icon>
+		</view>
+		
+		
+		<u-popup :show="isShow" @close="isShow = false"   :safeAreaInsetTop="true"  mode="bottom"  :closeable="true"  round="12">
+		    <view class="popup-title fw f-30">标签选择</view>
+			
+			<view class="popup-list flex a-i-c">
+				<scroll-view scroll-y="true"  class="scroll">
+				<view class="popup-box bgc-f4">
+					<view :class="['box-item','f-28',index == fIndex?'bgc-ff':'']"  v-for="(item,index)  in  categoryList"   :key="index"  @click="handleSelect(item,index)">
+						{{item.categoryName}}
+					</view>
 				</view>
-				<view class="search-box">
-					<u-search placeholder="请输入租户名" v-model="keyword" :clearabled="true" :showAction="true"
-						:animation="true" @search="search" @clear="clear" @custom="search"></u-search>
+				</scroll-view>
+				<scroll-view scroll-y="true"  class="scroll">
+				<view class="popup-box">
+					<view :class="['box-item','f-28',item.isSelect?'c-main fw':'']"  v-for="(item,index)  in  childList"   :key="index"  @click="handleSelectChild(item,index)">
+						{{item.categoryName}}
+					</view>
 				</view>
+				</scroll-view>
 			</view>
-
-			<view class="content">
-				<!-- <view class="row flex  j-c-s-b a-i-c" v-if="tenantList.length">
-				<view v-for="(item,index) in statistics" :key="index" class="row-item bgc-ff flex a-i-c">
-					<view v-if="item.term =='shortTerm' " class="dot bgc-orange"></view>
-					<view v-if="item.term =='middleTerm' " class="dot bgc-main"></view>
-					<view v-if="item.term =='longTerm' " class="dot bgc-green"></view>
-					<text class="f-24">{{formatTerm(item.term)}}{{item.total}}户 ({{item.personNum}})人</text>
-				</view>
-			</view> -->
-
-				<view class="list bgc-ff" v-for="(records,index) in tenantList" :key="index">
-					<view class="flex j-c-s-b a-i-c">
-						<view class="flex a-i-c">
-							<text class="f-32 mr-50">{{ records.tenantName }}</text>
-							<view class="flex a-i-c">
-								<u-icon name="phone-fill" color="#017BFC"></u-icon>
-								<text class="f-28 ml-10">{{ records.phone || '未填写' }}</text>
-							</view>
-						</view>
-						<u-tag :text="showStatus(records.auditStatus)" type="success" plain plainFill></u-tag>
-					</view>
-					<view class="list-address f-28 c-99">
-						{{ records.houseName }}
-					</view>
-					<view class="list-action flex ">
-						<view class="action-item" @click="tenantManage(records)">
-							<u-icon name="/static/icon/list-02.png" width="40rpx" height="40rpx"></u-icon>
-							<text class="f-28 c-main ml-10">租客管理</text>
-						</view>
-						<view class="action-item">
-							<u-icon name="/static/icon/list-01.png" width="40rpx" height="40rpx"></u-icon>
-							<text class="f-28 c-main ml-10">走访日志</text>
-						</view>
-					</view>
-				</view>
-			</view>
-			<u-toast ref="uToast"></u-toast>
-			<!-- <u-loadmore :status="loadingStatus" loadmoreText="开始加载" loadingText="数据加载中" nomoreText="已经到底了" line />-->
-		</z-paging>
+			
+	    </u-popup>
+		
 	</view>
 </template>
 
 <script>
 	import {
-		getRentalHouseContent,
-		getStatistics
-	} from '@/api/houseRental/houseRental.js'
+	 getLabelCate
+	} from "@/api/label/categoryLabel.js";
 	export default {
 		data() {
 			return {
-
-				tabsList: [{
-						name: '全部',
-						value: ''
-					},
-					{
-						name: '待确认',
-						value: '0'
-					},
-					{
-						name: '已确认',
-						value: '1'
-					},
-					{
-						name: '未到期',
-						value: '10'
-					},
-					{
-						name: '即将到期',
-						value: '20'
-					},
-					{
-						name: '已到期',
-						value: '30'
-					}
-				],
-
-
-				filterData: [
-					[{
-							name: '全部',
-							value: ''
-						},
-						{
-							name: '待确认',
-							value: '0'
-						},
-						{
-							name: '已确认',
-							value: '1'
-						},
-						// {
-						// 	name: '审核不通过',
-						// 	value: '2'
-						// },
-						{
-							name: '未到期',
-							value: '10'
-						},
-						{
-							name: '即将到期',
-							value: '20'
-						},
-						{
-							name: '已到期',
-							value: '30'
-						}
-					],
-					[{
-							name: '楼层',
-							value: ''
-						},
-						{
-							name: '1楼',
-							value: '1'
-						},
-						{
-							name: '2楼',
-							value: '2'
-						},
-						{
-							name: '3楼',
-							value: '3'
-						}
-					]
-				],
-				defaultIndex: [0, 0],
-				keyword: "",
-				statistics: [],
-				tenantList: [],
-				loadingStatus: 'nomore',
-				pagingParams: {
-					current: 1,
-					size: 10
-				},
-				selectParams: {},
-				tenantStatus: [{
-						name: '未到期',
-						value: 0
-					},
-					{
-						name: '已到期',
-						value: 1
-					},
-					{
-						name: '已终止',
-						value: 2
-					},
-				],
-				tabIndex: 0
+			  isShow:false,
+              categoryList:[],
+			  childList:[],
+			  fIndex:0,
+			  cId:null,
+			  showLabelList:[]
 			}
 		},
-		computed: {
-			formatTerm() {
-				return (term => {
-					if (term == 'longTerm') {
-						return "长期"
-					} else if (term == 'middleTerm') {
-						return "中期"
-					} else if (term == 'shortTerm') {
-						return "短期"
-					}
-				})
-			}
-		},
+		
 		onLoad() {
-			this.currentRole = uni.getStorageSync('activeRole')
-			// this.getStatistics()
+			this.getCategory(1);
+			getLabelCate().then(res=>{
+				console.log(res)
+			})
 		},
-		onShow() {
-			this.tenantList = []
-			// this.getRentalHouseInfo()
-		},
-		// onReachBottom() {
-		// 	this.pagingParams.current++
-		// 	this.getRentalHouseInfo()
-		// },
+	
 		methods: {
-            refreshList(){
-            	this.keyword = "";
-            	this.$refs.paging.reload();
-            },
-			queryList(pageNo, pageSize) {
-				getRentalHouseContent({
-					tenantName: this.keyword,
-						current: pageNo,
-						size: pageSize
-					}
-
-				).then(res => {
-					console.log(res);
-					this.$refs.paging.complete(res.data.records);
-				})
-			},
-
-			showStatus(status) {
-				for (let i of this.tabsList) {
-					if (i.value == status) {
-						return i.name
-					}
-				}
-			},
-
-			handleSelect(res) {
-				const [auditStatus, floor] = res
-				this.resetParams()
-				let params = {}
-				if (auditStatus[0].value !== '') {
-					params = {
-						auditStatus: auditStatus[0].value
-					}
-				}
-				if (floor[0].value !== '') {
-					params = {
-						...params,
-						floor: floor[0].value
-					}
-				}
-				this.selectParams = params
-				this.getRentalHouseInfo()
-				this.getStatistics(auditStatus[0].value)
-				// 回到顶部,避免触发触底加载
-				uni.pageScrollTo({
-					scrollTop: 0, // 滚动到页面的目标位置(单位px)
-				});
-			},
-
-
-			tabClick(item) {
-				this.tabIndex = item.index;
-				this.pagingParams.current = 1;
-				this.pagingParams.auditStatus = item.value;
-				this.tenantList = []
-				this.getRentalHouseInfo()
-				// this.getStatistics(item.value)
-			},
-
-
-			getStatistics(auditStatus = '') {
-				const {
-					roleName
-				} = this.currentRole
-				let params = {
-					roleName
-				}
-				if (auditStatus) {
-					params = {
-						auditStatus,
-						roleName
-					}
-				}
-				getStatistics(params).then(res => {
-					this.statistics = res.data
-				})
-			},
-			findObjValue(value, obj) {
-				const res = obj.find(item => {
-					return item.value == value
-				})
-				return res.name
-			},
-			async getRentalHouseInfo(params = {}) {
-				this.$nextTick(() => {
-					this.loadingStatus = 'loadmore'
-					this.$refs.uToast.show({
-						type: 'loading',
-						message: '正在加载',
-						duration: 9999999
-					})
-				})
-				const {
-					roleName
-				} = this.currentRole
-				const {
-					code,
-					data: {
-						records
-					}
-				} = await getRentalHouseContent({
-					tenantName: this.keyword,
-					...this.pagingParams,
-					roleName,
-					...this.selectParams
-				})
-				if (code !== 200) {
-					uni.showToast({
-						title: "数据请求错误",
-						icon: "error"
-					})
-					return
-				}
-				this.tenantList = [...this.tenantList, ...records]
-				this.$nextTick(() => {
-					this.$refs.uToast.isShow = false
-				})
-				this.loadingStatus = 'nomore'
-			},
-			search() {
-				this.resetParams()
-				this.getRentalHouseInfo()
-			},
-			clear() {
-				this.keyword = ''
-				this.resetParams()
-				this.search()
-			},
-			tenantManage({
-				houseCode,
-				id
-			}) {
-				this.$u.func.globalNavigator(`/subPackage/bs/views/rentDetail?houseCode=${houseCode}&id=${id}`)
-			},
-			resetParams() {
-				this.tenantList = []
-				this.pagingParams = {
-					current: 1,
-					size: 10
-				}
-			}
+              getCategory(level,id){
+				  let params = {
+					  level
+				  }
+				  if(level == 2){
+					  params.parentNo = id;
+				  }
+				  getLabelCate(params).then(res=>{
+					  if(res.code == 200){
+						  if(level == 2){
+							  let data = res.data;
+							  for(let i of data){
+							  	i.isSelect = false;
+							  }
+							  this.childList = data;
+						  }else {
+							 
+							  this.categoryList = res.data;
+						  }
+					  }
+				  })
+			  },
+			  handleSelect(item,index){
+				  this.fIndex = index;
+				  this.getCategory(2,item.categoryNo);
+			  },
+			  handleSelectChild(item,index){
+				  // this.cId = item.id;
+				  
+				  
+				  this.childList[index].isSelect = !this.childList[index].isSelect
+				  
+				 
+				  
+				  
+				  
+			  }
 		}
 	}
 </script>
@@ -344,92 +100,35 @@
 	page {
 		background-color: #F5F5F5;
 	}
-
-	.header {
-		width: 100%;
-		// position: fixed;
-		/*#ifdef H5*/
-		top: 88rpx;
-		/*#endif*/
-		/*#ifdef MP-WEIXIN*/
-		top: 0;
-		/*#endif*/
-		left: 0;
-		// z-index: 10;
+	.cell{
+		padding:20rpx;
 	}
-
-	.filter-box {
-		width: 100%;
-		height: 100rpx;
-
+	.popup-title{
+		padding: 20rpx 0;
+		text-align: center;
 	}
-
-	.search-box {
-		padding: 20rpx 24rpx 30rpx;
+	.scroll{
+		height:700rpx;
 	}
-
-	.content {
-		width: 100%;
-		margin-top: 220rpx;
-		padding: 0 30rpx;
-		box-sizing: border-box;
-
-		.row {
+	.scroll:first-child{
+		width:40%;
+	}
+	.scroll:last-child{
+		width:60%;
+	}
+	.popup-list{
+		width:100%;
+		height:700rpx;
+		.bgc-f4{
+			background-color:#f4f4f4;
+		}
+		.popup-box{
 			width: 100%;
-			padding: 20rpx 0;
-		}
-
-		.row-item {
-			width: calc(100% / 3 - 10rpx);
-			height: 46rpx;
-			border-radius: 30rpx;
-			padding: 0 20rpx;
-			box-sizing: border-box;
-		}
-
-		.dot {
-			width: 10rpx;
-			height: 10rpx;
-			border-radius: 50%;
-			margin-right: 18rpx;
-		}
-
-		.bgc-green {
-			background-color: #30D17C;
-		}
-
-		.bgc-orange {
-			background-color: #FFAC3D;
-		}
-
-		.list {
-			width: 100%;
-			padding: 30rpx 30rpx 0;
-			box-sizing: border-box;
-			margin-bottom: 20rpx;
-			border-radius: 8rpx;
-
-			.list-address {
-				padding: 30rpx 0;
-			}
-
-			.list-action {
-				padding: 22rpx 0 30rpx;
-				border-top: 1px solid #F5F5F5;
-			}
-
-			.action-item {
-				display: flex;
-				flex: 1;
-				justify-content: center;
-			}
-
-			.action-item:first-child {
-				border-right: 1px solid #DBDBDB;
-			}
-
-			.mr-50 {
-				margin-right: 50rpx;
+			height:700rpx;
+			.box-item{
+				width:100%;
+				padding:30rpx;
+				box-sizing: border-box;
 			}
 		}
 	}
diff --git a/subPackage/house/family/index.vue b/subPackage/house/family/index.vue
index 09b18c2..c87dddd 100644
--- a/subPackage/house/family/index.vue
+++ b/subPackage/house/family/index.vue
@@ -14,9 +14,29 @@
 				<text>标准地址:</text>
 				<text>{{addressName}}</text>
 			</view>
+			
+			  <view class="cell flex j-c-s-b flex-wrap "   v-if="addressName">
+			  	<view class="cell-item">
+			  		<text class="f-28 mb-20 c-99">房屋数(套)</text>
+			  		<text class="f-30 fw">{{houseData.result2}}</text>
+			  		<image class="cell-item-icon" src="/static/icon/statistics-nav-02.png" mode="aspectFill"></image>
+			  	</view>
+			  	<view class="cell-item">
+			  		<text class="f-28 mb-20 c-99">住户数(人)</text>
+			  		<text class="f-30 fw">{{houseData.result3}}</text>
+			  		<image class="cell-item-icon" src="/static/icon/statistics-nav-03.png" mode="aspectFill"></image>
+			  	</view>
+			  	<view class="cell-item" v-if="!unitName">
+			  		<text class="f-28 mb-20 c-99">单元数</text>
+			  		<text class="f-30 fw">{{houseData.result4}}</text>
+			  		<image class="cell-item-icon" src="/static/icon/statistics-nav-01.png" mode="aspectFill"></image>
+			  	</view>
+			  </view>
+			
+			
 			</block>
 			
-			<view class="mt-20 around-p-20 flex a-i-c j-c-c">
+			<view class="search-box mt-20 around-p-20 flex a-i-c j-c-c bgc-ff"  v-if="buildingList.length">
 				<u-search placeholder="请输入人员名" :showAction="false" @search="getBuildingList" @clear="getBuildingList" v-model="searchKey" :clearabled="true"></u-search>
 			</view>
 			
@@ -136,6 +156,8 @@
 	import {
 		getHouseList
 	} from "@/api/doorplateAddress/doorplateAddress";
+	import { getHouseStatistics } from "@/api/statistics/statistics.js"
+import { codeName } from "../../../common/setting";
 	export default {
 		components: {},
 
@@ -155,7 +177,8 @@
 				curSelectSite: {},
 				addressName:""    ,//详细地址
 				neiName:""   ,//居委会名称
-				unitName:""    //单元名称
+				unitName:""    ,//单元名称
+				houseData:{}
 			}
 		},
 		onLoad(e) {
@@ -172,22 +195,26 @@
 			if(addressType){
 				this.addressType = addressType
 			}
+			
 			this.neiCode = neiCode
 			
 			if(e.address){       //扫码跳入
 				this.addressName = e.address;
 				this.neiName = e.neiName;
+				this.currentId = e.buildingCode;
 				if(e.unitName){
+					this.unitName = e.unitName;
 					uni.setNavigationBarTitle({
 						title:`${housingName}${buildingName}${e.unitName}`
 					})
+					this.getHouseData(neiCode,e.unitCode,1)
 				}else{
 					uni.setNavigationBarTitle({
 						title:`${housingName}${buildingName}`
 					})
+					this.getHouseData(neiCode,e.buildingCode,2)
 				}
 			}
-
 		},
 		onShow() {
 			this.curSelectSite = uni.getStorageSync('siteInfo')
@@ -229,10 +256,15 @@
 					if (aoiList.length) {
 						this.isShowBuild = true
 						// 正常展示户室数据
-						aoiList.forEach(item => {
-							item.children && item.children.sort((a, b) => a.floor - b.floor)
-						})
-						this.buildingList = aoiList || []
+						
+						if(this.unitName){     //扫单元码进入过滤其它单元
+							this.buildingList = aoiList.filter(e => e.unitName == this.unitName);
+						}else {
+							 aoiList.forEach(item => {
+							 	item.children && item.children.sort((a, b) => a.floor - b.floor)
+							 })
+							 this.buildingList = aoiList || []
+						}
 					}
 					if (shopList.length) {
 						this.isShowShop = true
@@ -266,7 +298,21 @@
 				} = item
 				let url = `/subPackage/house/houseNumber/index?stdId=${addressCode}&addressType=${addressType}`
 				this.$u.func.globalNavigator(url, "navTo")
-			}
+			},
+			getHouseData(code,code2,type) {
+				let params = {
+					code,
+					roleType:1
+				}
+				if(type == 1){
+					params.unitCode = code2
+				}else {
+					params.buildingCode = code2
+				}
+				getHouseStatistics(params).then(res => {
+					this.houseData = res.data;
+				})
+			},
 		}
 	}
 </script>
@@ -430,4 +476,36 @@
 		padding: 20rpx;
 
 	}
+	.cell {
+		padding: 20rpx 20rpx 0;
+		.cell-item {
+			// width: 220rpx;
+			width: calc(50% - 20rpx);
+			height: 190rpx;
+			border-radius: 10rpx;
+			margin-bottom: 20rpx;
+			display: flex;
+			flex-direction: column;
+			justify-content: center;
+			background-color: #fff;
+			padding: 0 20rpx;
+			box-sizing: border-box;
+			position: relative;
+			box-shadow: 0rpx 0rpx 10rpx 0rpx rgba(0, 0, 0, 0.1);
+		}
+	
+		.cell-item-icon {
+			width: 64rpx;
+			height: 64rpx;
+			position: absolute;
+			right: 20rpx;
+			top: 20rpx;
+		}
+		.cell-item:nth-last-child(-n+2) {
+		    margin-bottom:0;
+		} 
+	}
+	.search-box{
+		padding:20rpx;
+	}
 </style>
\ No newline at end of file
diff --git a/subPackage/house/list/index.vue b/subPackage/house/list/index.vue
index 5103c59..ee09cc1 100644
--- a/subPackage/house/list/index.vue
+++ b/subPackage/house/list/index.vue
@@ -95,16 +95,18 @@
 				id,
 				title,
 			} = e
-			this.currentId = id
 			this.curHouseTitle = title
 			if(e.addressType){
 				this.addressType = e.addressType
 			}
-			if(e.address){
+			if(e.address){    //扫码跳入
+			    this.currentId = e.aoiCode;
 				this.addressName = e.address;
 				this.neiName = e.neiName;
 				uni.setNavigationBarTitle({title})
-				this.getHouseData(id)
+				this.getHouseData(e.neiCode,e.aoiCode)
+			}else {
+				this.currentId = id
 			}
 		},
 		onShow() {
@@ -185,10 +187,11 @@
 				}
 			},
 			
-			getHouseData(code) {
+			getHouseData(code,aoiCode) {
 				getHouseStatistics({
-					code: code,
-					roleType: 1
+					code,
+					aoiCode,
+					roleType: 2
 				}).then(res => {
 					this.houseData = res.data;
 				})
@@ -247,8 +250,7 @@
 		padding: 20rpx;
 	}
 	.cell {
-		padding: 20rpx;
-	
+		padding: 20rpx 20rpx 0;
 		.cell-item {
 			// width: 220rpx;
 			width: calc(50% - 20rpx);
@@ -272,6 +274,9 @@
 			right: 20rpx;
 			top: 20rpx;
 		}
+		.cell-item:nth-last-child(-n+2) {
+		    margin-bottom:0;
+		} 
 	}
 	
 </style>
\ No newline at end of file
diff --git a/subPackage/house/roomDetails/index.vue b/subPackage/house/roomDetails/index.vue
index 814149a..d3f4254 100644
--- a/subPackage/house/roomDetails/index.vue
+++ b/subPackage/house/roomDetails/index.vue
@@ -12,7 +12,8 @@
 					</view>
 					
 					<view class="house-address f-26"  v-if="from">
-						{{houseInfo.addressName}}
+						<text>标准地址:</text>
+						<text>{{houseInfo.addressName}}</text>
 					</view>
 					
 					<view class="flex j-c-s-b info-content">
@@ -206,6 +207,7 @@
 			
 			if(e.from){
 				this.from = e.from;
+				
 			}
 			
 			
@@ -274,6 +276,12 @@
 				this.houseInfo.houseTitle = aoiName || subAoi
 				this.houseInfo.buildingName = buildingName
 				this.houseInfo.addressName = addressName
+				if(this.from){
+					uni.setNavigationBarTitle({
+						title:`${this.houseInfo.houseTitle}${this.houseInfo.buildingName}${this.houseInfo.unitName}${this.houseInfo.houseName }室`
+					})
+				}
+				
 				// 判断当前租客有没有过期
 				this.rentOutList.forEach(item => {
 					// 事件格式处理
diff --git a/subPackage/workbench/views/cscj.vue b/subPackage/workbench/views/cscj.vue
index 6ed926a..f08f8cd 100644
--- a/subPackage/workbench/views/cscj.vue
+++ b/subPackage/workbench/views/cscj.vue
@@ -172,7 +172,7 @@
 	import uploadMixin from "@/mixin/uploadMixin";
 	import lineItem from "@/subPackage/workbench/components/lineItem.vue"
 	import {
-		getLabelList
+		getLabelList,getLabelCate
 	} from "@/api/label/categoryLabel.js";
 	import {
 		getDoorplateAddressDetail,
@@ -416,6 +416,7 @@
 		},
 		onShow() {
 			this.getLabel()
+			this.getCategory();
 			// this.getLocation()
 		},
 		methods: {
@@ -721,6 +722,16 @@
 			popup() {
 				this.$refs.uniPopup.open()
 			},
+			
+			getCategory(){
+				getLabelCate({
+					level:2,
+					parentNo:11
+				}).then(res=>{
+					console.log("category===>",res)
+				})
+			},
+			
 
 			getLabel() {
 				getLabelList({
diff --git a/subPackage/workbench/views/cscj.vue.bak b/subPackage/workbench/views/cscj.vue.bak
new file mode 100644
index 0000000..793ca95
--- /dev/null
+++ b/subPackage/workbench/views/cscj.vue.bak
@@ -0,0 +1,908 @@
+<template>
+	<view class="container">
+		<view class="wrap">
+			
+		
+		<u-form labelWidth="70" :model="form" :rules="rules" ref="form">
+			<view class="item">
+				<!-- u-form-item v-if="!currentId" @click="showPicker = true" class="form-item" labelWidth="100" label="楼栋:"
+					:required="isRequired" :disabled="isDisabled" prop="buildingCode">
+					<u--input border="none" disabledColor="#ffffff" v-model="form.building" placeholder="请选择">
+					</u--input>
+					<u-icon slot="right" name="arrow-right"></u-icon>
+				</u-form-item> -->
+				<view class="box-title">
+					<box-title title="基础信息"></box-title>
+				</view>
+				<u-form-item class="form-item" labelWidth="100" label="场所名称:" :required="isRequiredPlace"
+					:disabled="isDisabled" prop="placeName">
+					<u--input border="none" v-model="form.placeName" placeholder="请输入">
+					</u--input>
+				</u-form-item>
+
+				<u-form-item @click="popup" class="form-item" labelWidth="100" label="标签:" :required="isRequired"
+					:disabled="isDisabled" prop="label">
+					<u--input border="none" disabled disabledColor="#ffffff" placeholder="请选择">
+					</u--input>
+					<u-icon slot="right" name="arrow-right"></u-icon>
+				</u-form-item>
+				<view v-if="showLabelList.length" class="label" style="border-bottom:1px solid eff1f3;">
+					<view v-for="(item,index) in showLabelList" :key="index" class="activeLabel">
+						<u-tag :closable="currentId?false:true" :show="!item.isClose" size="mini" @close="delTag(item)"
+							:text="item.text"></u-tag>
+					</view>
+				</view>
+
+				<u-form-item class="form-item" labelWidth="100" label="备注:" prop="remark">
+					<u--input border="none" v-model="form.remark" placeholder="请输入">
+					</u--input>
+				</u-form-item>
+
+				<!-- <u-form-item class="form-item" labelWidth="100" label="经纬度:" prop="location">
+					<u--input border="none" disabled disabledColor="#ffffff" v-model="form.jwd" placeholder="请输入">
+					</u--input>
+				</u-form-item> -->
+				
+				
+				<u-form-item label="经纬度:" prop="location">
+					<view class="address-row flex">
+						<view class="address-content f-28" v-if="form.jwd">
+							{{form.jwd}}
+						</view>
+						<view class="address-content f-28 c-99" v-if="!form.jwd">
+							请选择地址
+						</view>
+						<view class="location-btn c-main f-24" @click="getLocation()">
+							获取地址
+						</view>
+					</view>
+				</u-form-item>
+				
+				
+			</view>
+
+			<view class="item">
+				<view class="box-title">
+					<box-title title="负责人信息"></box-title>
+				</view>
+				<u-form-item class="form-item" labelWidth="100" :required="isRequired" :disabled="isDisabled"
+					label="场所负责人:" prop="username">
+					<u--input border="none" v-model="form.username" placeholder="请输入">
+					</u--input>
+				</u-form-item>
+				<u-form-item class="form-item" labelWidth="100" :required="isRequired" :disabled="isDisabled"
+					label="手机号:" prop="phone">
+					<u--input border="none" v-model="form.phone" placeholder="请输入">
+					</u--input>
+				</u-form-item>
+			</view>
+
+			<view class="item pic" v-if="(currentId && form.images.length) || !currentId ">
+				<view class="box-title">
+					<box-title title="场所照片"></box-title>
+				</view>
+				<u-upload :fileList="form.images" :previewFullImage="uploadConfig.previewFullImage"
+					:accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" :maxCount="uploadConfig.maxCount"
+					:capture="uploadConfig.capture" uploadIcon="/static/icon/upload.png" @afterRead="afterReadImg"
+					@delete="deletePic" :disabled="currentId?true:false" :deletable="currentId?false:true">
+				</u-upload>
+			</view>
+
+		</u-form>
+
+
+
+		<view class="item">
+			<view class="box-title">
+				<box-title title="综治网格">
+					<template slot="titleMore">
+						<view class="title-more">
+							<view class="red item"></view>
+							<view class="orange item">85.9</view>
+							<view class="green item"></view>
+						</view>
+					</template>
+				</box-title>
+			</view>
+			<lineItem :dataInfo="comprehensiveData.basic">
+			</lineItem>
+
+			<lineItem :dataInfo="comprehensiveData.scene">
+				<template v-slot:pic="{scope}">
+					<view class="image" v-if="scope.value !== ''">
+						<u--image @click="imgPreview(scope.value)" width="200rpx" height="200rpx"
+							:src="scope.value"></u--image>
+					</view>
+					<view class="" v-else>
+						{{scope.value}}
+					</view>
+				</template>
+			</lineItem>
+		</view>
+
+
+
+		<view class="item">
+			<view class="box-title">
+				<box-title title="公安网格">
+					<template slot="titleMore">
+						<view class="title-more">
+							<view class="red item"></view>
+							<view class="orange item">85.9</view>
+							<view class="green item"></view>
+						</view>
+					</template>
+				</box-title>
+			</view>
+			<lineItem :dataInfo="publicData.basic">
+			</lineItem>
+
+			<lineItem :dataInfo="publicData.scene">
+				<template v-slot:pic="{scope}">
+					{{scope.value}}
+				</template>
+			</lineItem>
+		</view>
+
+
+		<!-- <view class="bottom">
+			<view class="btn">
+				<u-button @click="submit" type="primary" text="提交" v-if="!currentId"></u-button>
+			</view>
+		</view> -->
+        </view>
+		<footer-btn @click="submit" v-if="!currentId" />
+
+		<uni-popup class="citys_win popup_win" ref="uniPopup" type="bottom">
+			<wyh-tree-select :items="labelList" title="标签选择" :showNav="true" defaultActiveColor="#4586fe"
+				:activeIds="activeIds" @clickItem="labelClick" :showCancel="false" :showConfirm="false">
+			</wyh-tree-select>
+		</uni-popup>
+
+
+		<u-picker :show="showPicker" :defaultIndex="defaultIndex" ref="uPicker" keyName="name" :loading="pickerLoading"
+			:columns="pickColumns" @change="changeHandler" @confirm="confirmPicker"
+			@cancel="showPicker = false"></u-picker>
+
+
+	</view>
+</template>
+
+<script>
+	import uploadMixin from "@/mixin/uploadMixin";
+	import lineItem from "@/subPackage/workbench/components/lineItem.vue"
+	import {
+		getLabelList
+	} from "@/api/label/categoryLabel.js";
+	import {
+		getDoorplateAddressDetail,
+		getDoorplateAddressList
+	} from "@/api/doorplateAddress/doorplateAddress";
+	import {
+		getPlaceDetail
+	} from '@/api/place/place.js'
+	import {
+		add
+	} from "@/api/place/place";
+	import {
+		format
+	} from "echarts";
+	import boxTitle from '../components/boxTitle/index.vue'
+	import {
+		minioBaseUrl
+	} from "../../../common/setting";
+	export default {
+		mixins: [uploadMixin],
+		components: {
+			lineItem,
+			boxTitle
+		},
+		data() {
+			return {
+				isRequired: false,
+				isRequiredPlace: true,
+				isDisabled: true,
+				showPicker: false,
+				pickerLoading: false,
+				pickColumns: [],
+				defaultIndex: [0, 0, 0, 0, 0],
+
+				selectValue: [],
+
+				form: {
+					// buildingCode: "",
+					images: [],
+					label: "",
+					remark: "",
+					imageUrls: "",
+					placeName: "",
+					username: '',
+					phone: '',
+					lat:'',
+					lng:''
+				},
+				rules: {
+					// 'buildingCode': {
+					// 	type: 'string',
+					// 	required: true,
+					// 	message: '请选择楼栋',
+					// 	trigger: ['blur', 'change']
+					// },
+					'placeName': {
+						type: 'string',
+						required: true,
+						message: '请输入场所名称',
+						trigger: ['blur', 'change']
+					},
+					'label': {
+						type: 'string',
+						required: true,
+						message: '请选择标签',
+						trigger: ['blur', 'change'],
+					},
+					'username': {
+						type: 'string',
+						required: true,
+						message: '请输入场所负责人',
+						trigger: ['blur', 'change'],
+					},
+					'phone': {
+						type: 'string',
+						required: true,
+						message: '请输入手机号',
+						trigger: ['blur', 'change'],
+					},
+				},
+
+				labelList: [{
+					text: '全部标签',
+					children: [],
+					dot: false
+				}, ],
+
+				comprehensiveData: {
+					basic: [{
+							label: "社区名称",
+							name: 'communityName',
+							value: "暂无数据"
+						},
+						{
+							label: "网格名称",
+							name: 'gridName',
+							value: "暂无数据"
+						},
+						{
+							label: "网格员",
+							name: 'realName',
+							value: "暂无数据"
+						},
+						{
+							label: "联系电话",
+							name: 'gridPhone',
+							value: "暂无数据"
+						}
+					],
+					scene: [{
+							label: "场所照片",
+							name: 'imageUrls',
+							value: "",
+							useSlot: "pic",
+						},
+						{
+							label: "场所负责人",
+							name: 'username',
+							value: "未完善",
+						},
+						{
+							label: "采集人",
+							name: 'createUserName',
+							value: "未完善"
+						},
+						{
+							label: "采集时间",
+							name: 'createTime',
+							value: "未完善"
+						},
+						{
+							label: "历史事件",
+							value: "未完善",
+						}
+					],
+				},
+				publicData: {
+					basic: [{
+							label: "公安局",
+							name: 'branchName',
+							value: "暂无数据"
+						},
+						{
+							label: "派出所",
+							name: 'localPoliceStationName',
+							value: "暂无数据"
+						},
+						{
+							label: "辖区民警",
+							name: 'policeman',
+							value: "暂无数据"
+						},
+						{
+							label: "联系电话",
+							name: 'policemanPhone',
+							value: "暂无数据"
+						}
+					],
+					scene: [{
+							label: "消防照片",
+							useSlot: "pic",
+						},
+						{
+							label: "采集人",
+							value: "未完善"
+						},
+						{
+							label: "采集时间",
+							value: "未完善"
+						},
+						{
+							label: "消防负责人",
+							value: "未完善",
+						},
+						{
+							label: "采集人",
+							value: "未完善"
+						},
+						{
+							label: "采集时间",
+							value: "未完善",
+						},
+						{
+							label: "历史事件",
+							value: "未完善",
+						}
+					],
+				},
+
+				activeIds: [],
+				showLabelList: [],
+				houseCode: "",
+				currentId: "",
+				addressType: 2
+			}
+		},
+		watch: {
+			activeIds: {
+				handler(newVal) {
+					this.form.label = newVal.join(",")
+				}
+			},
+			"form.buildingCode": {
+				handler(newVal) {}
+			},
+			showLabelList(newVal) {}
+		},
+
+		created() {
+			this.buildColumn()
+		},
+		mounted() {
+
+		},
+		options: {
+			styleIsolation: 'shared', // 解除样式隔离
+		},
+		onLoad(option) {
+			console.log(option)
+			const {
+				type
+			} = option
+			if (option.addressType) {
+				this.addressType = option.addressType
+			}
+			if (option.id) {
+				this.currentId = option.id
+			}
+			if (option.houseCode) {
+				this.houseCode = option.houseCode
+				this.form.houseCode = option.houseCode
+			}
+			if (option.id || option.houseCode) {
+				this.getBuildingDetail()
+			}
+			if (!!type || type != void 0) {
+				uni.setNavigationBarTitle({
+					title: '详情'
+				})
+			}
+		},
+		onShow() {
+			this.getLabel()
+			// this.getLocation()
+		},
+		methods: {
+
+			// getBuildingDetail(params = {}) {
+			// 	getDoorplateAddressDetail(Object.assign(params, {
+			// 		stdId: this.stdId
+			// 	})).then(res => {
+			// 		let data = res.data
+			// 		this.form.buildingCode = data.buildingCode
+
+			// 		let buildingNameArr = [data.townStreetName, data.neiName, data.streetRuName, data.aoiName,
+			// 			data.buildingName
+			// 		]
+			// 		let arr = buildingNameArr.filter(e => {
+			// 			return e != null || e != ''
+			// 		})
+
+			// 		// 赋值
+			// 		// this.form.placeName = data['placeName']
+			// 		Object.keys(this.form).forEach(key => {
+			// 			if (!data[key]) {
+			// 				this.form[key] = data.place[key]
+			// 			} else {
+			// 				this.form[key] = data[key]
+			// 			}
+			// 		})
+
+			// 		this.form.building = arr.join("")
+
+			// 		Object.keys(this.comprehensiveData).forEach(key => {
+			// 			this.comprehensiveData[key].forEach(item => {
+			// 				if (!data[item.name]) {
+			// 					item.value = data.place[item.name] || '未完善'
+			// 				} else {
+			// 					item.value = data[item.name] || '未完善'
+			// 				}
+			// 			})
+			// 			this.publicData[key].forEach(item => {
+			// 				if (!data[item.name]) {
+			// 					item.value = data.place[item.name] || '未完善'
+			// 				} else {
+			// 					item.value = data[item.name] || '未完善'
+			// 				}
+			// 			})
+			// 		})
+			// 	})
+			// },
+
+			getBuildingDetail(params = {}) {
+				let idorCodeParams = {}
+				if (this.houseCode) {
+					idorCodeParams = {
+						houseCode: this.houseCode,
+						// addressType:this.addressType
+					}
+				}
+				if (this.addressType) {
+					idorCodeParams.addressType = this.addressType
+				}
+				if (this.currentId) {
+					idorCodeParams = {
+						id: this.currentId
+					}
+				}
+				getPlaceDetail({
+					...params,
+					...idorCodeParams
+				}).then(({
+					code,
+					data
+				}) => {
+					if (code !== 200) {
+						uni.showToast({
+							title: "数据加载失败",
+							icon: 'error'
+						})
+						return
+					}
+					const dpaEntity = data?.doorplateAddressEntity || {}
+
+					const gridEntity = data?.grid || {}
+
+					// this.form.buildingCode = dpaEntity?.buildingCode || ''
+
+					let buildingNameArr = [
+						dpaEntity?.townStreetName,
+						dpaEntity?.neiName,
+						dpaEntity?.streetRuName,
+						dpaEntity?.aoiName,
+						dpaEntity?.buildingName
+					]
+					let arr = buildingNameArr.filter(e => {
+						return e != null || e != ''
+					})
+					this.form.placeName = data['placeName'] || ''
+
+					Object.keys(this.form).forEach(key => {
+						if (!data[key]) {
+							// this.form[key] = dpaEntity[key] || '未完善'
+							this.form[key] = dpaEntity[key]
+						} else {
+							// this.form[key] = data[key] || '未完善'
+							this.form[key] = data[key]
+						}
+						if (key === "images") {
+							// this.form[key] = data.imageUrls
+							if (data.imageUrls) {
+								this.form.images = this.$setImageUrl(data.imageUrls, 2);
+							} else {
+								this.form.images = []
+							}
+						}
+					})
+					
+					
+					this.form.jwd = `${Number(data.lat).toFixed(6)},${Number(data.lng).toFixed(6)}`
+
+					this.form.building = arr.join("")
+					setTimeout(() => {
+						data.placePoiLabelVOList.forEach(item => {
+							let label = this.labelList[0].children.find(sl => sl.text === item
+								.labelName) || {}
+							label['isClose'] = false
+							label?.text && this.showLabelList.push(label)
+						})
+					}, 500)
+					Object.keys(this.comprehensiveData).forEach(key => {
+						this.comprehensiveData[key].forEach(item => {
+							if (!data[item.name]) {
+								item.value = dpaEntity[item.name] || '未完善'
+								item.value = gridEntity[item.name] || '未完善'
+							} else {
+								item.value = data[item.name] || '未完善'
+								if (item.name == "imageUrls") {
+									item.value = this.$setImageUrl(data[item.name])
+									// item.value = minioBaseUrl + data[item.name] || '未完善'
+								}
+							}
+						})
+						this.publicData[key].forEach(item => {
+							if (!data[item.name]) {
+								item.value = dpaEntity[item.name] || '未完善'
+							} else {
+								item.value = data[item.name] || '未完善'
+							}
+						})
+					})
+
+				})
+			},
+
+			//表单提交
+			submit() {
+				const that = this
+				this.$refs.form.validate().then(valid => {
+					if (valid) {
+						if (this.form?.images?.length > 0) {
+							let urls = []
+							this.form.images.forEach(e => {
+								urls.push(e.name)
+							})
+							this.form.imageUrls = urls.join(",")
+						}
+						add(this.form).then(res => {
+							uni.showToast({
+								icon: 'success',
+								title: '提交成功',
+								success() {
+									setTimeout(() => {
+										that.$u.func.globalNavigator(
+											"/pages/home/index", "switchTab")
+									}, 1000)
+								}
+							})
+						})
+					}
+				})
+			},
+
+			async buildColumn() {
+
+				//设置街道
+				const townStreet = await this.getDoorplateAddressList(null, "townStreet")
+				this.setColumn(townStreet, 0)
+				//设置社区
+				const nei = await this.getDoorplateAddressList(townStreet[0]?.code, "nei")
+				this.setColumn(nei, 1)
+				//设置路
+				const streetRu = await this.getDoorplateAddressList(nei[0]?.code, "streetRu")
+				this.setColumn(streetRu, 2)
+				//设置地区
+				const district = await this.getDoorplateAddressList(streetRu[0]?.code, "district")
+				this.setColumn(district, 3)
+				//设置楼栋
+				const building = await this.getDoorplateAddressList(district[0]?.code, "building")
+				this.setColumn(building, 4)
+			},
+
+			setColumn(data, index) {
+				this.$set(this.pickColumns, index, data)
+			},
+
+			getLocation() {
+				const that = this
+				uni.getLocation({
+					type: 'wgs84', // 坐标系类型
+					success: function(res) {
+						var latitude = res.latitude; // 维度
+						var longitude = res.longitude; // 经度
+
+						that.form.lng = longitude
+						that.form.lat = latitude
+
+						that.form.jwd = longitude + "," + latitude
+					},
+					fail: function(res) {
+						console.log('获取定位失败:' + res.errMsg);
+					}
+				});
+			},
+			
+			getLocation() {
+				uni.chooseLocation({
+					success: (res) => {
+						this.form.lat = res.latitude;
+						this.form.lng = res.longitude;
+						this.form.jwd = `${Number(res.latitude).toFixed(6)},${Number(res.longitude).toFixed(6)}`
+					}
+				})
+			},
+
+			async getDoorplateAddressList(code, type) {
+				const res = await getDoorplateAddressList(code, type)
+				return res.data
+			},
+
+			confirmPicker(e) {
+
+				if (e.value[4]) {
+					this.selectValue = e.value
+
+					let arr = this.selectValue.map(e => e.name)
+					this.form.building = arr.join("")
+
+					this.form.buildingCode = e.value[4].code
+				}
+				this.showPicker = false
+			},
+
+			async changeHandler(e) {
+				const {
+					columnIndex,
+					index,
+					// 微信小程序无法将picker实例传出来,只能通过ref操作
+					picker = this.$refs.uPicker
+				} = e
+				let item = e.values[columnIndex][index]
+				//街道
+				if (columnIndex === 0) {
+					//获取社区列表
+					const nei = await this.getDoorplateAddressList(item.code, "nei")
+					picker.setColumnValues(1, nei)
+
+					const streetRu = await this.getDoorplateAddressList(nei[0].code, "streetRu")
+					picker.setColumnValues(2, streetRu)
+
+					const district = await this.getDoorplateAddressList(streetRu[0].code, "district")
+					picker.setColumnValues(3, district)
+
+					const building = await this.getDoorplateAddressList(district[0].code, "building")
+					picker.setColumnValues(4, building)
+				}
+
+				if (columnIndex === 1) {
+					const streetRu = await this.getDoorplateAddressList(item.code, "streetRu")
+					picker.setColumnValues(2, streetRu)
+
+					const district = await this.getDoorplateAddressList(streetRu[0].code, "district")
+					picker.setColumnValues(3, district)
+
+					const building = await this.getDoorplateAddressList(district[0].code, "building")
+					picker.setColumnValues(4, building)
+				}
+
+				if (columnIndex === 2) {
+
+					const district = await this.getDoorplateAddressList(item.code, "district")
+					picker.setColumnValues(3, district)
+
+					const building = await this.getDoorplateAddressList(district[0].code, "building")
+					picker.setColumnValues(4, building)
+				}
+
+				if (columnIndex === 3) {
+					const building = await this.getDoorplateAddressList(item.code, "building")
+					picker.setColumnValues(4, building)
+				}
+
+			},
+
+			//弹出层打开
+			popup() {
+				this.$refs.uniPopup.open()
+			},
+
+			getLabel() {
+				getLabelList({
+					size: -1
+				}).then(res => {
+					let data = res.data.records
+					data.sort((a, b) => a.sort - b.sort)
+
+					data.forEach(label => {
+						this.labelList[0].children.push({
+							id: label.categoryNo,
+							text: label.categoryName
+						})
+					})
+				})
+			},
+
+			labelClick(item) {
+
+				//判断label是否已在
+				const label = this.showLabelList.find(e => e.id == item.id)
+				if (label) {
+					//在,去掉
+					this.showLabelList = this.showLabelList.filter(e => e.id != label.id)
+					this.activeIds = this.activeIds.filter(e => e != label.id)
+				} else {
+					//不在,添加
+					item.isClose = false
+					this.showLabelList.push(item)
+					this.activeIds.push(item.id)
+				}
+
+				this.showLabelList.sort((a, b) => a.sort - b.sort)
+
+			},
+			delTag(label) {
+				label.isClose = true
+				this.showLabelList = this.showLabelList.filter(e => e.id != label.id)
+				this.activeIds = this.activeIds.filter(e => e != label.id)
+
+			},
+			imgPreview(value) {
+				uni.previewImage({
+					urls: minioBaseUrl + [value],
+				})
+			},
+		}
+	}
+</script>
+
+<style scoped lang="scss">
+	.container {
+		position: relative;
+		width: calc(100% - 60rpx);
+		// height: 100%;
+		display: flex;
+		flex-direction: column;
+		background: #f5f5f5;
+		padding: 0 30rpx 20rpx 30rpx;
+        .wrap{
+			width:100%;
+			margin-bottom:120rpx;
+		}
+		.box-title {
+			padding: 10px 0;
+
+			.title-more {
+				display: flex;
+				align-items: center;
+				height: 100%;
+
+				.item {
+					width: 50rpx;
+					height: 40rpx;
+					color: #ffffff;
+					padding: 6rpx;
+					font-size: 2rpx;
+					text-align: center;
+					line-height: 20px;
+				}
+
+			}
+		}
+
+		.item {
+			margin-top: 20rpx;
+			background-color: #ffffff;
+			border-radius: 8rpx;
+			padding: 0 30rpx;
+
+			.form-item {
+				background-color: #ffffff;
+				padding: 2rpx 10px;
+				border-bottom: 0.1px solid #eff1f3;
+			}
+
+			.label {
+				padding: 10rpx 30rpx;
+				display: flex;
+				background-color: #ffffff;
+				flex-wrap: wrap;
+
+				.activeLabel {
+					// width: 80rpx;
+					margin-left: 10rpx;
+					margin-top: 10rpx
+				}
+			}
+
+
+
+		}
+
+		.pic {
+			background-color: #ffffff;
+			padding-bottom: 20rpx;
+
+			/deep/ .u-upload__button {
+				border: 1rpx solid #EEEEEE;
+				background-color: #fff;
+			}
+		}
+
+		.image {
+			padding: 20rpx;
+		}
+
+		.bottom {
+			padding: 20rpx;
+			background-color: #ffffff;
+			display: flex;
+			justify-content: center;
+			align-items: center;
+
+			.btn {
+				width: calc(100% - 40rpx);
+			}
+		}
+	}
+
+	/deep/ .u-form-item {
+		background-color: #ffffff;
+		padding: 2rpx 10px;
+		border-bottom: 1px solid #eff1f3;
+	}
+
+	.red {
+		background-color: red;
+		border-radius: 10rpx 0rpx 0rpx 10rpx;
+	}
+
+	.orange {
+		background-color: orange;
+	}
+
+	.green {
+		background-color: green;
+		border-radius: 0rpx 10rpx 10rpx 0rpx;
+	}
+	
+	
+	.address-row {
+		flex: 1;
+		justify-content: flex-end;
+		align-items: center;
+	}
+	
+	.address-content {
+		width: calc(100% - 116rpx - 20rpx);
+		margin-right: 20rpx;
+		text-align: right;
+	}
+	
+	.location-btn {
+		width: 116rpx;
+		height: 46rpx;
+		line-height: 46rpx;
+		border-radius: 4rpx;
+		border: 1px solid currentColor;
+		padding: 0;
+		background-color: #fff;
+		text-align: center;
+	}
+	
+</style>
\ No newline at end of file

--
Gitblit v1.9.3