221 lines
5.9 KiB
Vue
221 lines
5.9 KiB
Vue
<template>
|
|
<div class="Transfer">
|
|
<div class="contents">
|
|
<u-form :model="forms" ref="uForm" label-width="auto" :border-bottom="false">
|
|
<u-form-item label="转交给" prop="status" required :border-bottom="false" right-icon="arrow-right" class="first-form" v-if="status == 1">
|
|
<u-input v-model="forms.name" placeholder="请选择转交对象" @click="toSelectUser" disabled />
|
|
</u-form-item>
|
|
<u-form-item label="事件分类" prop="groupName" required :border-bottom="false" right-icon="arrow-right" v-if="status != 1">
|
|
<u-input v-model="forms.groupName" placeholder="请选择事件分类" @click="show = true" />
|
|
|
|
<u-select v-model="show" :list="myList" value-name="id" label-name="groupName" @confirm="selectStatus"></u-select>
|
|
</u-form-item>
|
|
|
|
<u-form-item :label="status == 3 ? '办结意见' : status == 2 ? '拒绝受理意见' : '办理意见'" prop="content" required :border-bottom="false" label-position="top" class="contents">
|
|
<u-input v-model="forms.content" :placeholder="status == 2 ? '请写下拒绝受理意见…' : '请写下你的办结意见...'" type="textarea" auto-height height="100" maxlength="500" />
|
|
</u-form-item>
|
|
|
|
<div class="line"></div>
|
|
|
|
<u-form-item label="图片上传(最多9张)" prop="files" :border-bottom="false" class="avatars" label-position="top">
|
|
<AiUploader :def.sync="forms.files" multiple placeholder="上传图片" :limit="9" action="/admin/file/add2"></AiUploader>
|
|
</u-form-item>
|
|
|
|
</u-form>
|
|
</div>
|
|
|
|
<div class="btn" v-if="this.status == 1" @click="confirm">
|
|
<span>转交事件</span>
|
|
</div>
|
|
|
|
<div class="btn" v-if="this.status == 2" @click="confirm">
|
|
<span>拒绝受理</span>
|
|
</div>
|
|
|
|
<div class="btn" v-if="this.status == 3" @click="confirm">
|
|
<span>我已办结</span>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
name: 'Content',
|
|
components: {},
|
|
props: {},
|
|
data() {
|
|
return {
|
|
forms: {
|
|
groupName: '',
|
|
groupId: '',
|
|
content: '',
|
|
files: [],
|
|
name: ''
|
|
},
|
|
flag: false,
|
|
show: false,
|
|
status: '', //1转交 2拒绝受理 3我已办结
|
|
myList: [],
|
|
id: '',
|
|
selectUser: {}
|
|
}
|
|
},
|
|
onLoad(option) {
|
|
this.status = option.status
|
|
this.id = option.id
|
|
this.forms.groupId = option.groupId
|
|
this.forms.groupName = option.groupName
|
|
this.typeList()
|
|
uni.$on('goback', (res) => {
|
|
this.selectUser = res
|
|
if(res.name) {
|
|
this.forms.name = res.name
|
|
}else{
|
|
this.forms.name = res.girdName
|
|
}
|
|
})
|
|
},
|
|
methods: {
|
|
|
|
typeList() {
|
|
this.$http.post(`/app/appclapeventgroup/list`, null, {
|
|
params: {
|
|
size: 9999,
|
|
},
|
|
})
|
|
.then((res) => {
|
|
if (res.code == 0) {
|
|
this.myList = res.data.records
|
|
this.$forceUpdate()
|
|
}
|
|
})
|
|
},
|
|
|
|
confirm() {
|
|
if(this.status == 1 && !this.forms.name) {
|
|
return this.$u.toast('请选择转交对象')
|
|
}
|
|
if(this.status != 1 && !this.forms.groupName) {
|
|
return this.$u.toast('请选择分类')
|
|
}
|
|
if(this.status != 1 && !this.forms.content) {
|
|
return this.$u.toast('请输入意见')
|
|
}
|
|
this.submit()
|
|
},
|
|
submit() { //status 1转交 2拒绝受理 3我已办结
|
|
var url = '', successText= '', params= ''
|
|
if(this.status == 1) {
|
|
url = `/app/appclapeventinfo/transfer`
|
|
successText = '转交成功'
|
|
params = {
|
|
...this.forms,
|
|
girdId: this.selectUser.id,
|
|
girdName: this.selectUser.girdName,
|
|
}
|
|
if(this.selectUser.name) { //选择的网格员
|
|
params.girdId = this.selectUser.girdId
|
|
params.girdMemberId = this.selectUser.id
|
|
params.girdMemberName = this.selectUser.name
|
|
}
|
|
}
|
|
if(this.status == 2) {
|
|
url = `/app/appclapeventinfo/refuse`
|
|
successText = '拒绝成功'
|
|
params = {...this.forms}
|
|
}
|
|
if(this.status == 3) {
|
|
url = `/app/appclapeventinfo/finishByGirdMember`
|
|
successText = '办结成功'
|
|
params = {...this.forms}
|
|
}
|
|
params.id = this.id
|
|
this.$http.post(url, params).then((res) => {
|
|
if (res.code == 0) {
|
|
this.$u.toast(successText)
|
|
uni.$emit('updateDeatil')
|
|
uni.$emit('getListInit')
|
|
setTimeout(() => {
|
|
uni.navigateBack()
|
|
},600)
|
|
}
|
|
})
|
|
},
|
|
selectStatus(e) {
|
|
this.forms.groupName = e[0].label
|
|
this.forms.groupId = e[0].value
|
|
},
|
|
toSelectUser() {
|
|
uni.navigateTo({ url: './SelectUser' })
|
|
},
|
|
},
|
|
}
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
.Transfer {
|
|
height: 100%;
|
|
.contents {
|
|
padding-bottom: 140px;
|
|
::v-deep .u-form {
|
|
.u-form-item {
|
|
padding: 0 45px !important;
|
|
.u-form-item__body {
|
|
.u-form-item--right__content__slot {
|
|
padding-bottom: 0;
|
|
.u-input {
|
|
text-align: right !important;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.u-form-item:first-child {
|
|
.u-form-item__body {
|
|
border-bottom: 1px solid #ddd;
|
|
}
|
|
}
|
|
|
|
.line {
|
|
height: 24px;
|
|
background: #f3f6f9;
|
|
}
|
|
|
|
.contents {
|
|
padding-bottom: 20px !important;
|
|
.u-form-item__body {
|
|
.u-form-item--right__content__slot {
|
|
.u-input {
|
|
text-align: left !important;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.avatars {
|
|
padding-bottom: 20px !important;
|
|
.u-form-item__body {
|
|
.default {
|
|
width: 160px;
|
|
height: 160px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.btn {
|
|
position: fixed;
|
|
bottom: 0;
|
|
width: 100%;
|
|
box-sizing: border-box;
|
|
background: #3975c6;
|
|
padding: 34px 0;
|
|
text-align: center;
|
|
font-size: 32px;
|
|
font-weight: 500;
|
|
color: #ffffff;
|
|
}
|
|
}
|
|
</style>
|