监测对象列表详情

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

View File

@@ -1,5 +1,6 @@
<template> <template>
<div class="List"> <div class="List">
<div v-if="isAdmin">
<AiTopFixed> <AiTopFixed>
<div class="area"> <div class="area">
<i>可选范围</i> <i>可选范围</i>
@@ -27,24 +28,26 @@
<div class="right"> <div class="right">
<div class="right-top"> <div class="right-top">
<span class="name">{{ item.name }}</span> <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>
<div class="right-bottom"> <div class="right-bottom">
<p>{{ item.idNumber || '' }}</p> <p>{{ item.idNumber || '' }}</p>
<p>{{ item.addressArea }}</p> <p>{{ item.currentAddress || '' }} {{ item.address || '' }}</p>
</div> </div>
</div> </div>
</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> <AiEmpty class="emptyWrap" v-else></AiEmpty>
<AiFixedBtn> <AiFixedBtn>
<div class="addBtn iconfont iconfont-iconfangda" @tap="toAdd"></div> <div class="addBtn iconfont iconfont-iconfangda" @tap="toAdd"></div>
</AiFixedBtn> </AiFixedBtn>
</div> </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> </template>
<script> <script>
@@ -69,6 +72,7 @@ export default {
currentTabs: 0, currentTabs: 0,
areaId: '', areaId: '',
areaName: '', areaName: '',
isAdmin: false
} }
}, },
computed: { computed: {
@@ -77,19 +81,43 @@ export default {
created() { created() {
this.areaId = this.user.areaId this.areaId = this.user.areaId
this.areaName = this.user.areaName this.areaName = this.user.areaName
this.getList() this.$dict.load('fpPrtpStatus').then(() => {
this.isGirdUser()
})
}, },
onShow() { onShow() {
document.title = '监测对象' document.title = '监测对象'
uni.$on('reload', () => {
this.getListInit()
})
}, },
methods: { 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() { getList() {
this.$http.post('/app/apppreventionreturntopoverty/list', null, { this.$http.post('/app/appgirdmemberpoverty/listByGirdMember', null, {
params: { params: {
current: this.current, current: this.current,
size: 15, size: 15,
status: this.currIndex === 1 ? '1' : '', status: this.currIndex == 1 ? '3' : '1',
addressAreaId: this.areaId, // addressAreaId: this.areaId,
name: this.keyword name: this.keyword
}, },
}) })
@@ -109,9 +137,7 @@ export default {
change(index) { change(index) {
this.currentTabs = index this.currentTabs = index
this.current = 1 this.getListInit()
this.list = []
this.getList()
}, },
toDetail(item) { toDetail(item) {
@@ -120,20 +146,17 @@ export default {
seachObj(e) { seachObj(e) {
this.areaId = e this.areaId = e
this.current = 1 this.getListInit()
this.getList()
}, },
handerSearch(e) { handerSearch(e) {
this.keyword = e this.keyword = e
this.current = 1 this.getListInit()
this.getList()
}, },
handerClear() { handerClear() {
this.keyword = '' this.keyword = ''
this.current = 1 this.getListInit()
this.getList()
}, },
toAdd() { toAdd() {
uni.navigateTo({url: './Add'}) uni.navigateTo({url: './Add'})
@@ -294,31 +317,9 @@ export default {
} }
.emptyWrap { .emptyWrap {
background: #f5f5f5;
margin: 0; 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{ ::v-deep .AiTopFixed .content{
padding: 0; padding: 0;
} }
@@ -338,5 +339,30 @@ export default {
align-items: center; align-items: center;
display: flex; 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> </style>