Browse Source

【安宁pc端 首页,我要问事】-【留言板 - 页面调整】魏凯 2020-11-18

feature/borad
weikai 5 years ago
parent
commit
f90de8f4ec
  1. 13
      src/views/modules/events/borad/messageboradreply.vue
  2. 96
      src/views/modules/events/borad/messageboradreplyDetail.vue

13
src/views/modules/events/borad/messageboradreply.vue

@ -20,9 +20,6 @@
<el-form-item>
<el-button type="success" @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button>
</el-form-item>
</el-form>
<el-table v-loading="dataListLoading" :data="dataList" border @selection-change="dataListSelectionChangeHandle" style="width: 100%;">
<el-table-column label="序号" header-align="center" align="center" width="50px">
@ -37,7 +34,7 @@
<el-table-column label="问题描述" header-align="center" align="center">
<template slot-scope="scope">
<el-button type="text"
@click="childHandle(scope.row)">查看详情</el-button>
@click="addOrUpdateHandle(scope.row.id,true)">查看详情</el-button>
</template>
</el-table-column>
<el-table-column prop="state" label="状态" :formatter = "stateFormat" header-align="center" align="center">
@ -45,7 +42,7 @@
</el-table-column>
<el-table-column :label="$t('handle')" fixed="right" header-align="center" align="center" width="150">
<template slot-scope="scope">
<el-button v-if="scope.row.state == '0'" type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">回复</el-button>
<el-button v-if="scope.row.state == '0'" type="text" size="small" @click="addOrUpdateHandle(scope.row.id,false)">回复</el-button>
</template>
</el-table-column>
</el-table>
@ -74,8 +71,6 @@ export default {
mixinViewModuleOptions: {
getDataListURL: '/events/borad/page',
getDataListIsPage: true,
deleteURL: '/news/messageboradreply',
deleteIsBatch: true
},
dataForm: {
boradType: '',
@ -99,9 +94,9 @@ export default {
],
stateFormat (row, column) {
if (row.state === '0') {
return '已回复'
} else {
return '待回复'
} else {
return '已回复'
}
}
}

96
src/views/modules/events/borad/messageboradreplyDetail.vue

@ -11,11 +11,11 @@
<el-form-item label="留言时间" label-width="100px">
<el-input
:rows="3"
v-model="dataForm.createTime"
v-model="dataForm.boradTime"
style="width:50%">
</el-input>
</el-form-item>
<el-form-item label="留言人所属网格" label-width="100px">
<el-form-item label="所属网格" label-width="100px">
<div>{{dataForm.dept}}</div>
</el-form-item>
<el-form-item label="留言内容" prop="content" label-width="100px">
@ -23,18 +23,18 @@
type="textarea"
:rows="3"
placeholder="请输入会议内容,2000字以内"
v-model="dataForm.content"
v-model="dataForm.boradContent"
maxlength="2000"
style="width:50%">
</el-input>
</el-form-item>
<el-form-item label="留言图片" v-loading="loading" prop="images" label-width="100px">
<el-form-item label="留言图片" v-loading="loading" label-width="100px">
<el-upload
ref="upload"
:action="uploadUrl"
:class="{hide:hideUpload}"
list-type="picture-card"
:file-list="dataForm.images"
:file-list="dataForm.boradPicture"
:limit=3
:on-preview="handlePictureCardPreview"
:on-remove="handleRemove"
@ -67,7 +67,7 @@
:action="uploadUrl"
:class="{hide:hideUpload}"
list-type="picture-card"
:file-list="dataForm.replyimages"
:file-list="dataForm.replyPicture"
:limit=3
:on-preview="handlePictureCardPreview"
:on-remove="handleRemove"
@ -82,10 +82,10 @@
</el-dialog>
<div><font color="gray">1~3张图</font></div>
</el-form-item>
<el-form-item v-if="isAble" label="回复人" label-width="100px">
<el-form-item v-if="replyInfoState" label="回复人" label-width="100px">
<div>{{dataForm.replyName}}</div>
</el-form-item>
<el-form-item v-if="isAble" label="回复时间" label-width="100px">
<el-form-item v-if="replyInfoState" label="回复时间" label-width="100px">
<div>{{dataForm.replyTime}}</div>
</el-form-item>
</el-form>
@ -113,16 +113,20 @@ export default {
boradName: '',
dept: '',
deptId: '',
content: '',
boradContent: '',
images: [],
replyimages: [],
createTime: '',
replyPicture: [],
boradPicture: [],
boradTime: '',
replyContent: '',
replyName: '',
replyTime: ''
replyTime: '',
state: '',
boradId: '',
},
isAble: false,
replyState: true,
replyInfoState: false,
meetTypeArr: [],
dailyTypeArr: [],
hideUpload: false,
@ -142,41 +146,13 @@ export default {
computed: {
dataRule () {
return {
boradId: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
userId: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
userName: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
replyContent: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
delFlag: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
revision: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
createdBy: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
createdTime: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
updatedBy: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
updatedTime: [
content: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
]
}
}
},
mounted () {
debugger
this.pageDisabled = this.$route.query.disabled
this.hideUpload = this.$route.query.disabled
if (this.$route.query.id !== '' && this.$route.query.id != null) {
@ -199,10 +175,23 @@ export default {
},
//
getInfo () {
this.$http.get(`/news/messageboradreply/${this.dataForm.id}`).then(({ data: res }) => {
this.$http.get(`/events/borad/details/${this.dataForm.id}`).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
let infoObj = res.data.state ;
if (infoObj == '0' && this.pageDisabled == true){ //
this.pove = true;
this.replyState = false
}else if (infoObj == '0' && this.pageDisabled == false){ //
this.pove = false;
this.replyState = true;
this.dataForm.boradId = this.$route.query.id;
}else if (infoObj == '1' && this.pageDisabled == true){ //
this.pove = true;
this.replyState = true;
this.replyInfoState = true;
}
this.dataForm = {
...this.dataForm,
...res.data
@ -215,7 +204,7 @@ export default {
if (!valid) {
return false
}
this.$http[!this.dataForm.id ? 'post' : 'put']('/news/messageboradreply/', this.dataForm).then(({ data: res }) => {
this.$http['post']('/events/borad/reply/', this.dataForm).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
@ -226,6 +215,7 @@ export default {
onClose: () => {
this.visible = false
this.$emit('refreshDataList')
this.backToUserRelationList();
}
})
}).catch(() => {})
@ -240,8 +230,8 @@ export default {
this.handleErrorRemove(file)
return false
}
this.dataForm.images.push({ url: res.data.imgUrl, thumbnail: res.data.thumbnail, fileType: 1 })
this.hideUpload = this.dataForm.images.length >= 3
this.dataForm.replyPicture.push({ url: res.data.imgUrl, breviaryUrl: res.data.thumbnail, fileType: 1 })
this.hideUpload = this.dataForm.replyPicture.length >= 3
},
handleErrorRemove (file) {
//
@ -263,16 +253,16 @@ export default {
this.dialogVisible = true
},
handleRemove (file, fileList) {
for (var i = 0; i < this.dataForm.images.length; i++) {
let item = this.dataForm.images[i]
for (var i = 0; i < this.dataForm.replyPicture.length; i++) {
let item = this.dataForm.replyPicture[i]
if (item.url === file.url) {
this.dataForm.images.splice(i, 1)
this.dataForm.replyPicture.splice(i, 1)
}
}
this.hideUpload = this.dataForm.images.length >= 9
this.hideUpload = this.dataForm.replyPicture.length >= 3
},
beforeAvatarUpload (file) {
if (this.dataForm.images.length === 3) {
if (this.dataForm.replyPicture.length === 3) {
this.$message.error('最多上传3张图片!')
return false
}
@ -298,3 +288,9 @@ export default {
}
}
</script>
<style>
.hide .el-upload--picture-card {
display: none;
}
</style>

Loading…
Cancel
Save