Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
aixianling
2022-04-27 14:41:49 +08:00
8 changed files with 106 additions and 73 deletions

View File

@@ -16,17 +16,21 @@
</div>
</div>
</div>
<!-- <div class="form-item">
<div class="form-item">
<div class="form-item__wrapper">
<div class="left">
<i style="width: 8px;"></i>
<span>选择户主</span>
</div>
<div class="right">
<AiPagePicker class="select" :selected.sync="form.name">请选择</AiPagePicker>
<AiPagePicker class="select" :selected.sync="userList">
<span v-if="!userList.length">请选择</span>
<span v-if="userList.length" style="color: #333;">{{ userList[0].name }}</span>
<u-icon name="arrow-right" color="#DDD" size="28"></u-icon>
</AiPagePicker>
</div>
</div>
</div> -->
</div>
<div class="form-item">
<div class="form-item__wrapper">
<div class="left">
@@ -83,7 +87,8 @@
<span>现住址</span>
</div>
<div class="right">
<AiAreaPicker ref="address" class="aiArea" :fullName.sync="form.currentAreaName" v-model="form.currentAreaId" :areaId="user.areaId" all @select="onAreaChange">
<!-- :areaId="user.areaId" v-model="form.currentAreaId"-->
<AiAreaPicker ref="address" class="aiArea" :fullName.sync="form.currentAreaName" v-model="form.currentAreaId" :root="user.areaId" @select="onAreaChange">
<div class="aiArea">
<span class="label" v-if="form.currentAreaName">{{ form.currentAreaName }}</span>
<i v-else>请选择</i>
@@ -156,7 +161,7 @@
</div>
<!-- <div style="height: 8px; width: 100%;background: #f3f4f5;"></div> -->
<div class="form-group" v-if="isEdit">
<div class="form-group" v-if="flag">
<div class="form-item">
<div class="form-item__wrapper">
<div class="left">
@@ -169,13 +174,23 @@
</div>
</div>
<div class="form-item">
<div class="form-item__wrapper">
<div class="form-item__wrapper checkbox">
<div class="left">
<i style="opacity: 0;">*</i>
<span>健康状况</span>
</div>
<div class="right">
<AiSelect dict="fpHealth" v-model="form.healthyStatus"></AiSelect>
<!-- <u-checkbox-group>
<u-checkbox
v-model="e.checked"
v-for="(e, i) in fpHealth" :key="i"
:name="item.dictValue"
@change="checkboxChange(indexs, index, i)"
>{{ e.dictName }}
</u-checkbox>
</u-checkbox-group> -->
</div>
</div>
</div>
@@ -216,7 +231,7 @@
<!-- <div style="height: 8px; width: 100%;background: #f3f4f5;"></div> -->
<div class="form-group" v-if="isEdit">
<div class="form-group" v-if="flag">
<div class="form-item">
<div class="form-item__wrapper">
<div class="left">
@@ -289,7 +304,7 @@
</div>
<div style="height: 8px; width: 100%;background: #f3f4f5;"></div>
<div class="remark">
<p><span style="color: #FF4466;">*</span>备注说明</p>
<p><span style="display: inline-block;width: 6px;"></span>备注说明</p>
<div>
<u-input v-model="form.detail" type="textarea" height="150" placeholder="请输入备注说明" :maxlength='500' clearable />
</div>
@@ -298,7 +313,7 @@
<div class="remark">
<p><span style="width: 8px;"></span>图片<span style="color: #999;font-size: 14px;">(最多9张)</span></p>
<div style="margin-top: 30px;">
<AiUploader :def.sync="form.files" multiple placeholder="上传图片" :limit="1" action="/admin/file/add2"></AiUploader>
<AiUploader :def.sync="form.files" multiple placeholder="上传图片" :limit="9" action="/admin/file/add2"></AiUploader>
</div>
</div>
</div>
@@ -356,11 +371,29 @@ export default {
isEdit: false,
id: '',
girdInfo: {},
photo: []
photo: [],
userList: [],
flag: false,
helthList: [],
}
},
computed: {
...mapState(['user']),
userChange() {
if(this.userList.length) {
this.isEdit = true;
this.form.name = this.userList[0].name
this.form.idNumber = this.userList[0].idNumber
return [this.isEdit,this.form.name,this.form.idNumber]
}
},
sexChange() {
if(this.form.idNumber) {
return this.form.sex = this.form.idNumber.substr(16, 1) % 2 == 0 ? '1' : '0'
}
}
},
onLoad(query) {
@@ -368,13 +401,22 @@ export default {
this.$dict.load(['fpType','fpRiskType', 'riskEliminationMethod', 'fpRiskType', 'fpYesOrNo', 'fpNation', 'fpEducation', 'fpStudentsInSchool', 'fpHealth',
'fpLaborSkills', 'fpPoliticalOutlook', 'sex', 'fpHealth']).then(() => {
if (query.id) {
this.isEdit = true
this.flag = true
this.id = query.id
this.getInfo(this.id)
// this.photo = this.form.files[0].url
}else {
this.form.currentAreaId = this.user.areaId
}
})
// var dictList = []
// console.log(this.$dict.getDict('fpHealth'));
// this.$dict.getDict('fpHealth').map((item) => {
// dictList.push(item.dictValue)
// })
// return helthList = dictList.join(',')
// console.log(dictList.join(','));
},
@@ -383,11 +425,6 @@ export default {
},
methods: {
toSelect() {
// uni.navigateTo({
// url: './residentList'
// })
},
rules() {
return {
objectType: '请选择监测对象类型',
@@ -398,12 +435,6 @@ export default {
}
},
getResidentList() {
this.$http.post('').then(res => {
})
},
getResidentList() {
uni.navigateTo({
url: './residentList'
@@ -445,10 +476,6 @@ export default {
if(!this.form.riskType) {
return this.$u.toast('请选择风险因素')
}
if(!this.form.detail) {
return this.$u.toast('请输入备注说明')
}
this.$http.post('/app/apppreventionreturntopoverty/addByEwechat', {
...this.form,
@@ -573,6 +600,11 @@ export default {
border-bottom: 1px solid #E4E5E6;
}
.checkbox {
display: flex;
}
.right {
height: 112px;
line-height: 112px;
@@ -637,12 +669,6 @@ export default {
font-size: 32px;
}
}
// &:last-child {
// .form-item__wrapper {
// border: none;
// }
// }
}
}
@@ -727,5 +753,8 @@ export default {
.border-b0{
border-bottom: 0!important;
}
::v-deep .AiSelect .display .selectedLabel {
font-size: 28px;
}
}
</style>

View File

@@ -16,7 +16,8 @@
<p>{{ info.phone }}</p>
</div>
</div>
<span @click="linkTo('./Add?id=' + info.id)" v-if="info.status == 1">编辑</span>
<!-- v-if="info.status == 1" -->
<span @click="linkTo('./Add?id=' + info.id)">编辑</span>
</div>
<div class="item-info">
<label>现住地址</label>
@@ -159,7 +160,7 @@
<h2>收支情况</h2>
<i :style="{color: isIncome ? '#2EA222' : '#FF4466'}">({{ isIncome ? '已填写' : '未填写' }})</i>
</div>
<span @click="linkTo(`./MonitorIncome?id=${info.id}&girdId=${girdInfo.girdId}&girdName=${girdInfo.girdName}`)" v-if="info.status == 1">编辑</span>
<span @click="linkTo(`./MonitorIncome?id=${info.id}&girdId=${girdInfo.girdId}&girdName=${girdInfo.girdName}`)">编辑</span>
</div>
<div class="item-info">
<label>家庭纯收入</label>
@@ -208,7 +209,7 @@
</div>
<div class="right">
<span>{{ item.createTime }}</span>
<u-icon name="list" color="#999" size="28" @click="edit(item.id)" style="margin-left:16px;"></u-icon>
<u-icon name="list" color="#999" size="28" @click="edit(item.id)" style="margin-left:16px;" v-if="item.createUserId == user.id && item.operationDesc == '走访排查'"></u-icon>
</div>
</div>
<p style="color: #999999;">操作类型{{ item.operationDesc }}</p>
@@ -238,23 +239,20 @@
</div>
</div>
<div v-if="checkType == 2 && currIndex != 1">
<div class="footer-btn" v-if="info.status == 0">
<!-- <div @click="toRemove('您确认要驳回此居民的监测对象申请吗?', 0)">驳回申请</div> -->
<div v-if="checkType == 2 && currIndex != 1">
<div class="footer-btn" v-if="info.status == 0 || info.status == 3">
<div class="confirm-btn" @click="toRemove('您确认要将此居民纳入监测对象吗?', 1)">纳入监测</div>
</div>
<div class="footer-btn" v-if="info.status == 1">
<!-- <div @click="del">删除人员</div> -->
<div class="confirm-btn" @click="toRemove('您确认要解除此监测对象的风险吗?', 1)">消除风险</div>
</div>
<div class="footer-btn" v-if="info.status == 2">
<!-- <div @click="toRemove('您确认要继续监测该居民', 0)">继续监测</div> -->
<div class="confirm-btn" @click="toRemove('您确认要解除此监测对象的风险吗?', 1)">消除风险</div>
</div>
<div class="footer-btn" v-if="info.status == 3">
<!-- <div @click="del">删除人员</div> -->
<div class="confirm-btn" @click="toRemove('您确认要将此居民纳入监测对象吗?', 1)">纳入监测</div>
<div class="confirm-btn" @click="toRemove('您确认要解除此监测对象的风险吗', '')">消除风险审批</div>
</div>
<div class="footer-btn" v-if="info.status == 4">
<div @click="del">删除人员</div>
</div>
@@ -264,7 +262,7 @@
</template>
<script>
import { mapState } from 'vuex'
export default {
name: 'detail',
@@ -283,6 +281,7 @@ export default {
computed: {
...mapState(['user']),
isIncome() {
if (!this.info.id) {
return false
@@ -436,10 +435,8 @@ export default {
},
toAddView(text, pass) {
// console.log(111);
this.$confirm('', text).then(() => {
uni.navigateTo({url: `./MonitorAddView?pass=${pass}&id=${this.info.id}&status=${this.info.status}`})
// console.log(222);
// this.$http.post(`/app/apppreventionreturntopoverty/examine?id=${this.id}&pass=${pass}`).then(res => {
// if (res.code === 0) {
// this.$u.toast('操作成功')

View File

@@ -45,7 +45,6 @@
<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>

View File

@@ -432,6 +432,7 @@ export default {
<style lang="scss">
.add {
padding-bottom: 120px;
width: 100%;
::v-deep .u-radio {
&:last-child {
@@ -598,5 +599,9 @@ export default {
.border-b0{
border-bottom: 0!important;
}
::v-deep .familyMember .item {
width: 100%;
}
}
</style>

View File

@@ -36,6 +36,7 @@ export default {
id: '',
type: '',
operationDesc: '',
flag: false,
}
},
onLoad(query) {
@@ -59,18 +60,21 @@ export default {
getInfo() {
this.$http.post(`/app/apppreventionreturntopovertylog/queryDetailById?id=${this.id}`).then(res => {
if (res.code == 0) {
this.operationDesc = res.data.operationDesc
this.detail = res.data.detail
this.files = res.data.files || []
}
})
},
submit() {
if(this.flag) return
if (!this.operationDesc) {
return this.$u.toast('请选择帮扶类型')
}
if (!this.detail) {
return this.$u.toast('请输入帮扶内容')
}
this.flag = true
this.$http.post('/app/apppreventionreturntopovertylog/addOrUpdate', {
detail: this.detail,
files: this.files,
@@ -98,21 +102,20 @@ export default {
<style lang="scss">
.form {
padding-bottom: 120px;
div {
margin-bottom: 16px;
background: #fff;
}
.help {
padding: 32px;
box-sizing: border-box;
display: flex;
justify-content: space-between;
background: #fff;
margin-bottom: 16px;
}
.form-item {
padding: 32px;
background: #fff;
margin-bottom: 16px;
.form-item__title {
display: flex;

View File

@@ -63,9 +63,9 @@ export default {
return this.$u.toast('请选择风险消除方式')
}
}
if(!this.opinion) {
return this.$u.toast('请输入备注说明')
}
// if(!this.opinion) {
// return this.$u.toast('请输入备注说明')
// }
if(this.file.length > 0) {
var files = []
this.file.map(item => {
@@ -74,7 +74,7 @@ export default {
this.filesList = files.join(',')
}
if(this.status == 0) {
if(this.status == 0) { // 纳入监测
this.$http.post(`/app/apppreventionreturntopoverty/examine`, null,{
params: {
pass: this.pass,
@@ -85,7 +85,7 @@ export default {
}
}).then(res => {
if (res.code === 0) {
this.$u.toast('操作成功')
this.$u.toast('提交成功')
uni.$emit('reload')
setTimeout(() => {
uni.navigateBack({
@@ -94,7 +94,7 @@ export default {
},600)
}
})
} else {
} else { // 驳回
this.$http.post(`/app/apppreventionreturntopoverty/relieve`, null,{
params: {
pass: this.pass,
@@ -105,7 +105,7 @@ export default {
}
}).then(res => {
if (res.code === 0) {
this.$u.toast('操作成功')
this.$u.toast('提交成功')
uni.$emit('reload')
setTimeout(() => {
uni.navigateBack({

View File

@@ -5,7 +5,7 @@
<div class="top">
<div class="left">
<h2>{{ item.name }}</h2>
<span>{{ item.idNumber }}</span>
<span>{{ item.idNumber.replace(/(.{6}).*(.{4})/, '$1********$2') }}</span>
</div>
<span v-if="item.isHousehold == 1">户主</span>
<span v-else>{{ $dict.getLabel('fpRelationship', item.householdRelation) }}</span>

View File

@@ -48,7 +48,7 @@
</div>
</div>
<div class="item">
<div><span style="color: #FF4466;">*</span>备注说明</div>
<div><span style="display: inline-block;width: 6px;"></span>备注说明</div>
<div>
<u-input v-model="form.opinion" type="textarea" placeholder="请输入备注说明" height="200" :maxlength="500"></u-input>
</div>
@@ -111,9 +111,9 @@ export default {
})
},
submit() {
if (!this.form.opinion) {
return this.$u.toast('请输入备注说明')
}
// if (!this.form.opinion) {
// return this.$u.toast('请输入备注说明')
// }
if (this.form.pass == 1) { // 申请纳入
this.$http.post(`/app/apppreventionreturntopoverty/examine`,null,{
@@ -122,14 +122,14 @@ export default {
id: this.id,
}
}).then(res => {
if (res.code === 0) {
this.$u.toast('操作成功')
if (res.code == 0) {
this.$u.toast('提交成功')
uni.$emit('reload')
setTimeout(() =>{
uni.navigateBack({
delta: 2
})
})
},600)
}
})
} else if (this.form.pass == 0){ // 申请解除
@@ -139,14 +139,14 @@ export default {
id: this.id,
}
}).then(res => {
if (res.code === 0) {
this.$u.toast('操作成功')
if (res.code == 0) {
this.$u.toast('提交成功')
uni.$emit('reload')
setTimeout(() =>{
uni.navigateBack({
delta: 2
})
})
},600)
}
})
}