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