167 lines
4.9 KiB
Vue
167 lines
4.9 KiB
Vue
<template>
|
||
<div class="MonitorAddView">
|
||
<div class="containter">
|
||
<div class="type" v-if="status == 3 || status == 4 || status == 0 || status == 5">
|
||
<div><span style="color: #FF4466">*</span>风险因素</div>
|
||
<div>
|
||
<AiSelect dict="fpRiskType" v-model="riskType" />
|
||
</div>
|
||
</div>
|
||
<div class="type" v-if="status == 1">
|
||
<div><span style="color: #FF4466">*</span>风险消除方式</div>
|
||
<div>
|
||
<AiSelect dict="fpRiskEliminationMethod" v-model="riskEliminationMethod" />
|
||
</div>
|
||
</div>
|
||
<div class="remark">
|
||
<div class="title"><span style="display: inline-block;width: 8px;"></span>备注说明</div>
|
||
<u-input v-model="opinion" type="textarea" placeholder="请输入备注说明" height="200" :maxlength="500"></u-input>
|
||
</div>
|
||
<div class="remark">
|
||
<div class="title"><span style="display: inline-block;width: 8px;"></span>图片<span style="color: #999999;font-size: 14px;">(最多9张)</span></div>
|
||
<div style="padding-bottom: 20px; box-sizing: border-box;">
|
||
<AiUploader :def.sync="file" multiple placeholder="上传图片" :limit="9" action="/admin/file/add2"></AiUploader>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="btn" @click="submit">提交</div>
|
||
</div>
|
||
</template>
|
||
|
||
<script>
|
||
export default {
|
||
name: 'MonitorAddView',
|
||
data() {
|
||
return {
|
||
riskType: '',
|
||
opinion: '',
|
||
pass: '',
|
||
file: [],
|
||
filesList: [],
|
||
riskEliminationMethod: '',
|
||
status: '',
|
||
}
|
||
},
|
||
onLoad(o) {
|
||
this.$dict.load('fpRiskType')
|
||
this.pass = o.pass,
|
||
this.id = o.id
|
||
this.status = o.status
|
||
},
|
||
onShow() {
|
||
document.title = (this.status == 3 || this.status == 4 || this.status==5) && this.pass ==''? '申请纳入监测': this.status == 1 && this.pass ==''? '申请解除风险' : this.status == 1 && this.pass ==1? '解除风险': (this.status == 4 || this.status==3 || this.status==5) && this.pass == 1? '纳入监测':''
|
||
},
|
||
methods: {
|
||
submit() {
|
||
var url = ''
|
||
var params = {
|
||
pass: this.pass || '',
|
||
opinion: this.opinion,
|
||
files: this.filesList,
|
||
id: this.id,
|
||
riskType: this.riskType,
|
||
riskEliminationMethod: this.riskEliminationMethod,
|
||
}
|
||
// 0:待纳入、1:监测中、2:待解除、3:已解除、4:已驳回、5:已脱贫
|
||
if(this.pass == 1) { // 网格长
|
||
if(this.status == 1) {
|
||
if(!this.riskEliminationMethod) {
|
||
return this.$u.toast('请选择风险消除方式')
|
||
}
|
||
url = '/app/apppreventionreturntopoverty/relieve' // 解除
|
||
} else if (this.status == 3 || this.status == 4 || this.status == 5) {
|
||
if(!this.riskType) {
|
||
return this.$u.toast('请选择风险因素')
|
||
}
|
||
url = `/app/apppreventionreturntopoverty/examine` // 纳入监测
|
||
}
|
||
}
|
||
if (this.pass == '') { // 网格员
|
||
if(this.status == '0' || this.status == '3' || this.status == '4' || this.status == '5') {
|
||
if(!this.riskType) {
|
||
return this.$u.toast('请选择风险因素')
|
||
}
|
||
}
|
||
if(this.status == '1') {
|
||
if(!this.riskEliminationMethod) {
|
||
return this.$u.toast('请选择风险消除方式')
|
||
}
|
||
}
|
||
if(this.file.length > 0) {
|
||
var files = []
|
||
this.file.map(item => {
|
||
files.push(item.id)
|
||
})
|
||
this.filesList = files.join(',')
|
||
}
|
||
|
||
if(this.status == 0 || this.status == 3 || this.status == 4 || this.status == 5) {
|
||
url = `/app/apppreventionreturntopoverty/examine` // 纳入监测申请
|
||
} else {
|
||
url = `/app/apppreventionreturntopoverty/relieve` // 消除申请
|
||
}
|
||
}
|
||
|
||
var formData = new FormData()
|
||
for (let key in params) {
|
||
formData.append(key, params[key])
|
||
}
|
||
this.$http.post(url , formData).then(res => {
|
||
if (res.code === 0) {
|
||
this.$u.toast('提交成功')
|
||
uni.$emit('reload')
|
||
setTimeout(() => {
|
||
uni.navigateBack({
|
||
delta: 2
|
||
})
|
||
},600)
|
||
}
|
||
})
|
||
}
|
||
},
|
||
}
|
||
</script>
|
||
|
||
<style lang="scss" scoped>
|
||
.MonitorAddView {
|
||
.containter {
|
||
padding-bottom: 112px;
|
||
box-sizing: border-box;
|
||
}
|
||
.type {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
height: 112px;
|
||
line-height: 112px;
|
||
background: #FFF;
|
||
padding: 0 32px;
|
||
box-sizing: border-box;
|
||
}
|
||
.remark {
|
||
margin-top: 16px;
|
||
background: #FFF;
|
||
padding: 0 32px;
|
||
box-sizing: border-box;
|
||
.title {
|
||
padding: 30px 0 15px 0;
|
||
}
|
||
}
|
||
::v-deep .ai-uploader .fileList .default {
|
||
width: 160px;
|
||
height: 160px;
|
||
}
|
||
.btn {
|
||
width: 100%;
|
||
height: 112px;
|
||
line-height: 112px;
|
||
text-align: center;
|
||
background: #3192F4;
|
||
color: #FFFFFF;
|
||
position: fixed;
|
||
bottom: 0;
|
||
left: 0;
|
||
}
|
||
}
|
||
</style>
|