|
|
|
@ -108,10 +108,20 @@ |
|
|
|
style="width: 720px;" |
|
|
|
:model="dataForm" |
|
|
|
:rules="dataRule"> |
|
|
|
<el-form-item label="操作人部门" prop="handlerDeptIdRule"> |
|
|
|
<el-cascader |
|
|
|
ref="name" |
|
|
|
v-model="dataForm.handlerDeptIdRule" |
|
|
|
:options="options" |
|
|
|
:props="{ multiple: false, checkStrictly: true }" |
|
|
|
@change="changeHandle" |
|
|
|
> |
|
|
|
</el-cascader> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="处理:" |
|
|
|
prop="handleCategory"> |
|
|
|
<el-select v-model="postDataForm.handleCategory" |
|
|
|
placeholder="请选择"> |
|
|
|
placeholder="请选择" @visible-change="visibleChange"> |
|
|
|
<el-option v-for="handleResultDTO in dataForm.handleResultDTOS" |
|
|
|
:key="handleResultDTO.processResult" |
|
|
|
:label="handleResultDTO.processName" |
|
|
|
@ -136,12 +146,16 @@ |
|
|
|
prop="outHandleAdvice"> |
|
|
|
<el-input v-model="postDataForm.outHandleAdvice" |
|
|
|
type="textarea" |
|
|
|
maxlength="100" |
|
|
|
show-word-limit |
|
|
|
placeholder="请您选择居民诉求的处理情况及答复意见,向居民公开展示"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="项目处理意见:" |
|
|
|
prop="handleAdvice"> |
|
|
|
<el-input v-model="postDataForm.handleAdvice" |
|
|
|
type="textarea" |
|
|
|
maxlength="100" |
|
|
|
show-word-limit |
|
|
|
placeholder="请您填写项目的实际办理情况(自己处理、吹哨报道、内部协调),便于相关部门了解项目的实际情况"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="满意度评价:" |
|
|
|
@ -252,7 +266,8 @@ export default { |
|
|
|
outHandleAdvice: '', |
|
|
|
handleCategory: '', |
|
|
|
issueLatitude: '', |
|
|
|
issueLongitude: '' |
|
|
|
issueLongitude: '', |
|
|
|
handlerDeptIdRule: '' |
|
|
|
}, |
|
|
|
isAble: false, |
|
|
|
previewImgList: [], |
|
|
|
@ -271,11 +286,13 @@ export default { |
|
|
|
}, |
|
|
|
deptResultDTOSVisible: false, |
|
|
|
evaluateDeptDTOSVisible: false, |
|
|
|
timeLineList: [] |
|
|
|
timeLineList: [], |
|
|
|
options: [] |
|
|
|
} |
|
|
|
}, |
|
|
|
mounted () { |
|
|
|
this.dataForm.id = this.$route.query.id |
|
|
|
this.getOptions() |
|
|
|
this.init() |
|
|
|
}, |
|
|
|
filters: { |
|
|
|
@ -342,6 +359,9 @@ export default { |
|
|
|
], |
|
|
|
evaluateDeptDTOS: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
], |
|
|
|
handlerDeptIdRule: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
] |
|
|
|
} |
|
|
|
} |
|
|
|
@ -379,6 +399,45 @@ export default { |
|
|
|
backToItemDeal () { |
|
|
|
this.$parent.selectComponent = 'ItemDeal' |
|
|
|
}, |
|
|
|
getOptions () { |
|
|
|
this.$http |
|
|
|
.get(`/sys/user/deptOptions/getDeptAuthByUser`) |
|
|
|
.then(({ data: res }) => { |
|
|
|
if (res.code !== 0) { |
|
|
|
return this.$message.error(res.msg) |
|
|
|
} |
|
|
|
this.options = res.data.options |
|
|
|
}) |
|
|
|
.catch(() => {}) |
|
|
|
}, |
|
|
|
visibleChange (val) { |
|
|
|
if (this.dataForm.handleResultDTOS.length === 0 && this.dataForm.handlerDeptIdRule === '' && val === true) { |
|
|
|
return this.$message.error('请先选择操作人部门!') |
|
|
|
} |
|
|
|
}, |
|
|
|
changeHandle (value, selectedData) { |
|
|
|
this.postDataForm.handlerDept = this.$refs['name'].getCheckedNodes()[0].label |
|
|
|
this.postDataForm.handlerDeptId = this.$refs['name'].getCheckedNodes()[0].value |
|
|
|
this.getHandleResultDTOS() |
|
|
|
}, |
|
|
|
// 获取处理项 |
|
|
|
getHandleResultDTOS () { |
|
|
|
this.dataForm.handleResultDTOS = [] |
|
|
|
this.dataForm.deptResultDTOS = [] |
|
|
|
this.dataForm.evaluateDeptDTOS = [] |
|
|
|
this.postDataForm.handleCategory = '' |
|
|
|
this.postDataForm.deptResultDTOS = [] |
|
|
|
this.postDataForm.evaluateDeptDTOS = [] |
|
|
|
this.deptResult = [] |
|
|
|
this.$http.post(`/events/item/getHandleResultDTOS`, { itemId: this.dataForm.id, deptId: this.postDataForm.handlerDeptId }).then(({ data: res }) => { |
|
|
|
if (res.code !== 0) { |
|
|
|
return this.$message.error(res.msg) |
|
|
|
} |
|
|
|
this.dataForm.handleResultDTOS = res.data.handleResultDTOS |
|
|
|
this.dataForm.deptResultDTOS = res.data.deptResultDTOS |
|
|
|
this.dataForm.evaluateDeptDTOS = res.data.evaluateDeptDTOS |
|
|
|
}).catch(() => { }) |
|
|
|
}, |
|
|
|
initBmap (latitude, longitude) { |
|
|
|
this.map = new BMap.Map('map') |
|
|
|
const point = new BMap.Point(longitude, latitude) |
|
|
|
@ -388,6 +447,7 @@ export default { |
|
|
|
this.map.enableScrollWheelZoom(true) |
|
|
|
}, |
|
|
|
init () { |
|
|
|
this.isAble = false |
|
|
|
this.$nextTick(() => { |
|
|
|
if (this.dataForm.id) { |
|
|
|
this.postDataForm.handleAdvice = '' |
|
|
|
@ -450,6 +510,11 @@ export default { |
|
|
|
}).catch(() => { }) |
|
|
|
}, |
|
|
|
deleteComment (val) { |
|
|
|
this.$confirm('确定要屏蔽该评论吗?屏蔽后不可恢复。', '提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
this.$http['post']('/events/item/deleteComment', { commentIds: [val] }).then(({ data: res }) => { |
|
|
|
if (res.code !== 0) { |
|
|
|
return this.$message.error(res.msg) |
|
|
|
@ -463,6 +528,9 @@ export default { |
|
|
|
} |
|
|
|
}) |
|
|
|
}).catch(() => { }) |
|
|
|
}).catch(() => { |
|
|
|
|
|
|
|
}) |
|
|
|
}, |
|
|
|
pageSizeChangeHandleNew (val) { |
|
|
|
this.pageIndex = 1 |
|
|
|
@ -530,8 +598,8 @@ export default { |
|
|
|
this.isAble = true |
|
|
|
this.$http['post']( |
|
|
|
'/events/item/itemHandleSubmit', this.postDataForm).then(({ data: res }) => { |
|
|
|
this.isAble = false |
|
|
|
if (res.code !== 0) { |
|
|
|
this.isAble = false |
|
|
|
return this.$message.error(res.msg) |
|
|
|
} |
|
|
|
this.$message({ |
|
|
|
|