| | |
| | | <template> |
| | | <basicContainer> |
| | | <avue-crud :data="data" ref="crud" :table-loading="loading" @current-change="currentChange" |
| | | @search-change="searchChange" @search-reset="searchReset" @size-change="sizeChange" :option="option" |
| | | v-model="data" @selection-change="selectionChange" @row-save="rowSave" @row-del="rowDel" |
| | | @refresh-change="refreshChange"> |
| | | :before-open="beforeOpen" @search-change="searchChange" @search-reset="searchReset" @size-change="sizeChange" |
| | | :option="option" v-model="form" @selection-change="selectionChange" @row-save="rowSave" @row-del="rowDel" |
| | | @row-update="rowUpdate" @refresh-change="refreshChange"> |
| | | <template slot="menuLeft"> |
| | | <el-button type="primary" size="small" icon="el-icon-plus" v-if="data.length <= 0" |
| | | @click="$refs.crud.rowAdd()">新增</el-button> |
| | | </template> |
| | | |
| | | <template slot-scope="scope" slot="menu"> |
| | | <el-button type="text" icon="el-icon-edit" size="small" @click.stop="openEdit(scope.row,scope.index)">编辑 |
| | | <!-- <template slot="menuLeft"> |
| | | <el-button size="small" icon="el-icon-delete" plain v-if="permission.article_delete" @click="handleDelete">删 除 |
| | | </el-button> |
| | | </template> --> |
| | | <template slot-scope="scope" slot="menu"> |
| | | <!-- <el-button type="text" icon="el-icon-edit" size="small" @click.stop="openEdit(scope.row,scope.index)">编辑 |
| | | </el-button> --> |
| | | <el-button type="primary" icon="el-icon-edit" size="small" @click.stop="openDilog(scope.row,scope.index)">编辑议题 |
| | | </el-button> |
| | | <el-button type="primary" icon="el-icon-edit" size="small" @click.stop="openUser(scope.row,0)">参与用户 |
| | |
| | | </template> |
| | | </avue-crud> |
| | | |
| | | <el-dialog title="" append-to-body :visible.sync="dialogVisibles" width="60%" :before-close="handleClose"> |
| | | <el-dialog title="" append-to-body :visible.sync="dialogVisibles" width="80%" :before-close="handleClose"> |
| | | <span slot="title" class="dialog-footer"> |
| | | {{ontitle}} |
| | | </span> |
| | |
| | | </avue-form> |
| | | </div> |
| | | |
| | | <div id=""> |
| | | <div id="" v-if="!editFlag"> |
| | | <avue-crud :option="optionList" :data="form" ref="crud" @row-update="rowUpdate" @row-del="rowDel"> |
| | | <template slot="menuLeft" v-if="!editFlag"> |
| | | <el-button type="primary" size="small" plain icon="el-icon-circle-plus-outline" @click="add()">添加 |
| | |
| | | 编辑议题 |
| | | </span> |
| | | <div id=""> |
| | | <avue-form @submit="handleSubmitEdit" :option="optionDiscussEdit" v-model="discussForm"></avue-form> |
| | | <avue-form @submit="handleSubmitEdit" :option="option" v-model="discussForm"></avue-form> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <el-dialog title="" append-to-body :visible.sync="dialogVisiblesUser" width="50%" :before-close="userHandleClose"> |
| | | <!-- <span slot="title" class="dialog-footer"> |
| | | {{discussForm.ontitle}} |
| | | </span> --> |
| | | <avue-crud :data="userData" :page="pageUser" :option="option1" @on-load="getUser"></avue-crud> |
| | | </el-dialog> |
| | | |
| | |
| | | currentPage: 1, |
| | | total: 0 |
| | | }, |
| | | discussForm: { |
| | | title: '', |
| | | openFlag: 0, |
| | | numberRestrictions: 0, |
| | | voteRestrictions: 0, |
| | | userRestrictions: 0, |
| | | endTime: '', |
| | | articleId: '', |
| | | createTime: '', |
| | | updateTime: '', |
| | | deleteFlag: '', |
| | | repeatVote: 0, |
| | | voteNumberPublic: 0, |
| | | appointUser: '', |
| | | userIds: '', |
| | | eventType: 1, |
| | | }, |
| | | discussForm: {}, |
| | | dialogVisiblesEdit: false, |
| | | dialogVisiblesUser: false, |
| | | editFlag: false, |
| | |
| | | }, |
| | | ] |
| | | }, |
| | | optionDiscussEdit: { |
| | | column: [{ |
| | | label: "", |
| | | type: 'title', |
| | | prop: "title", |
| | | span: 24, |
| | | row: true, |
| | | offset: 2, |
| | | styles: { |
| | | fontSize: '24px' |
| | | } |
| | | }, { |
| | | labelWidth: 100, |
| | | label: '开启投票', |
| | | prop: 'openFlag', |
| | | type: 'radio', |
| | | button: true, |
| | | row: true, |
| | | offset: 6, |
| | | dicData: [{ |
| | | label: '开启', |
| | | value: 0 |
| | | }, { |
| | | label: '不开启', |
| | | value: 1 |
| | | }] |
| | | }, { |
| | | labelWidth: 100, |
| | | label: '开启签名', |
| | | prop: 'signatureFlag', |
| | | type: 'radio', |
| | | button: true, |
| | | row: true, |
| | | offset: 6, |
| | | dicData: [{ |
| | | label: '开启', |
| | | value: 0 |
| | | }, { |
| | | label: '不开启', |
| | | value: 1 |
| | | }] |
| | | }, |
| | | { |
| | | label: "截止时间", |
| | | row: true, |
| | | offset: 6, |
| | | prop: "endTime", |
| | | type: "datetime", |
| | | format: "yyyy-MM-dd hh:mm:ss", |
| | | valueFormat: "timestamp", |
| | | }, |
| | | ] |
| | | }, |
| | | disCussFrom: { |
| | | discussContent: '', |
| | | optionRange: 0, |
| | |
| | | parentId: '', |
| | | level: '', |
| | | }] |
| | | |
| | | }, |
| | | ontitle: '编辑议题', |
| | | // 弹框标题 |
| | |
| | | total: 0 |
| | | }, |
| | | // 表单数据 |
| | | form: [], |
| | | form: { |
| | | title: '', |
| | | openFlag: 0, |
| | | numberRestrictions: 0, |
| | | voteRestrictions: 0, |
| | | userRestrictions: 0, |
| | | endTime: '', |
| | | articleId: '', |
| | | createTime: '', |
| | | updateTime: '', |
| | | deleteFlag: '', |
| | | repeatVote: 0, |
| | | voteNumberPublic: 0, |
| | | appointUser: '', |
| | | userIds: '', |
| | | eventType: 1, |
| | | signatureFlag: 0, |
| | | appointUser: 0 |
| | | }, |
| | | // 选择行 |
| | | selectionList: [], |
| | | // 表单配置 |
| | |
| | | calcHeight: 54, |
| | | align: 'center', |
| | | menuAlign: 'center', |
| | | // addBtn: false, |
| | | editBtn: false, |
| | | addBtn: false, |
| | | // editBtn: false, |
| | | searchMenuSpan: 3, |
| | | // searchBtn: true, |
| | | menuWidth: 500, |
| | |
| | | label: '标题', |
| | | prop: 'title', |
| | | searchSpan: 4, |
| | | disabled: true, |
| | | // disabled: true, |
| | | }, |
| | | { |
| | | label: '参与人数', |
| | |
| | | prop: 'openFlag', |
| | | type: 'radio', |
| | | button: true, |
| | | value: 0, |
| | | dicData: [{ |
| | | label: '开启', |
| | | value: 0 |
| | |
| | | message: "请选择投票限制", |
| | | trigger: "blur", |
| | | }, ], |
| | | value: 0 |
| | | }, { |
| | | label: '签名', |
| | | prop: 'signatureFlag', |
| | |
| | | message: "请选择是否签名", |
| | | trigger: "blur", |
| | | }, ], |
| | | value: 0 |
| | | }, { |
| | | label: '指定用户', |
| | | prop: 'appointUser', |
| | |
| | | message: "请选择是否指定用户", |
| | | trigger: "blur", |
| | | }, ], |
| | | value: 0 |
| | | }, |
| | | { |
| | | label: "截止时间", |
| | |
| | | } |
| | | }, |
| | | methods: { |
| | | rowSave(row) { |
| | | rowSave(row, done, loading) { |
| | | addPd(row).then( |
| | | () => { |
| | | this.onLoad(this.discussion); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }) |
| | | this.dialogVisibles = false |
| | | done() |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error) |
| | | // loading(); |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ) |
| | | ); |
| | | }, |
| | | |
| | | |
| | | init(data) { |
| | | this.discussion = data |
| | | // let row = { |
| | | // title: data.title |
| | | // } |
| | | // this.data.push(row) |
| | | this.form.title = data.title |
| | | this.form.articleId = data.id; |
| | | this.onLoad(data) |
| | | }, |
| | | |
| | |
| | | this.dialogVisiblesEdit = true |
| | | }, |
| | | // 提交修改 |
| | | handleSubmitEdit(form, done) { |
| | | rowUpdate(row, index, done, loading) { |
| | | done() |
| | | if (!this.discussForm.id) { |
| | | addPd(this.discussForm).then(() => { |
| | | if (!row.id) { |
| | | addPd(row).then(() => { |
| | | this.dialogVisiblesEdit = false |
| | | this.onLoad(this.discussion); |
| | | this.$message({ |
| | |
| | | }); |
| | | }); |
| | | } else { |
| | | updatePd(this.discussForm).then(() => { |
| | | updatePd(row).then(() => { |
| | | this.dialogVisiblesEdit = false |
| | | this.onLoad(this.discussion); |
| | | this.$message({ |
| | |
| | | const data = res.data.data; |
| | | this.form = data; |
| | | this.loading = false; |
| | | this.selectionClear(); |
| | | // this.selectionClear(); |
| | | }) |
| | | }, |
| | | |
| | |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | form = {} |
| | | this.editFlag = false |
| | | let params = { |
| | | level: 1, |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | beforeOpen(done, type) { |
| | | if (["edit", "view"].includes(type)) { |
| | | getDetailPd(this.form.id).then((res) => { |
| | | let data = res.data.data |
| | | this.form = data; |
| | | }); |
| | | } |
| | | if (["add"].includes(type)) { |
| | | this.form.title = this.discussion.title; |
| | | this.form.articleId = this.discussion.id; |
| | | } |
| | | done(); |
| | | }, |
| | | beforeClose(done) { |
| | | done() |
| | | this.form = {}; |