网格管理
This commit is contained in:
@@ -1,5 +1,18 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="AddGird">
|
<div class="AddGird">
|
||||||
|
<div class="item-flex">
|
||||||
|
<div class="label">
|
||||||
|
<span class="tips"></span>网格类型
|
||||||
|
</div>
|
||||||
|
<div class="value">{{$dict.getLabel('girdType', form.girdType)}}</div>
|
||||||
|
</div>
|
||||||
|
<div class="item-flex">
|
||||||
|
<div class="label">
|
||||||
|
<span class="tips"></span>网格层级
|
||||||
|
</div>
|
||||||
|
<div class="value">{{$dict.getLabel('girdLevel', form.girdLevel)}}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="item-flex">
|
<div class="item-flex">
|
||||||
<div class="label">
|
<div class="label">
|
||||||
<span class="tips">*</span>网格名称
|
<span class="tips">*</span>网格名称
|
||||||
@@ -15,7 +28,8 @@
|
|||||||
<div class="value" @click="toAddUser('manage')">
|
<div class="value" @click="toAddUser('manage')">
|
||||||
|
|
||||||
<span v-if="form.girdMemberManageList && form.girdMemberManageList.length">
|
<span v-if="form.girdMemberManageList && form.girdMemberManageList.length">
|
||||||
<span v-for="(item, index) in form.girdMemberManageList" :key="index"><span v-if="index>0">,</span>{{item.name}}</span>
|
<!-- <span v-for="(item, index) in form.girdMemberManageList" :key="index"><span v-if="index>0">,</span>{{item.name}}</span> -->
|
||||||
|
已选择<span style="color:#3F8DF5;margin:0 4px;">{{form.girdMemberManageList.length}}</span>人
|
||||||
</span>
|
</span>
|
||||||
<span style="color:#999;" v-else>请选择</span>
|
<span style="color:#999;" v-else>请选择</span>
|
||||||
<img src="./components/img/right-icon.png" alt="" /></div>
|
<img src="./components/img/right-icon.png" alt="" /></div>
|
||||||
@@ -26,7 +40,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="value" @click="toAddUser('Member')">
|
<div class="value" @click="toAddUser('Member')">
|
||||||
<span v-if="form.girdMemberList && form.girdMemberList.length">
|
<span v-if="form.girdMemberList && form.girdMemberList.length">
|
||||||
<span v-for="(item, index) in form.girdMemberList" :key="index"><span v-if="index>0">,</span>{{item.name}}</span>
|
已选择<span style="color:#3F8DF5;margin:0 4px;">{{form.girdMemberList.length}}</span>人
|
||||||
|
<!-- <span v-for="(item, index) in form.girdMemberList" :key="index"><span v-if="index>0">,</span>{{item.name}}</span> -->
|
||||||
</span>
|
</span>
|
||||||
<span style="color:#999;" v-else>请选择</span>
|
<span style="color:#999;" v-else>请选择</span>
|
||||||
<img src="./components/img/right-icon.png" alt="" />
|
<img src="./components/img/right-icon.png" alt="" />
|
||||||
@@ -54,6 +69,7 @@ export default {
|
|||||||
|
|
||||||
},
|
},
|
||||||
onLoad(option) {
|
onLoad(option) {
|
||||||
|
this.$dict.load('girdType', 'girdLevel').then(() => {
|
||||||
this.id = option.id
|
this.id = option.id
|
||||||
this.fromType = option.fromType
|
this.fromType = option.fromType
|
||||||
this.getDetail()
|
this.getDetail()
|
||||||
@@ -64,6 +80,7 @@ export default {
|
|||||||
this.form.girdMemberList = res
|
this.form.girdMemberList = res
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
})
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
document.title = '添加网格'
|
document.title = '添加网格'
|
||||||
|
|||||||
@@ -1,12 +1,15 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="FamilyList">
|
<div class="FamilyList">
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<div>户主列表</div>
|
<div>户主列表({{list.length || 0}})</div>
|
||||||
<div v-if="list.length">
|
<div v-if="list.length">
|
||||||
<span style="font-size: 14px; color: #2979ff;" @click="changeType" v-if="edit">修改</span>
|
<span style="font-size: 14px; color: #2979ff;" @click="changeType" v-if="edit">修改</span>
|
||||||
<span style="font-size: 14px; color: #2979ff;" @click="edit = true" v-else>取消</span>
|
<span style="font-size: 14px; color: #2979ff;" @click="edit = true" v-else>取消</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="seachObjs">
|
||||||
|
<u-search v-model="keyword" :clearabled="true" placeholder="姓名/联系方式/身份证后6位" :show-action="false" bg-color="#F5F5F5" search-icon-color="#E2E8F1" color="#666" height="58" @search="handerSearch" @clear="handerClear"></u-search>
|
||||||
|
</div>
|
||||||
<div class="main" v-if="list.length">
|
<div class="main" v-if="list.length">
|
||||||
<ul v-for="(item,index) in list" :key="index">
|
<ul v-for="(item,index) in list" :key="index">
|
||||||
<li>
|
<li>
|
||||||
@@ -49,7 +52,8 @@ export default {
|
|||||||
userId: '',
|
userId: '',
|
||||||
edit: true,
|
edit: true,
|
||||||
checked: true,
|
checked: true,
|
||||||
girdId: ''
|
girdId: '',
|
||||||
|
keyword: ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -121,7 +125,7 @@ export default {
|
|||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
padding: 24px 32px;
|
padding: 24px 32px;
|
||||||
background-color: #F3F6F9;
|
background-color: #fff;
|
||||||
font-size: 34px;
|
font-size: 34px;
|
||||||
font-weight: 800;
|
font-weight: 800;
|
||||||
}
|
}
|
||||||
@@ -199,5 +203,11 @@ export default {
|
|||||||
font-size: 36px;
|
font-size: 36px;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
}
|
}
|
||||||
|
.seachObjs {
|
||||||
|
border-bottom: 2px solid #f5f5f5;
|
||||||
|
border-top: 2px solid #f5f5f5;
|
||||||
|
padding: 20px 32px;
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="Organization">
|
<div class="Organization">
|
||||||
<div class="title">网格人员</div>
|
<div class="title">网格人员</div>
|
||||||
<div class="user-content" v-for="(item, index) in dataInfo.parentGirdMembers" :key="index">
|
<div class="user-content" v-for="(item, index) in dataInfo.parentGirdMembers" :key="index" @click="viewUser(item.wxUserId)">
|
||||||
<image :src="item.photo" alt="" mode="aspectFill" v-if="item.photo" />
|
<image :src="item.photo" alt="" mode="aspectFill" v-if="item.photo" />
|
||||||
<img src="./components/img/big-user.png" alt="" v-else>
|
<img src="./components/img/big-user.png" alt="" v-else>
|
||||||
<div class="right">
|
<div class="right">
|
||||||
@@ -10,15 +10,18 @@
|
|||||||
<p>{{item.girdName}}</p>
|
<p>{{item.girdName}}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="user-content user-item" v-for="(item, index) in dataInfo.girdMembers" :key="index">
|
<div class="user-content user-item" v-for="(item, index) in dataInfo.girdMembers" :key="index" @click="viewUser(item.wxUserId)">
|
||||||
<image :src="item.photo" alt="" mode="aspectFill" v-if="item.photo" />
|
<image :src="item.photo" alt="" mode="aspectFill" v-if="item.photo" />
|
||||||
<img src="./components/img/user-img.png" alt="" v-else />
|
<img src="./components/img/user-img.png" alt="" v-else />
|
||||||
<div class="right">
|
<div class="right">
|
||||||
<div class="name">{{item.name}}
|
<div class="name">{{item.name}}
|
||||||
<span class="gird">{{item.checkType == 2 ? '网格长' : '网格员'}}</span>
|
<span class="gird">{{item.checkType == 2 ? '网格长' : '网格员'}}</span>
|
||||||
|
<span class="num" v-if="item.checkType == 1">家庭数(10)</span>
|
||||||
|
</div>
|
||||||
|
<div class="gird-name">
|
||||||
|
<span class="text">{{item.girdName}}</span>
|
||||||
<span class="family-btn" @click="linkTo(`./FamilyList?id=${item.id}&girdId=${userGird.id}`)" v-if="item.checkType == 1">责任家庭 ></span>
|
<span class="family-btn" @click="linkTo(`./FamilyList?id=${item.id}&girdId=${userGird.id}`)" v-if="item.checkType == 1">责任家庭 ></span>
|
||||||
</div>
|
</div>
|
||||||
<p>{{item.girdName}} </p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<AiEmpty description="暂无数据" class="emptyWrap" v-if="dataInfo.parentGirdMembers && !dataInfo.parentGirdMembers.length && !dataInfo.girdMembers.length"></AiEmpty>
|
<AiEmpty description="暂无数据" class="emptyWrap" v-if="dataInfo.parentGirdMembers && !dataInfo.parentGirdMembers.length && !dataInfo.girdMembers.length"></AiEmpty>
|
||||||
@@ -57,6 +60,16 @@ export default {
|
|||||||
},
|
},
|
||||||
linkTo(url) {
|
linkTo(url) {
|
||||||
uni.navigateTo({url})
|
uni.navigateTo({url})
|
||||||
|
},
|
||||||
|
viewUser(userId) {
|
||||||
|
wx.invoke('openUserProfile', {
|
||||||
|
"type": 1, //1表示该userid是企业成员,2表示该userid是外部联系人
|
||||||
|
"userid": userId //可以是企业成员,也可以是外部联系人
|
||||||
|
}, function(res) {
|
||||||
|
if(res.err_msg != "openUserProfile:ok") {
|
||||||
|
//错误处理
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
@@ -147,6 +160,12 @@ export default {
|
|||||||
line-height: 36px;
|
line-height: 36px;
|
||||||
float: right;
|
float: right;
|
||||||
}
|
}
|
||||||
|
.num{
|
||||||
|
font-size: 26px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
line-height: 36px;
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
.pad-b112{
|
.pad-b112{
|
||||||
padding-bottom: 112px;
|
padding-bottom: 112px;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,18 +48,20 @@
|
|||||||
<div v-if="form.girdMemberManageList && form.girdMemberManageList.length">
|
<div v-if="form.girdMemberManageList && form.girdMemberManageList.length">
|
||||||
<div class="info-flex" v-for="(item, index) in form.girdMemberManageList" :key="index">
|
<div class="info-flex" v-for="(item, index) in form.girdMemberManageList" :key="index">
|
||||||
<span class="label">网格长</span>
|
<span class="label">网格长</span>
|
||||||
<span class="value">{{ item.name }} {{ item.phone }}
|
<span class="value">{{ item.name }}
|
||||||
|
<!-- {{ item.phone }}
|
||||||
<img :src="$cdn + 'common/phone.png'" alt="" @click="callPhone(item.phone)" class="phone-icon"
|
<img :src="$cdn + 'common/phone.png'" alt="" @click="callPhone(item.phone)" class="phone-icon"
|
||||||
v-if="item.phone">
|
v-if="item.phone"> -->
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="form.girdMemberList && form.girdMemberList.length">
|
<div v-if="form.girdMemberList && form.girdMemberList.length">
|
||||||
<div class="info-flex" v-for="(item, index) in form.girdMemberList" :key="index">
|
<div class="info-flex" v-for="(item, index) in form.girdMemberList" :key="index">
|
||||||
<span class="label">网格员</span>
|
<span class="label">网格员</span>
|
||||||
<span class="value">{{ item.name }} {{ item.phone }}
|
<span class="value">{{ item.name }}
|
||||||
|
<!-- {{ item.phone }}
|
||||||
<img :src="$cdn + 'common/phone.png'" alt="" @click="callPhone(item.phone)" class="phone-icon"
|
<img :src="$cdn + 'common/phone.png'" alt="" @click="callPhone(item.phone)" class="phone-icon"
|
||||||
v-if="item.phone">
|
v-if="item.phone"> -->
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -48,6 +48,12 @@
|
|||||||
|
|
||||||
<span class="boxesRight">{{ $dict.getLabel('girdLevel', girdMsgList.girdLevel) || '' }}</span>
|
<span class="boxesRight">{{ $dict.getLabel('girdLevel', girdMsgList.girdLevel) || '' }}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="boxes">
|
||||||
|
<span class="boxesLeft">标绘状态</span>
|
||||||
|
|
||||||
|
<span class="boxesRight">{{ girdMsgList.plottingStatus== 1 ? '已标绘' : '未标绘' }}</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user