Merge branch 'dev' of http://git.sinoecare.com/sinoecare/digital_village_cp/dv_cp_wechat_app into dev
This commit is contained in:
@@ -131,43 +131,25 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getUser() {
|
getUser() {
|
||||||
this.$loading()
|
this.$http.post(`/app/appepidemicreportmember/queryDetailById?id=${this.id}`).then((res) => {
|
||||||
this.$http
|
if (res.code == 0) {
|
||||||
.post(`/app/appepidemicreportmember/queryDetailById?id=${this.id}`)
|
this.userList = res.data
|
||||||
.then((res) => {
|
}
|
||||||
if (res.code == 0) {
|
})
|
||||||
this.userList = res.data
|
|
||||||
this.$hideLoading()
|
|
||||||
} else {
|
|
||||||
this.$hideLoading()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
this.$hideLoading()
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 异常情况
|
// 异常情况
|
||||||
getErrThing() {
|
getErrThing() {
|
||||||
this.$loading()
|
this.$loading()
|
||||||
this.$http
|
this.$http.post(`/app/appepidemichealthreport/list?memberId=${this.id}`).then((res) => {
|
||||||
.post(`/app/appepidemichealthreport/list?memberId=${this.id}`)
|
if (res.code == 0) {
|
||||||
.then((res) => {
|
this.datas = res.data.records
|
||||||
if (res.code == 0) {
|
}
|
||||||
this.datas = res.data.records
|
})
|
||||||
this.$hideLoading()
|
|
||||||
} else {
|
|
||||||
this.$hideLoading()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
this.$hideLoading()
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 异常情况记录
|
// 异常情况记录
|
||||||
getRecord() {
|
getRecord() {
|
||||||
this.$loading()
|
|
||||||
this.$http
|
this.$http
|
||||||
.post(`/app/appepidemicunusuallog/list`, null, {
|
.post(`/app/appepidemicunusuallog/list`, null, {
|
||||||
params: {
|
params: {
|
||||||
@@ -179,14 +161,8 @@ export default {
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
this.data = this.current > 1 ? [...this.data, ...res.data.records] : res.data.records
|
this.data = this.current > 1 ? [...this.data, ...res.data.records] : res.data.records
|
||||||
this.$hideLoading()
|
|
||||||
} else {
|
|
||||||
this.$hideLoading()
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {
|
|
||||||
this.$hideLoading()
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 新增记录
|
// 新增记录
|
||||||
@@ -217,7 +193,8 @@ export default {
|
|||||||
this.$http.post('/app/appepidemicreportmember/release', { id: this.id }).then((res) => {
|
this.$http.post('/app/appepidemicreportmember/release', { id: this.id }).then((res) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
this.$u.toast('解除成功!')
|
this.$u.toast('解除成功!')
|
||||||
uni.$emit('updateDetail')
|
uni.$emit('updateDetails')
|
||||||
|
uni.$emit('updateLists')
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
uni.navigateBack()
|
uni.navigateBack()
|
||||||
}, 600)
|
}, 600)
|
||||||
|
|||||||
@@ -115,6 +115,12 @@ export default {
|
|||||||
this.areaName = this.user.areaName
|
this.areaName = this.user.areaName
|
||||||
this.getList()
|
this.getList()
|
||||||
this.getUserList()
|
this.getUserList()
|
||||||
|
|
||||||
|
uni.$on('updateLists', () => {
|
||||||
|
this.current = 1
|
||||||
|
this.getList()
|
||||||
|
this.getUserList()
|
||||||
|
})
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
this.areaId = this.user.areaId
|
this.areaId = this.user.areaId
|
||||||
@@ -129,29 +135,23 @@ export default {
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
this.data = this.current > 1 ? [...this.data, ...res.data.records] : res.data.records
|
this.data = this.current > 1 ? [...this.data, ...res.data.records] : res.data.records
|
||||||
} else {
|
this.$forceUpdate()
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(() => {})
|
|
||||||
},
|
|
||||||
|
|
||||||
getUserList() {
|
|
||||||
uni.showLoading({
|
|
||||||
title: '加载数据中',
|
|
||||||
})
|
|
||||||
this.$http
|
|
||||||
.post(`/app/appepidemicreportmember/statistic?areaId=${this.areaId}`)
|
|
||||||
.then((res) => {
|
|
||||||
if (res.code == 0) {
|
|
||||||
this.userList = res.data
|
|
||||||
uni.hideLoading()
|
|
||||||
} else {
|
|
||||||
uni.hideLoading()
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
uni.hideLoading()
|
this.$forceUpdate()
|
||||||
})
|
})
|
||||||
|
.finally(() => {
|
||||||
|
this.$forceUpdate()
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
getUserList() {
|
||||||
|
this.$http.post(`/app/appepidemicreportmember/statistic?areaId=${this.areaId}`).then((res) => {
|
||||||
|
if (res.code == 0) {
|
||||||
|
this.userList = res.data
|
||||||
|
}
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
goDetail(item) {
|
goDetail(item) {
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ export default {
|
|||||||
}
|
}
|
||||||
this.getRecord()
|
this.getRecord()
|
||||||
|
|
||||||
uni.$on('updateDetail', () => {
|
uni.$on('updateDetails', () => {
|
||||||
this.getUser()
|
this.getUser()
|
||||||
this.getRecord()
|
this.getRecord()
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -157,38 +157,22 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
getUser() {
|
getUser() {
|
||||||
this.$loading()
|
this.$loading()
|
||||||
this.$http
|
this.$http.post(`/app/appepidemicreportmember/queryDetailById?id=${this.userList.memberId}`).then((res) => {
|
||||||
.post(`/app/appepidemicreportmember/queryDetailById?id=${this.userList.memberId}`)
|
if (res.code == 0) {
|
||||||
.then((res) => {
|
this.data = res.data
|
||||||
if (res.code == 0) {
|
this.data.idNumber = res.data.idNumber.replace(/(.{6}).*(.{4})/, '$1********$2')
|
||||||
this.data = res.data
|
}
|
||||||
this.data.idNumber = res.data.idNumber.replace(/(.{6}).*(.{4})/,"$1********$2")
|
})
|
||||||
this.$hideLoading()
|
|
||||||
} else {
|
|
||||||
this.$hideLoading()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
this.$hideLoading()
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 异常情况记录
|
// 异常情况记录
|
||||||
getRecord() {
|
getRecord() {
|
||||||
this.$loading()
|
this.$loading()
|
||||||
this.$http
|
this.$http.post(`/app/appepidemicunusuallog/list?recordId=${this.userList.memberId}`).then((res) => {
|
||||||
.post(`/app/appepidemicunusuallog/list?recordId=${this.userList.memberId}`)
|
if (res.code == 0) {
|
||||||
.then((res) => {
|
this.datas = res.data.records
|
||||||
if (res.code == 0) {
|
}
|
||||||
this.datas = res.data.records
|
})
|
||||||
this.$hideLoading()
|
|
||||||
} else {
|
|
||||||
this.$hideLoading()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
this.$hideLoading()
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
|
|
||||||
callPhone(phone) {
|
callPhone(phone) {
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<u-search v-model="value" placeholder:clearabled="true" placeholder="请输入姓名/身份证/手机号" :show-action="false" bg-color="#F5F5F5" search-icon-color="#999" color="#999" height="58" @search="getListInit" @clear="value='',getListInit"></u-search>
|
<u-search v-model="value" placeholder:clearabled="true" placeholder="请输入姓名/身份证/手机号" :show-action="false" bg-color="#F5F5F5" search-icon-color="#999" color="#999" height="58" @search="getListInit" @clear="value='',getListInit"></u-search>
|
||||||
</div>
|
</div>
|
||||||
<div class="userList">
|
<div class="userList" v-if="list.length">
|
||||||
<ul v-for="(item,index) in list" :key="index">
|
<ul v-for="(item,index) in list" :key="index">
|
||||||
<li class="main">
|
<li class="main">
|
||||||
<div class="user">
|
<div class="user">
|
||||||
@@ -36,6 +36,7 @@
|
|||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
<AiEmpty description="暂无数据" class="emptyWrap" v-if="!list.length"></AiEmpty>
|
||||||
<div style="height:70px;"></div>
|
<div style="height:70px;"></div>
|
||||||
<div class="btn">
|
<div class="btn">
|
||||||
<div class="handleCheck" @click="confirm">确定选择</div>
|
<div class="handleCheck" @click="confirm">确定选择</div>
|
||||||
@@ -116,7 +117,6 @@ export default {
|
|||||||
this.userId = option.id
|
this.userId = option.id
|
||||||
this.areaId = this.user.areaId
|
this.areaId = this.user.areaId
|
||||||
this.areaName = this.user.areaName
|
this.areaName = this.user.areaName
|
||||||
console.log(this.userId)
|
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
document.title = '新增责任家庭'
|
document.title = '新增责任家庭'
|
||||||
@@ -131,7 +131,6 @@ export default {
|
|||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.AddFamily {
|
.AddFamily {
|
||||||
background-color: #FFFFFF;
|
|
||||||
.search{
|
.search{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 112px;
|
height: 112px;
|
||||||
@@ -151,7 +150,6 @@ export default {
|
|||||||
padding-left: 0px;
|
padding-left: 0px;
|
||||||
li {
|
li {
|
||||||
list-style-type: none;
|
list-style-type: none;
|
||||||
|
|
||||||
.user {
|
.user {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: flex-start;
|
justify-content: flex-start;
|
||||||
@@ -204,7 +202,6 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -225,7 +222,7 @@ export default {
|
|||||||
line-height: 80px;
|
line-height: 80px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: #1365DD;
|
background-color: #1365DD;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<span class="tips">*</span>网格名称
|
<span class="tips">*</span>网格名称
|
||||||
</div>
|
</div>
|
||||||
<div class="value">
|
<div class="value">
|
||||||
<u-input type="text" placeholder="请输入" input-align="right" placeholder-style="color:#999;font-size:16px;" height="48" v-model="form.girdName" maxlength="20" />
|
<u-input type="text" placeholder="请输入" input-align="right" placeholder-style="color:#999;font-size:16px;" height="48" v-model="form.girdName" maxlength="50" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item-flex">
|
<div class="item-flex">
|
||||||
@@ -29,7 +29,8 @@
|
|||||||
<span v-for="(item, index) in form.girdMemberList" :key="index"><span v-if="index>0">,</span>{{item.name}}</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="" /></div>
|
<img src="./components/img/right-icon.png" alt="" />
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="footer" @click="confirm">确认添加</div>
|
<div class="footer" @click="confirm">确认添加</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -81,6 +82,7 @@ export default {
|
|||||||
this.form.girdLevel = Number(this.detailInfo.girdLevel)+1
|
this.form.girdLevel = Number(this.detailInfo.girdLevel)+1
|
||||||
this.form.girdType = Number(this.detailInfo.girdType)+1
|
this.form.girdType = Number(this.detailInfo.girdType)+1
|
||||||
this.form.isLastLevel = this.form.girdLevel == 2 ? '1' : '0'
|
this.form.isLastLevel = this.form.girdLevel == 2 ? '1' : '0'
|
||||||
|
this.$forceUpdate()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -109,6 +111,8 @@ export default {
|
|||||||
uni.navigateBack()
|
uni.navigateBack()
|
||||||
}, 600)
|
}, 600)
|
||||||
}
|
}
|
||||||
|
}).catch((err) => {
|
||||||
|
this.$u.toast(err)
|
||||||
})
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,14 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="AppGridManagement">
|
<div class="AppGridManagement">
|
||||||
|
<div class="pad-t32" v-if="component != 'Map' && isAdmin"></div>
|
||||||
|
<div class="select-gird" v-if="component != 'Map' && isAdmin">
|
||||||
|
<img src="./components/img/gird-icon.png" alt="" class="gird-icon">
|
||||||
|
<div @click="linkTo('./SelectGird')">
|
||||||
|
{{params.girdName}}
|
||||||
|
<img src="./components/img/down-icon.png" alt="" class="down-icon">
|
||||||
|
</div>
|
||||||
|
<span @click="linkTo('./SetGird')" v-if="checkType == 2">网格配置</span>
|
||||||
|
</div>
|
||||||
<component v-if="refresh && isAdmin" :is="component" @change="onChange" :params="params"> </component>
|
<component v-if="refresh && isAdmin" :is="component" @change="onChange" :params="params"> </component>
|
||||||
<div class="tabs" v-if="isTab && isAdmin">
|
<div class="tabs" v-if="isTab && isAdmin">
|
||||||
<div class="item" @click="tabClick(index, item.component)" v-for="(item, index) in tabs" :key="index">
|
<div class="item" @click="tabClick(index, item.component)" v-for="(item, index) in tabs" :key="index">
|
||||||
@@ -50,7 +59,8 @@ export default {
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
isTab: true,
|
isTab: true,
|
||||||
isAdmin: false
|
isAdmin: false,
|
||||||
|
checkType: ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -79,10 +89,15 @@ export default {
|
|||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
if (res.data.checkType != '0') {
|
if (res.data.checkType != '0') {
|
||||||
this.isAdmin = true
|
this.isAdmin = true
|
||||||
|
this.checkType = res.data.checkType
|
||||||
|
this.params = res.data.appGirdInfo
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
linkTo(url) {
|
||||||
|
uni.navigateTo({ url })
|
||||||
|
},
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
document.title = '网格管理'
|
document.title = '网格管理'
|
||||||
@@ -95,6 +110,9 @@ export default {
|
|||||||
},
|
},
|
||||||
onLoad() {
|
onLoad() {
|
||||||
this.isGirdUser()
|
this.isGirdUser()
|
||||||
|
uni.$on('goback', (res) => {
|
||||||
|
this.params = res
|
||||||
|
})
|
||||||
},
|
},
|
||||||
onReachBottom() {
|
onReachBottom() {
|
||||||
if(!this.tabIndex) {
|
if(!this.tabIndex) {
|
||||||
@@ -108,6 +126,46 @@ export default {
|
|||||||
.AppGridManagement {
|
.AppGridManagement {
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
}
|
}
|
||||||
|
.pad-t32{
|
||||||
|
padding-top: 32px;
|
||||||
|
}
|
||||||
|
.select-gird{
|
||||||
|
width: calc(100% - 60px);
|
||||||
|
padding: 24px 32px;
|
||||||
|
background: #FFFFFF;
|
||||||
|
border-radius: 16px;
|
||||||
|
margin: 0 30px 32px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
img{
|
||||||
|
width: 32px;
|
||||||
|
height: 32px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
div{
|
||||||
|
display: inline-block;
|
||||||
|
width: calc(100% - 144px);
|
||||||
|
padding-left: 20px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
font-size: 32px;
|
||||||
|
font-family: PingFangSC-Medium, PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #333;
|
||||||
|
line-height: 48px;
|
||||||
|
img{
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
span{
|
||||||
|
display: inline-block;
|
||||||
|
width: 112px;
|
||||||
|
height: 48px;
|
||||||
|
font-size: 28px;
|
||||||
|
font-family: PingFangSC-Medium, PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #3F8DF5;
|
||||||
|
line-height: 48px;
|
||||||
|
}
|
||||||
|
}
|
||||||
.tabs {
|
.tabs {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 98px;
|
height: 98px;
|
||||||
|
|||||||
@@ -1,21 +1,27 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="FamilyList">
|
<div class="FamilyList">
|
||||||
<div class="title">户主列表</div>
|
<div class="title">户主列表<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></div>
|
||||||
<div class="main" v-if="list.length">
|
<div class="main" v-if="list.length">
|
||||||
<ul v-for="item in list" :key="item.id">
|
<ul v-for="(item,index) in list" :key="index">
|
||||||
<li>
|
<li>
|
||||||
<div class="user">
|
<div class="user">
|
||||||
<div>
|
<div v-if="!edit">
|
||||||
<img :src="item.photo" class="userImg" v-if="item.photo">
|
<img src="./components/img/xz.png" alt="" class="checkbox" v-if="!item.checked" @click="userClick(index)">
|
||||||
<img src="./components/img/user-img.png" alt="" class="userImg" v-else>
|
<img src="./components/img/xzh.png" alt="" class="checkbox" v-else @click="userClick(index)">
|
||||||
</div>
|
</div>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<div class="name">
|
<div>
|
||||||
<span class="user-name">{{item.name}}</span>
|
<img :src="item.photo" class="userImg" v-if="item.photo">
|
||||||
<span class="user-tel">{{item.phone}}</span>
|
<img src="./components/img/user-img.png" alt="" class="userImg" v-else>
|
||||||
|
</div>
|
||||||
|
<div class="userInfo">
|
||||||
|
<div class="name">
|
||||||
|
<span class="user-name">{{item.name}}</span>
|
||||||
|
<span class="user-tel">{{item.phone}}</span>
|
||||||
|
</div>
|
||||||
|
<div class="idCard">{{item.idNumber && item.idNumber.replace(/(.{6}).*(.{4})/,"$1********$2")}}</div>
|
||||||
|
<div class="address">{{item.currentAreaName || ''}}{{ item.currentAddress || '' }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="idCard">{{item.idNumber && item.idNumber.replace(/(.{6}).*(.{4})/,"$1********$2")}}</div>
|
|
||||||
<div class="address">{{item.currentAreaName || ''}} {{ item.currentAddress || '' }}</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
@@ -23,7 +29,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<AiEmpty description="暂无数据" class="emptyWrap" v-if="!list.length"></AiEmpty>
|
<AiEmpty description="暂无数据" class="emptyWrap" v-if="!list.length"></AiEmpty>
|
||||||
<div style="height:70px;"></div>
|
<div style="height:70px;"></div>
|
||||||
<div class="footer" @click="toAddFamily()">新增责任家庭</div>
|
<div class="footer" @click="toAddFamily()" v-if="edit">新增责任家庭</div>
|
||||||
|
<div class="footer" @click="delFamily()" v-else>删除</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -34,6 +41,8 @@ export default {
|
|||||||
list:[],
|
list:[],
|
||||||
current:1,
|
current:1,
|
||||||
userId: '',
|
userId: '',
|
||||||
|
edit: true,
|
||||||
|
checked: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -47,6 +56,38 @@ export default {
|
|||||||
toAddFamily(){
|
toAddFamily(){
|
||||||
uni.navigateTo({url: `./AddFamily?id=${this.userId}`})
|
uni.navigateTo({url: `./AddFamily?id=${this.userId}`})
|
||||||
},
|
},
|
||||||
|
userClick(index) {
|
||||||
|
this.list[index].checked = !this.list[index].checked
|
||||||
|
this.$forceUpdate()
|
||||||
|
},
|
||||||
|
// 点击删除
|
||||||
|
delFamily(){
|
||||||
|
var ids = []
|
||||||
|
this.list.map((item) => {
|
||||||
|
if(item.checked) {
|
||||||
|
ids.push(item.gmrId)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if(!ids.length) {
|
||||||
|
return this.$u.toast('请选中需要删除的家庭户主')
|
||||||
|
}
|
||||||
|
this.$confirm(`是否删除这些关联家庭信息?`).then(() => {
|
||||||
|
this.$http.post(`/app/appgirdmemberresident/delete?ids=${ids.join(',')}`).then((res) => {
|
||||||
|
if (res.code == 0) {
|
||||||
|
this.$u.toast('删除成功')
|
||||||
|
uni.$emit('updateList')
|
||||||
|
this.$forceUpdate()
|
||||||
|
this.edit = true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
changeType() {
|
||||||
|
this.edit = false
|
||||||
|
this.list.map((item) => {
|
||||||
|
item.checked = false
|
||||||
|
})
|
||||||
|
}
|
||||||
},
|
},
|
||||||
onLoad(option) {
|
onLoad(option) {
|
||||||
this.userId = option.id
|
this.userId = option.id
|
||||||
@@ -70,16 +111,17 @@ export default {
|
|||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.FamilyList {
|
.FamilyList {
|
||||||
.title {
|
.title {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
padding: 24px 32px;
|
padding: 24px 32px;
|
||||||
background-color: #F3F6F9;
|
background-color: #F3F6F9;
|
||||||
font-size: 34px;
|
font-size: 34px;
|
||||||
font-weight: 800;
|
font-weight: 800;
|
||||||
}
|
}
|
||||||
.main {
|
.main {
|
||||||
background-color: #FFFFFF ;
|
|
||||||
padding-bottom: 112px;
|
padding-bottom: 112px;
|
||||||
ul {
|
ul {
|
||||||
padding: 0px 32px;
|
padding-left: 32px;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
li {
|
li {
|
||||||
list-style-type: none;
|
list-style-type: none;
|
||||||
@@ -87,18 +129,26 @@ export default {
|
|||||||
display: flex;
|
display: flex;
|
||||||
justify-content: flex-start;
|
justify-content: flex-start;
|
||||||
padding-top: 24px;
|
padding-top: 24px;
|
||||||
|
.checkbox{
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-right: 32px;
|
||||||
|
width: 48px;
|
||||||
|
height: 48px;
|
||||||
|
}
|
||||||
|
.info {
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-start;
|
||||||
|
width: 100%;
|
||||||
.userImg {
|
.userImg {
|
||||||
padding-right: 32px;
|
margin-right: 32px;
|
||||||
width: 80px;
|
width: 80px;
|
||||||
height: 80px;
|
height: 80px;
|
||||||
}
|
}
|
||||||
.info {
|
.userInfo {
|
||||||
border-bottom: 1px solid #E4E5E6;
|
width: 100%;
|
||||||
width: 606px;
|
padding-right: 32px;
|
||||||
div {
|
border-bottom: 1px solid #E4E5E6;
|
||||||
margin: 2px 0;
|
.name {
|
||||||
}
|
|
||||||
.name {
|
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
font-size: 32px;
|
font-size: 32px;
|
||||||
@@ -123,6 +173,8 @@ export default {
|
|||||||
font-size: 26px;
|
font-size: 26px;
|
||||||
color: #999999;
|
color: #999999;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,13 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="Organization">
|
<div class="Organization">
|
||||||
<div class="select-gird">
|
|
||||||
<img src="./components/img/gird-icon.png" alt="" class="gird-icon">
|
|
||||||
<div @click="linkTo('./SelectGird')">
|
|
||||||
{{userGird.girdName}}
|
|
||||||
<img src="./components/img/down-icon.png" alt="" class="down-icon">
|
|
||||||
</div>
|
|
||||||
<span @click="linkTo('./SetGird')" v-if="checkType == 2">网格配置</span>
|
|
||||||
</div>
|
|
||||||
<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">
|
||||||
<image :src="item.photo" alt="" mode="aspectFill" v-if="item.photo" />
|
<image :src="item.photo" alt="" mode="aspectFill" v-if="item.photo" />
|
||||||
@@ -40,32 +32,22 @@ export default {
|
|||||||
return {
|
return {
|
||||||
userGird: {},
|
userGird: {},
|
||||||
dataInfo: {},
|
dataInfo: {},
|
||||||
checkType: ''
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
props: ['params'],
|
||||||
onShow() {
|
onShow() {
|
||||||
document.title = '网格管理'
|
document.title = '网格管理'
|
||||||
|
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.isGirdUser()
|
this.userGird = this.params
|
||||||
|
this.getGirdUserList()
|
||||||
uni.$on('goback', (res) => {
|
uni.$on('goback', (res) => {
|
||||||
this.userGird = res
|
this.userGird = res
|
||||||
this.getGirdUserList()
|
this.getGirdUserList()
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
isGirdUser() {
|
|
||||||
this.$http.post('/app/appgirdmemberinfo/checkLogOnUser').then((res) => {
|
|
||||||
if (res.code == 0) {
|
|
||||||
if (res.data.checkType != '0') {
|
|
||||||
this.checkType = res.data.checkType
|
|
||||||
this.userGird = res.data.appGirdInfo
|
|
||||||
this.getGirdUserList()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getGirdUserList() {
|
getGirdUserList() {
|
||||||
this.$http.post(`/app/appgirdmemberinfo/listGirdMemberByGirdId?girdId=${this.userGird.id}`).then((res) => {
|
this.$http.post(`/app/appgirdmemberinfo/listGirdMemberByGirdId?girdId=${this.userGird.id}`).then((res) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
@@ -82,45 +64,7 @@ export default {
|
|||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.Organization {
|
.Organization {
|
||||||
padding-top: 32px;
|
|
||||||
background-color: #f5f5f5;
|
background-color: #f5f5f5;
|
||||||
.select-gird{
|
|
||||||
width: calc(100% - 60px);
|
|
||||||
padding: 24px 32px;
|
|
||||||
background: #FFFFFF;
|
|
||||||
border-radius: 16px;
|
|
||||||
margin: 0 30px 32px;
|
|
||||||
box-sizing: border-box;
|
|
||||||
img{
|
|
||||||
width: 32px;
|
|
||||||
height: 32px;
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
div{
|
|
||||||
display: inline-block;
|
|
||||||
width: calc(100% - 144px);
|
|
||||||
padding-left: 20px;
|
|
||||||
box-sizing: border-box;
|
|
||||||
font-size: 32px;
|
|
||||||
font-family: PingFangSC-Medium, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
color: #333;
|
|
||||||
line-height: 48px;
|
|
||||||
img{
|
|
||||||
margin-left: 8px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
span{
|
|
||||||
display: inline-block;
|
|
||||||
width: 112px;
|
|
||||||
height: 48px;
|
|
||||||
font-size: 28px;
|
|
||||||
font-family: PingFangSC-Medium, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
color: #3F8DF5;
|
|
||||||
line-height: 48px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.title{
|
.title{
|
||||||
font-size: 38px;
|
font-size: 38px;
|
||||||
font-family: PingFangSC-Semibold, PingFang SC;
|
font-family: PingFangSC-Semibold, PingFang SC;
|
||||||
|
|||||||
@@ -210,21 +210,25 @@ export default {
|
|||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
}
|
}
|
||||||
.rightes {
|
.rightes {
|
||||||
width: 100%;
|
width: calc(100% - 188px);
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-left: 32px;
|
margin-left: 32px;
|
||||||
border-bottom: 1px solid #e4e5e6;
|
border-bottom: 1px solid #e4e5e6;
|
||||||
.applicationNames {
|
.applicationNames {
|
||||||
|
width: calc(100% - 56px);
|
||||||
font-size: 36px;
|
font-size: 36px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
|
overflow:hidden;
|
||||||
|
text-overflow:ellipsis;
|
||||||
|
white-space:nowrap;
|
||||||
}
|
}
|
||||||
.imgs {
|
.imgs {
|
||||||
width: 40px;
|
width: 40px;
|
||||||
height: 40px;
|
height: 40px;
|
||||||
margin-right: 20px;
|
vertical-align: middle;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -85,12 +85,13 @@ export default {
|
|||||||
selectUserList.push(item)
|
selectUserList.push(item)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
if (!selectUserList.length) {
|
uni.$emit('selectUser', selectUserList)
|
||||||
return this.$u.toast('请选择人员')
|
uni.navigateBack()
|
||||||
} else {
|
// if (!selectUserList.length) {
|
||||||
uni.$emit('selectUser', selectUserList)
|
// return this.$u.toast('请选择人员')
|
||||||
uni.navigateBack()
|
// } else {
|
||||||
}
|
|
||||||
|
// }
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
onReachBottom() {
|
onReachBottom() {
|
||||||
|
|||||||
@@ -13,11 +13,14 @@
|
|||||||
<img src="./components/img/xzh.png" alt="" class="imgselect" v-if="item.isChecked" @click.stop="girdClick(item, index)" />
|
<img src="./components/img/xzh.png" alt="" class="imgselect" v-if="item.isChecked" @click.stop="girdClick(item, index)" />
|
||||||
<img src="./components/img/xz.png" alt="" class="imgselect" v-else @click.stop="girdClick(item, index)" />
|
<img src="./components/img/xz.png" alt="" class="imgselect" v-else @click.stop="girdClick(item, index)" />
|
||||||
</span>
|
</span>
|
||||||
|
<span v-else style="width:24px;"></span>
|
||||||
<img src="./components/img/gird--select-icon.png" alt="" class="avatras" />
|
<img src="./components/img/gird--select-icon.png" alt="" class="avatras" />
|
||||||
</div>
|
</div>
|
||||||
<div class="rightes">
|
<div class="rightes">
|
||||||
<div class="applicationNames" @click="showGirdInfo(item)">{{ item.girdName }}</div>
|
<div class="applicationNames" @click="showGirdInfo(item)">{{ item.girdName }}</div>
|
||||||
<img src="./components/img/right-icon.png" alt="" class="imgs" v-if="item.girdLevel != 2" @click="itemClick(item)" />
|
<div class="right-icon" v-if="item.girdLevel != 2" @click="itemClick(item)" >
|
||||||
|
<img src="./components/img/right-icon.png" alt="" class="imgs" />
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -147,6 +150,7 @@ export default {
|
|||||||
this.$http.post(`/app/appgirdinfo/queryAppGirdInfoByGirdLevel?girdLevel=${girdLevel}&girdMemberId=${this.userGird.girdMemberId}&parentGirdId=${row.id}`).then((res) => {
|
this.$http.post(`/app/appgirdinfo/queryAppGirdInfoByGirdLevel?girdLevel=${girdLevel}&girdMemberId=${this.userGird.girdMemberId}&parentGirdId=${row.id}`).then((res) => {
|
||||||
if (res?.data) {
|
if (res?.data) {
|
||||||
this.treeList = res.data
|
this.treeList = res.data
|
||||||
|
this.setGird = {}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
@@ -193,9 +197,13 @@ export default {
|
|||||||
this.$http.post(`/app/appgirdinfo/delete?ids=${this.form.id}`).then((res) => {
|
this.$http.post(`/app/appgirdinfo/delete?ids=${this.form.id}`).then((res) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
this.$u.toast('删除成功!')
|
this.$u.toast('删除成功!')
|
||||||
|
this.show = false
|
||||||
|
this.form = {}
|
||||||
this.treeList = []
|
this.treeList = []
|
||||||
this.isGirdUser()
|
this.isGirdUser()
|
||||||
}
|
}
|
||||||
|
}).catch((err) => {
|
||||||
|
this.$u.toast(err)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
@@ -276,16 +284,26 @@ export default {
|
|||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
}
|
}
|
||||||
.rightes {
|
.rightes {
|
||||||
width: 100%;
|
width: calc(100% - 140px);
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-left: 32px;
|
margin-left: 32px;
|
||||||
border-bottom: 1px solid #e4e5e6;
|
border-bottom: 1px solid #e4e5e6;
|
||||||
.applicationNames {
|
.applicationNames {
|
||||||
|
width: calc(100% - 100px);
|
||||||
font-size: 36px;
|
font-size: 36px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
|
overflow:hidden;
|
||||||
|
text-overflow:ellipsis;
|
||||||
|
white-space:nowrap;
|
||||||
|
}
|
||||||
|
.right-icon{
|
||||||
|
width: 100px;
|
||||||
|
padding-right: 32px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
text-align: right;
|
||||||
}
|
}
|
||||||
.imgs {
|
.imgs {
|
||||||
width: 40px;
|
width: 40px;
|
||||||
|
|||||||
@@ -1,15 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="Statistics">
|
<div class="Statistics">
|
||||||
<div class="top">
|
|
||||||
<div class="left" @click="linkTo('./SelectGird')">
|
|
||||||
<img src="./components/img/gird-icon.png" alt="" />
|
|
||||||
<div class="girdNmae">{{ girdMsgList.girdName || '' }}</div>
|
|
||||||
<u-icon name="arrow-down" color="#666"></u-icon>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="right" @click="linkTo('./SetGird')" v-if="checkType == 2">网格配置</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="middle">
|
<div class="middle">
|
||||||
<div class="girdPeople">网格内人员情况</div>
|
<div class="girdPeople">网格内人员情况</div>
|
||||||
|
|
||||||
@@ -86,6 +76,8 @@ export default {
|
|||||||
created() {
|
created() {
|
||||||
this.$dict.load('girdType', 'girdLevel').then(() => {
|
this.$dict.load('girdType', 'girdLevel').then(() => {
|
||||||
this.isGirdUser()
|
this.isGirdUser()
|
||||||
|
this.girdMsgList = this.params
|
||||||
|
this.getList()
|
||||||
})
|
})
|
||||||
|
|
||||||
uni.$on('goback', (res) => {
|
uni.$on('goback', (res) => {
|
||||||
@@ -98,14 +90,6 @@ export default {
|
|||||||
this.$http.post('/app/appgirdmemberinfo/checkLogOnUser').then((res) => {
|
this.$http.post('/app/appgirdmemberinfo/checkLogOnUser').then((res) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
this.girdUser = res.data
|
this.girdUser = res.data
|
||||||
this.checkType = res.data.checkType
|
|
||||||
if (this.girdUser.checkType != '0') {
|
|
||||||
|
|
||||||
if (this.girdUser.appGirdInfo) {
|
|
||||||
this.girdMsgList = this.girdUser.appGirdInfo
|
|
||||||
this.getList()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
@@ -129,43 +113,8 @@ uni-page-body {
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
.Statistics {
|
.Statistics {
|
||||||
height: 100%;
|
|
||||||
background: #f3f7f8;
|
|
||||||
padding: 0 30px;
|
padding: 0 30px;
|
||||||
padding-top: 30px;
|
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
.top {
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
padding: 24px 32px;
|
|
||||||
background: #fff;
|
|
||||||
border-radius: 16px;
|
|
||||||
.left {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
img {
|
|
||||||
width: 32px;
|
|
||||||
height: 32px;
|
|
||||||
}
|
|
||||||
.girdNmae {
|
|
||||||
margin-left: 20px;
|
|
||||||
font-size: 34px;
|
|
||||||
font-family: PingFangSC-Medium, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
color: #333333;
|
|
||||||
}
|
|
||||||
.u-icon {
|
|
||||||
margin-left: 8px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.right {
|
|
||||||
font-size: 28px;
|
|
||||||
font-family: PingFangSC-Medium, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
color: #3f8df5;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.middle {
|
.middle {
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div v-if="!isAdmin" class="empty">
|
<div v-if="!isAdmin" class="empty">
|
||||||
<img src="./components/img/no-admin.png" alt="">
|
<img src="./components/img/no-admin.png" alt="">
|
||||||
<p>没有网格员权限<br />无法查看网格信息哦~</p>
|
<p>没有网格员权限<br />无法查看随手拍信息哦~</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -108,6 +108,7 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
searckGird(row) {
|
searckGird(row) {
|
||||||
|
this.treeList = []
|
||||||
if(row.girdLevel != 2) { //查网格
|
if(row.girdLevel != 2) { //查网格
|
||||||
this.$http.post(`/app/appgirdinfo/list?parentGirdId=${row.id}&size=999`).then((res) => {
|
this.$http.post(`/app/appgirdinfo/list?parentGirdId=${row.id}&size=999`).then((res) => {
|
||||||
if (res?.data) {
|
if (res?.data) {
|
||||||
@@ -115,6 +116,7 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}else { //查网格员
|
}else { //查网格员
|
||||||
|
this.userList = []
|
||||||
this.$http.post(`/app/appgirdmemberinfo/listByGirdIdByThree?girdId=${row.id}`).then((res) => {
|
this.$http.post(`/app/appgirdmemberinfo/listByGirdIdByThree?girdId=${row.id}`).then((res) => {
|
||||||
if (res?.data) {
|
if (res?.data) {
|
||||||
this.userList = res.data
|
this.userList = res.data
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
|
|
||||||
<div class="line"></div>
|
<div class="line"></div>
|
||||||
|
|
||||||
<u-form-item label="活动详情" prop="content" :border-bottom="false" label-position="top" class="contents">
|
<u-form-item label="活动详情" prop="content" required :border-bottom="false" label-position="top" class="contents">
|
||||||
<u-input v-model="forms.content" placeholder="请输入详细描述信息" type="textarea" auto-height height="100" maxlength="500" />
|
<u-input v-model="forms.content" placeholder="请输入详细描述信息" type="textarea" auto-height height="100" maxlength="500" />
|
||||||
</u-form-item>
|
</u-form-item>
|
||||||
|
|
||||||
@@ -102,6 +102,9 @@ export default {
|
|||||||
if (!this.forms.phone) {
|
if (!this.forms.phone) {
|
||||||
return this.$u.toast('请输入联系电话')
|
return this.$u.toast('请输入联系电话')
|
||||||
}
|
}
|
||||||
|
if (!this.forms.content) {
|
||||||
|
return this.$u.toast('请输入活动详情')
|
||||||
|
}
|
||||||
|
|
||||||
const imgs = []
|
const imgs = []
|
||||||
if (this.forms.files) {
|
if (this.forms.files) {
|
||||||
@@ -135,8 +138,12 @@ export default {
|
|||||||
}, 600)
|
}, 600)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
.catch(() => {
|
||||||
this.$u.toast('失败')
|
this.$u.toast('发布失败')
|
||||||
|
})
|
||||||
|
.finally(() => {
|
||||||
|
this.flag = false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -139,7 +139,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapState(['user', 'global']),
|
...mapState(['user']),
|
||||||
|
|
||||||
loadmore() {
|
loadmore() {
|
||||||
return this.pages <= this.current ? 'loading ' : 'nomore'
|
return this.pages <= this.current ? 'loading ' : 'nomore'
|
||||||
@@ -165,6 +165,7 @@ export default {
|
|||||||
document.title = '婚丧嫁娶'
|
document.title = '婚丧嫁娶'
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
this.getList()
|
||||||
this.Echart = echarts.init(document.getElementById('yearStatistic', 'modeType'))
|
this.Echart = echarts.init(document.getElementById('yearStatistic', 'modeType'))
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -181,8 +182,12 @@ export default {
|
|||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
this.datas = this.current > 1 ? [...this.datas, ...res.data.records] : res.data.records
|
this.datas = this.current > 1 ? [...this.datas, ...res.data.records] : res.data.records
|
||||||
this.pages = res.data.pages
|
this.pages = res.data.pages
|
||||||
|
this.$forceUpdate()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
.finally(() => {
|
||||||
|
this.$forceUpdate()
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
getEchart() {
|
getEchart() {
|
||||||
@@ -274,6 +279,7 @@ export default {
|
|||||||
this.$http.post(`/app/appmarriagefuneralinfo/delete?ids=${this.deletId}`).then((res) => {
|
this.$http.post(`/app/appmarriagefuneralinfo/delete?ids=${this.deletId}`).then((res) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
this.$u.toast('删除成功!')
|
this.$u.toast('删除成功!')
|
||||||
|
this.$forceUpdate()
|
||||||
this.getList()
|
this.getList()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -413,10 +419,9 @@ uni-page-body {
|
|||||||
|
|
||||||
.myReport {
|
.myReport {
|
||||||
padding-bottom: 105px;
|
padding-bottom: 105px;
|
||||||
// background: #f3f6f9;
|
|
||||||
|
|
||||||
::v-deep .AiCard {
|
::v-deep .AiCard {
|
||||||
background: #f3f6f9;
|
background: #f5f5f5;
|
||||||
padding: 0 24px 24px 24px;
|
padding: 0 24px 24px 24px;
|
||||||
|
|
||||||
.start {
|
.start {
|
||||||
@@ -503,7 +508,7 @@ uni-page-body {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.u-load-more-wrap {
|
.u-load-more-wrap {
|
||||||
background: #f3f6f9 !important;
|
background: #f5f5f5 !important;
|
||||||
margin: 0 !important;
|
margin: 0 !important;
|
||||||
padding: 30px 0;
|
padding: 30px 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -259,7 +259,11 @@ export default {
|
|||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
this.$u.toast(status == 1 ? "发布成功" : "保存成功")
|
this.$u.toast(status == 1 ? "发布成功" : "保存成功")
|
||||||
// this.$refs["aiBack"].back()
|
// this.$refs["aiBack"].back()
|
||||||
uni.navigateBack()
|
uni.$emit('updateList')
|
||||||
|
setTimeout(() => {
|
||||||
|
uni.navigateBack()
|
||||||
|
}, 600)
|
||||||
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -57,9 +57,13 @@ export default {
|
|||||||
this.index = opt.index
|
this.index = opt.index
|
||||||
|
|
||||||
this.getData();
|
this.getData();
|
||||||
|
uni.$on('updateList', () => {
|
||||||
|
this.current = 1
|
||||||
|
this.getData()
|
||||||
|
})
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
document.title = opt.index == 0 ? "历史会议" : "草稿箱"
|
document.title = this.index == 0 ? "历史会议" : "草稿箱"
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="label">公告内容</div>
|
<div class="label">公告内容</div>
|
||||||
<u-parse :html="detailObj.content"></u-parse>
|
<u-parse :html="detailObj.content" style="font-size:14px;"></u-parse>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="card" style="padding-top: 0" v-if="detailObj.files && detailObj.files.length">
|
<div class="card" style="padding-top: 0" v-if="detailObj.files && detailObj.files.length">
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
<div class="right">
|
<div class="right">
|
||||||
<div class="rightTop">{{ item.name }}</div>
|
<div class="rightTop">{{ item.name }}</div>
|
||||||
<div class="rightBottom">
|
<div class="rightBottom">
|
||||||
<span>{{ item.idNumber.replace(/^(\w{6})\w{8}(.*)$/, '$1****$2') }}</span>
|
<span>{{ item.idNumber.replace(/^(\w{6})\w{8}(.*)$/, '$1********$2') }}</span>
|
||||||
|
|
||||||
<span>{{ item.phone }}</span>
|
<span>{{ item.phone }}</span>
|
||||||
</div>
|
</div>
|
||||||
@@ -70,7 +70,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapState(['user', 'global']),
|
...mapState(['user']),
|
||||||
},
|
},
|
||||||
watch: {},
|
watch: {},
|
||||||
onLoad() {
|
onLoad() {
|
||||||
@@ -139,14 +139,15 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
|
uni-page-body {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
.AppResidentDocument {
|
.AppResidentDocument {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
background: #fff;
|
|
||||||
.areatop {
|
.areatop {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding: 0 32px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.line {
|
.line {
|
||||||
@@ -158,6 +159,7 @@ export default {
|
|||||||
border-bottom: 2px solid #f5f5f5;
|
border-bottom: 2px solid #f5f5f5;
|
||||||
border-top: 2px solid #f5f5f5;
|
border-top: 2px solid #f5f5f5;
|
||||||
padding: 20px 32px;
|
padding: 20px 32px;
|
||||||
|
background: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .u-form {
|
::v-deep .u-form {
|
||||||
@@ -190,6 +192,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.dataes {
|
.dataes {
|
||||||
|
background: #fff;
|
||||||
.datass {
|
.datass {
|
||||||
display: flex;
|
display: flex;
|
||||||
padding: 24px 32px;
|
padding: 24px 32px;
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="AppResidentFile">
|
<div class="AppResidentFile">
|
||||||
<u-tabbar v-model="currentTabBar" :list="lists" @change="changeTab" active-color="#3267F0" inactive-color="#C4CAD4" style="height: 0" class="u-tabbar"></u-tabbar>
|
|
||||||
|
|
||||||
<div class="currentTabBar0" v-if="currentTabBar == 0">
|
<div class="currentTabBar0" v-if="currentTabBar == 0">
|
||||||
<u-tabs :list="tabList" :is-scroll="false" :current="currentTabs" height="96" bg-color="#3975C6" inactive-color="#fff" active-color="#fff" @change="change"></u-tabs>
|
<u-tabs :list="tabList" :is-scroll="false" :current="currentTabs" height="96" bg-color="#3975C6" inactive-color="#fff" active-color="#fff" @change="change"></u-tabs>
|
||||||
|
|
||||||
@@ -63,9 +61,9 @@
|
|||||||
|
|
||||||
<div class="currentTabBar1" v-if="currentTabBar == 1">
|
<div class="currentTabBar1" v-if="currentTabBar == 1">
|
||||||
<AiTopFixed>
|
<AiTopFixed>
|
||||||
<u-search placeholder="请输入昵称、姓名" :show-action="false" search-icon-color="#ccc" v-model="search.name" @search=";(page.current = 1), getList()" />
|
<u-search placeholder="请输入昵称、姓名" :show-action="false" search-icon-color="#ccc" v-model="search.name" @search=";(page1.current = 1), getList()" />
|
||||||
<AiCell>
|
<AiCell>
|
||||||
<b slot="label" class="title">共<i v-html="page.total || 0" />个居民</b>
|
<b slot="label" class="title">共<i v-html="page1.total || 0" />个居民</b>
|
||||||
</AiCell>
|
</AiCell>
|
||||||
</AiTopFixed>
|
</AiTopFixed>
|
||||||
|
|
||||||
@@ -85,9 +83,9 @@
|
|||||||
|
|
||||||
<div class="currentTabBar2" v-if="currentTabBar == 2">
|
<div class="currentTabBar2" v-if="currentTabBar == 2">
|
||||||
<AiTopFixed>
|
<AiTopFixed>
|
||||||
<u-search placeholder="请输入群名、群主名" :show-action="false" search-icon-color="#ccc" v-model="search.name" @search=";(page.current = 1), getList()" />
|
<u-search placeholder="请输入群名、群主名" :show-action="false" search-icon-color="#ccc" v-model="search.name" @search=";(page2.current = 1), getList()" />
|
||||||
<AiCell>
|
<AiCell>
|
||||||
<b slot="label" class="title">共<i v-html="page.total || 0" />个居民群</b>
|
<b slot="label" class="title">共<i v-html="page2.total || 0" />个居民群</b>
|
||||||
</AiCell>
|
</AiCell>
|
||||||
</AiTopFixed>
|
</AiTopFixed>
|
||||||
|
|
||||||
@@ -110,6 +108,13 @@
|
|||||||
</AiCell>
|
</AiCell>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- <u-tabbar v-model="currentTabBar" :list="lists" @change="changeTab" active-color="#3267F0" inactive-color="#C4CAD4" class="u-tabbar"></u-tabbar> -->
|
||||||
|
<div class="tabs">
|
||||||
|
<div class="item" @click="changeTab(index)" v-for="(item, index) in lists" :key="index">
|
||||||
|
<img :src="currentTabBar == index ? item.selectedIconPath : item.iconPath" alt="" />
|
||||||
|
<p :class="currentTabBar == index ? 'color-3267F0' : ''">{{ item.text }}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -161,7 +166,6 @@ export default {
|
|||||||
current: 1,
|
current: 1,
|
||||||
keyword: '',
|
keyword: '',
|
||||||
data: [],
|
data: [],
|
||||||
page: { current: 1, size: 10, total: 0 },
|
|
||||||
search: { name: '' },
|
search: { name: '' },
|
||||||
list: [],
|
list: [],
|
||||||
weekList: [],
|
weekList: [],
|
||||||
@@ -189,6 +193,7 @@ export default {
|
|||||||
this.Echarts1 = echarts.init(document.getElementById('echarts1'))
|
this.Echarts1 = echarts.init(document.getElementById('echarts1'))
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 居民列表
|
||||||
getList() {
|
getList() {
|
||||||
this.$http
|
this.$http
|
||||||
.post('/app/wxcp/wxcustomer/list', null, {
|
.post('/app/wxcp/wxcustomer/list', null, {
|
||||||
@@ -196,20 +201,20 @@ export default {
|
|||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res?.data) {
|
if (res?.data) {
|
||||||
if (this.page.current > 1) {
|
if (this.page1.current > 1) {
|
||||||
this.data = [...this.data, ...res.data.records]
|
this.data = [...this.data, ...res.data.records]
|
||||||
} else this.data = res.data.records
|
} else this.data = res.data.records
|
||||||
this.page.total = res.data.total
|
this.page1.total = res.data.total
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
reachBottom() {
|
// reachBottom() {
|
||||||
if (this.page.total > this.list.length) {
|
// if (this.page1.total > this.list.length) {
|
||||||
this.page.current++
|
// this.page1.current++
|
||||||
this.getList()
|
// this.getList()
|
||||||
}
|
// }
|
||||||
},
|
// },
|
||||||
|
|
||||||
showResident({ id }) {
|
showResident({ id }) {
|
||||||
id &&
|
id &&
|
||||||
@@ -218,6 +223,7 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// 居民群列表
|
||||||
getList2() {
|
getList2() {
|
||||||
this.$http
|
this.$http
|
||||||
.post('/app/wxcp/wxgroup/list', null, {
|
.post('/app/wxcp/wxgroup/list', null, {
|
||||||
@@ -229,20 +235,20 @@ export default {
|
|||||||
...e,
|
...e,
|
||||||
avatar: e?.avatar || this.$cdn + 'groupAvatar.png',
|
avatar: e?.avatar || this.$cdn + 'groupAvatar.png',
|
||||||
}))
|
}))
|
||||||
if (this.page.current > 1) {
|
if (this.page2.current > 1) {
|
||||||
this.list = [...this.list, ...meta]
|
this.list = [...this.list, ...meta]
|
||||||
} else this.list = meta
|
} else this.list = meta
|
||||||
this.page.total = res.data.total
|
this.page2.total = res.data.total
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
reachBottom() {
|
// reachBottom() {
|
||||||
if (this.page.total > this.list.length) {
|
// if (this.page2.total > this.list.length) {
|
||||||
this.page.current = this.page.current + 1
|
// this.page2.current = this.page2.current + 1
|
||||||
this.getList2()
|
// this.getList2()
|
||||||
}
|
// }
|
||||||
},
|
// },
|
||||||
|
|
||||||
toGroupList(item) {
|
toGroupList(item) {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
@@ -490,9 +496,11 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
if (this.currentTabBar == 1) {
|
if (this.currentTabBar == 1) {
|
||||||
|
this.page1.current == 1
|
||||||
this.getList()
|
this.getList()
|
||||||
}
|
}
|
||||||
if (this.currentTabBar == 2) {
|
if (this.currentTabBar == 2) {
|
||||||
|
this.page2.current == 1
|
||||||
this.getList2()
|
this.getList2()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -511,8 +519,14 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
onReachBottom() {
|
onReachBottom() {
|
||||||
this.current = this.current + 1
|
if (this.currentTabBar == 1) {
|
||||||
this.getList()
|
this.page1.current++
|
||||||
|
this.getList()
|
||||||
|
}
|
||||||
|
if (this.currentTabBar == 2) {
|
||||||
|
this.page2.current++
|
||||||
|
this.getList2()
|
||||||
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@@ -525,6 +539,7 @@ uni-page-body {
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
|
|
||||||
.currentTabBar0 {
|
.currentTabBar0 {
|
||||||
|
padding-bottom: 98px;
|
||||||
.peopleGroup,
|
.peopleGroup,
|
||||||
.people {
|
.people {
|
||||||
.topcard {
|
.topcard {
|
||||||
@@ -598,6 +613,7 @@ uni-page-body {
|
|||||||
|
|
||||||
.currentTabBar1 {
|
.currentTabBar1 {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
padding-bottom: 98px;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
::v-deep .AiTopFixed {
|
::v-deep .AiTopFixed {
|
||||||
b.title {
|
b.title {
|
||||||
@@ -614,7 +630,7 @@ uni-page-body {
|
|||||||
|
|
||||||
::v-deep .mainPane {
|
::v-deep .mainPane {
|
||||||
background: #fff;
|
background: #fff;
|
||||||
padding: 0 32px;
|
padding: 0 32px 88px;
|
||||||
|
|
||||||
.AiCell {
|
.AiCell {
|
||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
@@ -674,6 +690,7 @@ uni-page-body {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.currentTabBar2 {
|
.currentTabBar2 {
|
||||||
|
padding-bottom: 98px;
|
||||||
::v-deep .AiTopFixed {
|
::v-deep .AiTopFixed {
|
||||||
b.title {
|
b.title {
|
||||||
color: #333;
|
color: #333;
|
||||||
@@ -774,5 +791,35 @@ uni-page-body {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.tabs {
|
||||||
|
width: 100%;
|
||||||
|
height: 98px;
|
||||||
|
background: #fff;
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
display: flex;
|
||||||
|
.item {
|
||||||
|
flex: 1;
|
||||||
|
text-align: center;
|
||||||
|
img {
|
||||||
|
width: 56px;
|
||||||
|
height: 56px;
|
||||||
|
margin-top: 8px;
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
font-size: 22px;
|
||||||
|
font-family: PingFangSC-Medium, PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #c4cad4;
|
||||||
|
line-height: 8px;
|
||||||
|
}
|
||||||
|
.color-3267F0 {
|
||||||
|
color: #3267f0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -83,13 +83,16 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
|
||||||
|
},
|
||||||
|
onLoad() {
|
||||||
|
this.$dict.load('sex', 'nation', 'education', 'job', 'faithType', 'politicsStatus', 'militaryStatus', 'householdRelation', 'householdName')
|
||||||
console.log('居民档案性别(无字典)', this.resident.sex)
|
console.log('居民档案性别(无字典)', this.resident.sex)
|
||||||
console.log('居民档案性别(有字典)', this.$dict.getLabel('sex', this.resident.sex))
|
console.log('居民档案性别(有字典)', this.$dict.getLabel('sex', this.resident.sex))
|
||||||
console.log('居民档案字典值', this.$dict.getDict('sex'))
|
console.log('居民档案字典值', this.$dict.getDict('sex'))
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
document.title = '居民详情'
|
document.title = '居民详情'
|
||||||
this.$dict.load('sex', 'nation', 'education', 'job', 'faithType', 'politicsStatus', 'militaryStatus', 'householdRelation', 'householdName')
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -62,6 +62,10 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
onShow() {
|
||||||
|
document.title = '媒资管理'
|
||||||
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
change(index) {
|
change(index) {
|
||||||
this.isMore = false
|
this.isMore = false
|
||||||
|
|||||||
@@ -52,6 +52,9 @@ export default {
|
|||||||
this.file = e
|
this.file = e
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
onShow() {
|
||||||
|
document.title = this.type == 1 ? '添加音频' : '添加文本'
|
||||||
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
toRecord() {
|
toRecord() {
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
@click.stop="previewImage(item.files, items.accessUrl)"/>
|
@click.stop="previewImage(item.files, items.accessUrl)"/>
|
||||||
</div>
|
</div>
|
||||||
<div class="img-list" v-if="item.files.length && item.contentType == 1">
|
<div class="img-list" v-if="item.files.length && item.contentType == 1">
|
||||||
<video class="video" :src="item.files[0].url"></video>
|
<video width="400" height="400" :poster="item.pictureUrl" :src="item.files[0].url"></video>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<span class="left">
|
<span class="left">
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
<img :src="item.accessUrl" alt="" v-for="(item, index) in data.files" :key="index" @click="previewImage(data.files, item.accessUrl)" />
|
<img :src="item.accessUrl" alt="" v-for="(item, index) in data.files" :key="index" @click="previewImage(data.files, item.accessUrl)" />
|
||||||
</div>
|
</div>
|
||||||
<div class="img-list" v-if="data.files && data.files.length && data.contentType == 1">
|
<div class="img-list" v-if="data.files && data.files.length && data.contentType == 1">
|
||||||
<video class="video" :src="data.files[0].url"></video>
|
<video width="400" height="400" :poster="data.pictureUrl" :src="data.files[0].url"></video>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -201,18 +201,14 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
like(id) {
|
like(id) {
|
||||||
this.$loading()
|
|
||||||
this.$http.post(`/app/appvillagediscussmessage/suport?id=${id}&userId=${this.user.id}`).then((res) => {
|
this.$http.post(`/app/appvillagediscussmessage/suport?id=${id}&userId=${this.user.id}`).then((res) => {
|
||||||
this.$hideLoading()
|
this.$hideLoading()
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
this.$u.toast('点赞成功')
|
this.$u.toast('点赞成功')
|
||||||
|
this.getDetail()
|
||||||
this.$nextTick(() => {
|
}
|
||||||
this.getDetail()
|
}).catch((err) => {
|
||||||
})
|
this.$u.toast(err)
|
||||||
} else {
|
|
||||||
this.$u.toast(res.msg)
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -9,12 +9,12 @@
|
|||||||
<div class="right">
|
<div class="right">
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<span class="names" v-if="anonymous && anonymous == 0">{{ item.userName }}</span>
|
<span class="names" v-if="anonymous && anonymous == 0">{{ item.userName }}</span>
|
||||||
<span v-else>匿名用户</span>
|
<span v-else>居民</span>
|
||||||
|
|
||||||
<span class="times">{{ item.createTime }}</span>
|
<span class="times">{{ item.createTime }}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="bottom">选择了选择了{{ item.item }}</div>
|
<div class="bottom">选择了{{ item.item }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -5,7 +5,11 @@
|
|||||||
|
|
||||||
<div class="walk-item">
|
<div class="walk-item">
|
||||||
<span>走访对象:</span>
|
<span>走访对象:</span>
|
||||||
<span>{{ data.name }}</span>
|
<span>
|
||||||
|
{{ data.name }}
|
||||||
|
<span class="tags" v-if="data.menuLevel3Name">{{ data.menuLevel3Name }}</span>
|
||||||
|
</span>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="walk-item" v-if="data.reality">
|
<div class="walk-item" v-if="data.reality">
|
||||||
@@ -99,6 +103,14 @@ export default {
|
|||||||
font-size: 28px;
|
font-size: 28px;
|
||||||
color: #d7e3f3;
|
color: #d7e3f3;
|
||||||
margin-top: 16px;
|
margin-top: 16px;
|
||||||
|
.tags {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 0 12px;
|
||||||
|
height: 40px;
|
||||||
|
border-radius: 4px;
|
||||||
|
border: 1px solid #FFFFFF;
|
||||||
|
margin-left: 16px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ export default {
|
|||||||
document.title = "问卷表单"
|
document.title = "问卷表单"
|
||||||
this.$refs?.TabPage?.show()
|
this.$refs?.TabPage?.show()
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.injectJWeixin(['sendChatMessage', 'selectEnterpriseContact', 'shareAppMessage', 'shareWechatMessage']).then(() => {
|
this.injectJWeixin(['sendChatMessage', 'shareAppMessage', 'shareWechatMessage']).then(() => {
|
||||||
this.$dict.load(['questionnaireStatus', 'questionnaireType', 'questionnaireFieldType'])
|
this.$dict.load(['questionnaireStatus', 'questionnaireType', 'questionnaireFieldType'])
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.injectJWeixin(['sendChatMessage', 'selectEnterpriseContact'])
|
this.injectJWeixin(['sendChatMessage'])
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapActions(['injectJWeixin', 'wxInvoke']),
|
...mapActions(['injectJWeixin', 'wxInvoke']),
|
||||||
|
|||||||
@@ -159,16 +159,16 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapActions(['selectEnterpriseContact']),
|
...mapActions(['selectPrivilegedContact']),
|
||||||
handleSelectUser() {
|
handleSelectUser() {
|
||||||
if (this.clickedUserSelect) return this.$u.toast("正在打开人员选择器")
|
if (this.clickedUserSelect) return this.$u.toast("正在打开人员选择器")
|
||||||
this.clickedUserSelect = true
|
this.clickedUserSelect = true
|
||||||
this.selectEnterpriseContact({
|
this.selectPrivilegedContact({
|
||||||
fromDepartmentId: 0,
|
fromDepartmentId: 0,
|
||||||
type: ["user"],
|
selectedOpenUserIds: this.form.attendees?.map(e => e.id)
|
||||||
selectedUserIds: this.form.attendees?.map(e => e.id)
|
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
this.change(res?.userList || [])
|
this.change(res?.userList || [])
|
||||||
|
this.form.ticket = res?.selectedTicket || ""
|
||||||
this.clickedUserSelect = false
|
this.clickedUserSelect = false
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.clickedUserSelect = false
|
this.clickedUserSelect = false
|
||||||
|
|||||||
@@ -105,16 +105,16 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
...mapActions(['selectEnterpriseContact']),
|
...mapActions(['selectPrivilegedContact']),
|
||||||
handleSelectUser() {
|
handleSelectUser() {
|
||||||
if (this.clickedUserSelect) return this.$u.toast("正在打开人员选择器")
|
if (this.clickedUserSelect) return this.$u.toast("正在打开人员选择器")
|
||||||
this.clickedUserSelect = true
|
this.clickedUserSelect = true
|
||||||
this.selectEnterpriseContact({
|
this.selectPrivilegedContact({
|
||||||
fromDepartmentId: 0,
|
fromDepartmentId: 0,
|
||||||
type: ["user"],
|
selectedOpenUserIds: this.form.persons?.map(e => e.id)
|
||||||
selectedUserIds: this.form.persons?.map(e => e.id)
|
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
this.form.persons = res?.userList || []
|
this.form.persons = res?.userList || []
|
||||||
|
this.form.ticket = res?.selectedTicket
|
||||||
this.clickedUserSelect = false
|
this.clickedUserSelect = false
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.clickedUserSelect = false
|
this.clickedUserSelect = false
|
||||||
|
|||||||
@@ -351,6 +351,27 @@ const store = new Vuex.Store({
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
selectPrivilegedContact(state, params) {
|
||||||
|
return new Promise(resolve => {
|
||||||
|
state.dispatch("injectJWeixin", "selectPrivilegedContact").then(() => {
|
||||||
|
setTimeout(() => {
|
||||||
|
let sdk = typeof wx?.invoke == 'function' ? wx : jWeixin
|
||||||
|
sdk?.invoke("selectEnterpriseContact", {
|
||||||
|
fromDepartmentId: -1,
|
||||||
|
mode: "multi",
|
||||||
|
...params
|
||||||
|
}, res => {
|
||||||
|
if (res.err_msg == "selectPrivilegedContact:ok") {
|
||||||
|
if (typeof res.result == 'string') {
|
||||||
|
res.result = JSON.parse(res.result)
|
||||||
|
}
|
||||||
|
resolve(res.result)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}, 500)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
},
|
},
|
||||||
getters: {
|
getters: {
|
||||||
getDict: state => key => {
|
getDict: state => key => {
|
||||||
|
|||||||
Reference in New Issue
Block a user