监测对象列表详情

This commit is contained in:
liuye
2022-03-25 16:24:51 +08:00
parent 75d0121ff2
commit ee46d7ef18
2 changed files with 207 additions and 146 deletions

View File

@@ -28,55 +28,55 @@
<div class="more-info" v-if="viewAll">
<div class="item-info">
<label>民族</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpNation', info.nation) }}</span>
</div>
<div class="item-info">
<label>政治面貌</label>
<span>{{ info.address }}</span>
<span>{{ info.politicsStatus }}</span>
</div>
<div class="item-info">
<label>文化程度</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpEducation', info.education) }}</span>
</div>
<div class="item-info">
<label>在校生情况</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpStudentsInSchool', info.schoolStatus) }}</span>
</div>
<div class="item-info">
<label>健康状况</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpHealth', info.healthyStatus) }}</span>
</div>
<div class="item-info">
<label>大病保险</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpYesOrNo', info.seriousIllnessInsurance) }}</span>
</div>
<div class="item-info">
<label>医疗参保</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpYesOrNo', info.seriousIllnessInsurance) }}</span>
</div>
<div class="item-info">
<label>享受最低生活保障</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpYesOrNo', info.subsistenceAllowance) }}</span>
</div>
<div class="item-info">
<label>养老保险</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpYesOrNo', info.endowmentInsurance) }}</span>
</div>
<div class="item-info">
<label>特困供养</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpYesOrNo', info.specialPovertySupport) }}</span>
</div>
<div class="item-info">
<label>劳动技能</label>
<span>{{ info.address }}</span>
<span>{{ $dict.getLabel('fpLaborSkills', info.labourStatus) }}</span>
</div>
<div class="item-info">
<label>务工时间/</label>
<span>{{ info.address }}</span>
<span>{{ info.workeMonths }}</span>
</div>
<div class="item-info">
<label>务工区域</label>
<span>{{ info.address }}</span>
<span>{{ info.workArea }}</span>
</div>
</div>
<div class="view-all" @click="viewAll = !viewAll">{{viewAll ? '收起详情 ' : '展开详情 '}}<img :class="viewAll ? 'img-active' : ''" src="./components/img/top-icon-blue.png" /></div>
@@ -110,8 +110,8 @@
<div class="item-header">
<div class="left">
<h2>家庭成员</h2>
<i :style="{color: info.familyList.length ? '#2EA222' : '#FF4466'}">({{
info.familyList.length ? '已填写' : '未填写'
<i :style="{color: info.family && info.family.length ? '#2EA222' : '#FF4466'}">({{
info.family && info.family.length ? '已填写' : '未填写'
}})</i>
</div>
<span @click="linkTo('./MonitorFamilyMember?id=' + info.id)">编辑</span>
@@ -207,19 +207,18 @@
<AiFixedBtn v-if="currIndex === 1">
<div class="addBtn iconfont iconfont-iconfangda" @tap="toAddLog"></div>
</AiFixedBtn>
<AiFixedBtn v-if="currIndex != 1">
<div class="footer-btn">
<div @click="cancel">驳回申请</div>
<div class="confirm-btn" @click="confirm">纳入监测</div>
<!-- 0待纳入1监测中2待解除3已解除4已驳回 -->
<div class="footer-btn" v-if="currIndex != 1 && checkType == 2 && info.status == 2">
<div @click="examine('您确认要驳回此居民的监测对象申请吗?', 0)">驳回申请</div>
<div class="confirm-btn" @click="examine('您确认要将此居民纳入监测对象吗?', 1)">纳入监测</div>
</div>
<!-- <div class="footer-btn">
<div class="footer-btn" v-if="currIndex != 1 && info.status == 3">
<div @click="del">删除人员</div>
<div class="confirm-btn" @click="remove">消除风险</div>
<div class="confirm-btn" @click="remove('您确认要解除此监测对象的风险吗?', 1)" v-if="checkType == 2">消除风险</div>
</div>
<div class="footer-btn" v-if="currIndex != 1 && checkType == 1 && info.status == 1">
<div class="confirm-btn" @click="remove('您确认要申请解除此监测对象的风险吗?', '')">申请解除风险</div>
</div>
<div class="footer-btn">
<div class="confirm-btn" @click="submitRemove">申请解除风险</div>
</div> -->
</AiFixedBtn>
</div>
</template>
@@ -235,7 +234,8 @@ export default {
currIndex: 0,
list: [],
isFrom: false,
viewAll: false
viewAll: false,
checkType: ''
}
},
@@ -276,20 +276,30 @@ export default {
if (query.isFrom) {
this.isFrom = true
}
this.$dict.load(['fpType', 'riskEliminationMethod', 'fpRiskType', 'fpYesOrNo']).then(() => {
this.getInfo(query.id)
this.$dict.load(['fpType', 'riskEliminationMethod', 'fpRiskType', 'fpYesOrNo', 'fpNation', 'fpEducation', 'fpStudentsInSchool', 'fpHealth',
'fpLaborSkills', ]).then(() => {
this.isGirdUser()
this.getInfo()
})
this.id = query.id
uni.$on('reload', () => {
this.getInfo(query.id)
this.getInfo()
})
},
onShow() {
document.title = '风险预警详情'
document.title = '居民详情'
},
methods: {
isGirdUser() {
this.$http.post('/app/appgirdmemberinfo/checkLogOnUser').then((res) => {
if (res.code == 0) {
this.checkType = res.data.checkType
}
})
},
linkTo(url) {
uni.navigateTo({url})
},
@@ -345,14 +355,26 @@ export default {
this.currIndex = index
},
getInfo(id) {
this.$http.post(`/app/apppreventionreturntopoverty/queryDetailById?id=${id}`).then(res => {
getInfo() {
this.$http.post(`/app/apppreventionreturntopoverty/queryDetailById?id=${this.id}`).then(res => {
if (res.code === 0) {
this.info = res.data
let ylbxCount = 0
let ylCount = 0
res.data.familyList.forEach(item => {
// if(res.data.familyList && res.data.familyList.length) {
// res.data.familyList.forEach(item => {
// if (item.medicalInsurance === '02') {
// ylbxCount = ylbxCount + 1
// }
// if (item.endowmentInsurance === '02') {
// ylCount = ylCount + 1
// }
// })
// }
if(res.data.family && res.data.family.length) {
res.data.family.forEach(item => {
if (item.medicalInsurance === '02') {
ylbxCount = ylbxCount + 1
}
@@ -360,6 +382,8 @@ export default {
ylCount = ylCount + 1
}
})
}
this.info.ylbxCount = ylbxCount
this.info.ylCount = ylCount
this.pageShow = true
@@ -367,45 +391,53 @@ export default {
uni.hideLoading()
})
this.$http.post(`/app/apppreventionreturntopovertylog/list?pid=${id}&size=1000&current=1`).then(res => {
// this.$http.post(`/app/apppreventionreturntopovertylog/list?pid=${this.id}&size=1000&current=1`).then(res => {
// if (res.code === 0) {
// this.list = res.data.records.map(item => {
// return {
// ...item,
// imgs: JSON.parse(item.picture)
// }
// })
// }
// })
},
examine(text, pass) {
this.$confirm('', text).then(() => {
this.$http.post(`/app/apppreventionreturntopoverty/examine?id=${this.id}&pass=${pass}`).then(res => {
if (res.code === 0) {
this.list = res.data.records.map(item => {
return {
...item,
imgs: JSON.parse(item.picture)
this.$u.toast('操作成功')
uni.$emit('reload')
this.getInfo()
}
})
}
})
},
cancel() {
this.$confirm('', '您确认要驳回此居民的监测对象申请吗?').then(() => {
})
},
confirm() {
this.$confirm('', '您确认要将此居民纳入监测对象吗?').then(() => {
})
},
del() {
this.$confirm('', '您确认要要删除此监测对象的信息吗?').then(() => {
this.$http.post(`/app/apppreventionreturntopoverty/delete?ids=${this.id}`).then(res => {
if (res.code === 0) {
this.$u.toast('删除成功')
uni.$emit('reload')
setTimeout(() => {
uni.navigateBack()
})
}
})
})
},
remove() {
this.$confirm('', '您确认要解除此监测对象的风险吗?').then(() => {
remove(text, pass) {
this.$confirm('', text).then(() => {
this.$http.post(`/app/apppreventionreturntopoverty/relieve?id=${this.id}&pass=${pass}`).then(res => {
if (res.code === 0) {
this.$u.toast('操作成功')
uni.$emit('reload')
this.getInfo()
}
})
},
submitRemove() {
this.$confirm('', '您确认要申请解除此监测对象的风险吗?').then(() => {
})
}
}
@@ -415,7 +447,7 @@ export default {
<style lang="scss">
.detail {
padding-top: 96px;
padding-bottom: 60px;
padding-bottom: 130px;
&.active {
padding-top: 0;
@@ -661,6 +693,9 @@ export default {
background: #FFF;
display: flex;
box-shadow: inset 0px 1px 0px 0px #DDDDDD;
position: fixed;
bottom: 0;
left: 0;
div{
flex: 1;
text-align: center;

View File

@@ -1,5 +1,6 @@
<template>
<div class="List">
<div v-if="isAdmin">
<AiTopFixed>
<div class="area">
<i>可选范围</i>
@@ -27,24 +28,26 @@
<div class="right">
<div class="right-top">
<span class="name">{{ item.name }}</span>
<span class="status status0">待纳入</span>
<span class="status" :class="`status${item.status}`">{{ $dict.getLabel('fpPrtpStatus', item.status) }}</span>
</div>
<div class="right-bottom">
<p>{{ item.idNumber || '' }}</p>
<p>{{ item.addressArea }}</p>
<p>{{ item.currentAddress || '' }} {{ item.address || '' }}</p>
</div>
</div>
</div>
</div>
<!-- <div class="empty" v-else>
<img src="https://cdn.cunwuyun.cn/dvcp/h5/no-data.png" alt="">
<p>暂无居民信息<br/>点击<span @click="edit('')">新增按钮</span>新增居民信息,也可在管理系统批量导入</p>
</div> -->
<AiEmpty class="emptyWrap" v-else></AiEmpty>
<AiFixedBtn>
<div class="addBtn iconfont iconfont-iconfangda" @tap="toAdd"></div>
</AiFixedBtn>
</div>
<div v-else class="empty">
<img src="https://cdn.cunwuyun.cn/dvcp/h5/no-admin.png" alt="">
<p>没有网格员权限<br />无法查看监测信息哦~</p>
<!-- <div class="add-btn" @click="linkTo('./AddUser')">网格员信息申报</div> -->
</div>
</div>
</template>
<script>
@@ -69,6 +72,7 @@ export default {
currentTabs: 0,
areaId: '',
areaName: '',
isAdmin: false
}
},
computed: {
@@ -77,19 +81,43 @@ export default {
created() {
this.areaId = this.user.areaId
this.areaName = this.user.areaName
this.getList()
this.$dict.load('fpPrtpStatus').then(() => {
this.isGirdUser()
})
},
onShow() {
document.title = '监测对象'
uni.$on('reload', () => {
this.getListInit()
})
},
methods: {
isGirdUser() {
this.isAdmin = false
this.$http.post('/app/appgirdmemberinfo/checkLogOnUser').then((res) => {
if (res.code == 0) {
if (res.data.checkType != '0') {
this.isAdmin = true
this.getList()
}
}
})
},
getListInit() {
this.current = 1
this.list = []
this.getList()
},
getList() {
this.$http.post('/app/apppreventionreturntopoverty/list', null, {
this.$http.post('/app/appgirdmemberpoverty/listByGirdMember', null, {
params: {
current: this.current,
size: 15,
status: this.currIndex === 1 ? '1' : '',
addressAreaId: this.areaId,
status: this.currIndex == 1 ? '3' : '1',
// addressAreaId: this.areaId,
name: this.keyword
},
})
@@ -109,9 +137,7 @@ export default {
change(index) {
this.currentTabs = index
this.current = 1
this.list = []
this.getList()
this.getListInit()
},
toDetail(item) {
@@ -120,20 +146,17 @@ export default {
seachObj(e) {
this.areaId = e
this.current = 1
this.getList()
this.getListInit()
},
handerSearch(e) {
this.keyword = e
this.current = 1
this.getList()
this.getListInit()
},
handerClear() {
this.keyword = ''
this.current = 1
this.getList()
this.getListInit()
},
toAdd() {
uni.navigateTo({url: './Add'})
@@ -294,31 +317,9 @@ export default {
}
.emptyWrap {
background: #f5f5f5;
margin: 0;
}
.empty {
height: 100%;
img {
width: 282px;
height: 306px;
margin: 168px 0 0 234px;
}
p {
text-align: center;
font-size: 28px;
font-family: PingFangSC-Regular, PingFang SC;
color: #999;
line-height: 44px;
span {
color: #467DFE;
}
}
}
::v-deep .AiTopFixed .content{
padding: 0;
}
@@ -338,5 +339,30 @@ export default {
align-items: center;
display: flex;
}
.empty{
text-align: center;
img{
width: 282px;
height: 306px;
margin: 136px auto 0;
}
p{
font-size: 28px;
font-family: PingFangSC-Regular, PingFang SC;
color: #999;
line-height: 40px;
}
.add-btn{
width: 400px;
height: 88px;
line-height: 88px;
text-align: center;
border-radius: 8px;
background-color: #3267f0;
color: #fff;
font-size: 30px;
margin: 200px auto 0;
}
}
}
</style>