From ef3743ccb3c663dffdcec1c051312340d4a69fed Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Fri, 23 Feb 2024 16:15:15 +0800
Subject: [PATCH] 议事优化
---
src/views/article/components/discussionManageChild.vue | 607 +++++++++++++++++++++++++++---------------------------
1 files changed, 305 insertions(+), 302 deletions(-)
diff --git a/src/views/article/components/discussionManageChild.vue b/src/views/article/components/discussionManageChild.vue
index 92ec700..11312cf 100644
--- a/src/views/article/components/discussionManageChild.vue
+++ b/src/views/article/components/discussionManageChild.vue
@@ -7,330 +7,333 @@
</template>
<script>
-import {
- getPersonPublicSelect
-} from "@/api/public"
+ import {
+ getPersonPublicSelect
+ } from "@/api/public"
-import {
- getListPd,
- getDetailPd,
- addPd,
- updatePd,
- removePd
-} from "@/api/discuss/publicDiscuss"
+ import {
+ getListPd,
+ getDetailPd,
+ addPd,
+ updatePd,
+ removePd
+ } from "@/api/discuss/publicDiscuss"
-import {
- getPage
-} from "@/api/discuss/userTopics"
+ import {
+ getPage
+ } from "@/api/discuss/userTopics"
-import option from "@/option/discuss/publicDiscuss"
-import {
- mapGetters
-} from "vuex"
-import {
- getDictionary
-} from '@/api/system/dict'
+ import option from "@/option/discuss/publicDiscuss"
+ import {
+ mapGetters
+ } from "vuex"
+ import {
+ getDictionary
+ } from '@/api/system/dict'
-import {
- getList as getHouseholdList,
- getDetatils as getHouseholdDetail
-} from "@/api/userHouse/list/houseHold"
+ import {
+ getList as getHouseholdList,
+ getDetatils as getHouseholdDetail
+ } from "@/api/userHouse/list/houseHold"
-import { getUserlnfoByDistrictlds } from "@/api/system/user"
+ import {
+ getUserlnfoByDistrictlds
+ } from "@/api/system/user"
-export default {
- data() {
- return {
- dialogVisibles: false,
- userParams: {},
- // 分页信息
- pageUser: {
- pageSize: 10,
- pageSizes: [10, 20, 30, 50, 100],
- currentPage: 1,
- total: 0
- },
- discussForm: {},
- dialogVisiblesEdit: false,
- dialogVisiblesUser: false,
- editFlag: false,
- ontitle: '编辑议题',
- // 弹框标题
- title: '',
- // 是否展示弹框
- box: false,
- // 是否显示查询
- search: true,
- // 加载中
- loading: true,
- // 是否为查看模式
- view: false,
- // 查询信息
- query: {},
- // 分页信息
- page: {
- pageSize: 10,
- pageSizes: [10, 20, 30, 50, 100],
- currentPage: 1,
- total: 0
- },
-
- // 选择行
- selectionList: [],
- // 表单配置
- option: {
- height: "auto",
- calcHeight: 54,
- align: 'center',
- menuAlign: 'center',
- addBtn: false,
- searchMenuSpan: 3,
- menuWidth: 500,
- column: [{
- label: '开启投票',
- prop: 'openFlag',
- type: 'radio',
- button: true,
- row: true,
- span: 12,
- offset: 8,
- value: 0,
- dicData: [{
- label: '开启',
- value: 0
- }, {
- label: '不开启',
- value: 1
- }],
- rules: [{
- required: true,
- message: "请选择开启状态",
- trigger: "blur",
- },],
- }, {
- label: '投票限制',
- prop: 'voteRestrictions',
- type: 'radio',
- button: true,
- row: true,
- span: 12,
- offset: 8,
- dicData: [{
- label: '一人一票',
- value: 0
- }, {
- label: '一户一票',
- value: 1
- }],
- rules: [{
- required: true,
- message: "请选择投票限制",
- trigger: "blur",
- },],
- value: 0
- }, {
- label: '签名',
- prop: 'signatureFlag',
- type: 'radio',
- button: true,
- row: true,
- span: 12,
- offset: 8,
- dicData: [{
- label: '不需要',
- value: 0
- }, {
- label: '需要',
- value: 1
- }],
- rules: [{
- required: true,
- message: "请选择是否签名",
- trigger: "blur",
- },],
- value: 0
+ export default {
+ data() {
+ return {
+ dialogVisibles: false,
+ userParams: {},
+ // 分页信息
+ pageUser: {
+ pageSize: 10,
+ pageSizes: [10, 20, 30, 50, 100],
+ currentPage: 1,
+ total: 0
},
- {
- label: '指定用户',
- prop: 'appointUser',
- type: 'radio',
- button: true,
- row: true,
- span: 12,
- offset: 8,
- dicData: [{
- label: '不限制',
- value: 0
- }, {
- label: '指定用户',
- value: 1
- }],
- rules: [{
- required: true,
- message: "请选择是否指定用户",
- trigger: "blur",
- },],
- value: 0
- },
- {
- display: false,
- label: "选择用户",
- prop: "userIds",
- tags: true,
- type: "tree",
- multiple: true,
- span: 12,
- offset: 8,
- remote: true,
- hide: true,
- row: true,
- // dicUrl: `/api/blade-system/user/getUserlnfoByDistrictlds?districtlds={{}}`,
- props: {
- label: 'name',
- value: 'id',
- },
- dicData: [],
- rules: [{
- required: true,
- message: '请输入姓名',
- trigger: 'blur'
- }],
+ discussForm: {},
+ dialogVisiblesEdit: false,
+ dialogVisiblesUser: false,
+ editFlag: false,
+ ontitle: '编辑议题',
+ // 弹框标题
+ title: '',
+ // 是否展示弹框
+ box: false,
+ // 是否显示查询
+ search: true,
+ // 加载中
+ loading: true,
+ // 是否为查看模式
+ view: false,
+ // 查询信息
+ query: {},
+ // 分页信息
+ page: {
+ pageSize: 10,
+ pageSizes: [10, 20, 30, 50, 100],
+ currentPage: 1,
+ total: 0
},
- {
- label: "截止时间",
- span: 12,
- offset: 8,
- row: true,
- prop: "endTime",
- type: "datetime",
- format: "yyyy-MM-dd HH:mm:ss",
- valueFormat: "yyyy-MM-dd HH:mm:ss",
- // format: "yyyy-MM-dd hh:mm:ss",
- // valueFormat: "yyyy-MM-dd hh:mm:ss",
- rules: [{
- required: true,
- message: "请选择截止时间",
- trigger: "blur",
- },],
- }
- ]
+ // 选择行
+ selectionList: [],
+ // 表单配置
+ option: {
+ height: "auto",
+ calcHeight: 54,
+ align: 'center',
+ menuAlign: 'center',
+ addBtn: false,
+ searchMenuSpan: 3,
+ menuWidth: 500,
+ column: [{
+ label: '开启投票',
+ prop: 'openFlag',
+ type: 'radio',
+ button: true,
+ row: true,
+ span: 12,
+ offset: 8,
+ value: 0,
+ dicData: [{
+ label: '开启',
+ value: 0
+ }, {
+ label: '不开启',
+ value: 1
+ }],
+ rules: [{
+ required: true,
+ message: "请选择开启状态",
+ trigger: "blur",
+ }, ],
+ }, {
+ label: '投票限制',
+ prop: 'voteRestrictions',
+ type: 'radio',
+ button: true,
+ row: true,
+ span: 12,
+ offset: 8,
+ dicData: [{
+ label: '一人一票',
+ value: 0
+ }, {
+ label: '一户一票',
+ value: 1
+ }],
+ rules: [{
+ required: true,
+ message: "请选择投票限制",
+ trigger: "blur",
+ }, ],
+ value: 0
+ }, {
+ label: '签名',
+ prop: 'signatureFlag',
+ type: 'radio',
+ button: true,
+ row: true,
+ span: 12,
+ offset: 8,
+ dicData: [{
+ label: '不需要',
+ value: 0
+ }, {
+ label: '需要',
+ value: 1
+ }],
+ rules: [{
+ required: true,
+ message: "请选择是否签名",
+ trigger: "blur",
+ }, ],
+ value: 0
+ },
+ {
+ label: '指定用户',
+ prop: 'appointUser',
+ type: 'radio',
+ button: true,
+ row: true,
+ span: 12,
+ offset: 8,
+ dicData: [{
+ label: '不限制',
+ value: 0
+ }, {
+ label: '指定用户',
+ value: 1
+ }],
+ rules: [{
+ required: true,
+ message: "请选择是否指定用户",
+ trigger: "blur",
+ }, ],
+ value: 0
+ },
+ {
+ display: false,
+ label: "选择用户",
+ prop: "userIds",
+ tags: true,
+ type: "tree",
+ multiple: true,
+ span: 12,
+ offset: 8,
+ remote: true,
+ hide: true,
+ row: true,
+ // dicUrl: `/api/blade-system/user/getUserlnfoByDistrictlds?districtlds={{}}`,
+ props: {
+ label: 'name',
+ value: 'id',
+ },
+ dicData: [],
+ rules: [{
+ required: true,
+ message: '请输入姓名',
+ trigger: 'blur'
+ }],
+ },
+
+ {
+ label: "截止时间",
+ span: 12,
+ offset: 8,
+ row: true,
+ prop: "endTime",
+ type: "datetime",
+ format: "yyyy-MM-dd HH:mm:ss",
+ valueFormat: "yyyy-MM-dd HH:mm:ss",
+ // format: "yyyy-MM-dd hh:mm:ss",
+ // valueFormat: "yyyy-MM-dd hh:mm:ss",
+ rules: [{
+ required: true,
+ message: "请选择截止时间",
+ trigger: "blur",
+ }, ],
+ }
+ ]
+ },
+ // 表单列表
+ disCussFrom: {},
+ dialogVisibles: false,
+ articleId: '',
+ discussion: {},
+ }
+ },
+ created() {
+ this.getUserList()
+ },
+
+ mounted() {
+
+ },
+
+ watch: {
+ 'disCussFrom.appointUser': {
+ handler(newData) {
+ const column = this.findObject(this.option.column, "userIds")
+ if (newData == 1) {
+ column.display = true
+ } else {
+ column.display = false
+ }
+ },
},
- // 表单列表
- disCussFrom: {},
- dialogVisibles: false,
- articleId: '',
- discussion: {},
- }
- },
- created() {
- this.getUserList()
- },
-
- mounted() {
-
- },
-
- watch: {
- 'disCussFrom.appointUser': {
- handler(newData) {
+ },
+ computed: {
+ ...mapGetters(["permission"]),
+ ids() {
+ let ids = []
+ this.selectionList.forEach(ele => {
+ ids.push(ele.id)
+ })
+ return ids.join(",")
+ }
+ },
+ methods: {
+ getUserList() {
+ let dicUrl = `/api/blade-household/household/selectHouseholdList?searchKey={{key}}&limit=20`
const column = this.findObject(this.option.column, "userIds")
- if (newData == 1) {
- column.display = true
- } else {
- column.display = false
- }
+ column.dicUrl = dicUrl
},
- },
- },
- computed: {
- ...mapGetters(["permission"]),
- ids() {
- let ids = []
- this.selectionList.forEach(ele => {
- ids.push(ele.id)
- })
- return ids.join(",")
- }
- },
- methods: {
- getUserList() {
- let dicUrl = `/api/blade-household/household/selectHouseholdList?searchKey={{key}}&limit=20`
- const column = this.findObject(this.option.column, "userIds")
- column.dicUrl = dicUrl
- },
- handleSubmit(row, done) {
- row.articleId = this.articleId
- row.eventType = 1
- row.userIds = JSON.stringify(row.userIds)
- addPd(row).then(
- () => {
- this.onLoad(this.discussion)
- this.$message({
- type: "success",
- message: "操作成功!",
- })
- done()
- this.dialogVisibles = false
- },
- (error) => {
- window.console.log(error)
- }
- )
- },
- init(data) {
- console.log("====>", data);
- this.$refs.DisCussFrom && this.$refs.DisCussFrom.resetForm()
- this.dialogVisibles = true
- this.disCussFrom = {}
- // this.disCussFrom = data;
- this.discussion = data
- this.articleId = data.id
- this.onLoad(data)
- },
+ handleSubmit(row, done) {
+ row.articleId = this.articleId
+ row.eventType = 1
+ row.userIds = JSON.stringify(row.userIds)
+ addPd(row).then(
+ () => {
+ this.onLoad(this.discussion)
+ this.$message({
+ type: "success",
+ message: "操作成功!",
+ })
+ done()
+ this.dialogVisibles = false
+ },
+ (error) => {
+ window.console.log(error)
+ }
+ )
+ },
+ init(data) {
+ console.log("====>", data);
+ this.$refs.DisCussFrom && this.$refs.DisCussFrom.resetForm()
+ this.dialogVisibles = true
+ this.disCussFrom = {}
+ // this.disCussFrom = data;
+ this.discussion = data
+ this.articleId = data.id
+ this.onLoad(data)
+ },
- handleClose() {
- this.dialogVisibles = false
- this.$refs.DisCussFrom && this.$refs.DisCussFrom.resetForm()
+ handleClose() {
+ this.dialogVisibles = false
+ this.$refs.DisCussFrom && this.$refs.DisCussFrom.resetForm()
- console.log(this.$refs, 90999)
- },
+ console.log(this.$refs, 90999)
+ },
- onLoad(data, params = {
- eventType: 1,
- articleId: data.id
- }) {
- this.loading = true
+ onLoad(row, params = {
+ eventType: 1,
+ articleId: row.id
+ }) {
+ this.loading = true
- getListPd(1, 10, Object.assign(params, this.query)).then(res => {
- const data = res.data.data
- this.page.total = data.total
- this.disCussFrom = data.records[0]
- if (this.disCussFrom.userIds) {
- // getPersonPublicSelect({
- // id: this.disCussFrom.userIds
- // }).then(res => {
- // const column = this.findObject(this.option.column, "userIds")
- // column.dicData = res.data.data
- // this.loading = false
- // })
- getUserlnfoByDistrictlds(data.articleRange).then(res => {
- console.log(res);
- const column = this.findObject(this.option.column, "userIds")
- column.dicData = res.data.data
- })
- }
- })
+ getListPd(1, 10, Object.assign(params, this.query)).then(res => {
+ const data = res.data.data
+ this.page.total = data.total
+ this.disCussFrom = data.records[0]
+ if (this.disCussFrom.userIds) {
+ this.disCussFrom.userIds = JSON.parse(this.disCussFrom.userIds)
+ // getPersonPublicSelect({
+ // id: this.disCussFrom.userIds
+ // }).then(res => {
+ // const column = this.findObject(this.option.column, "userIds")
+ // column.dicData = res.data.data
+ // this.loading = false
+ // })
+ getUserlnfoByDistrictlds(row.articleRange).then(res => {
+ console.log(res);
+ const column = this.findObject(this.option.column, "userIds")
+ column.dicData = res.data.data
+ })
+ }
+ })
+ }
}
}
-}
</script>
<style lang="scss" scoped>
-.el-pagination {
- margin-top: 20px;
-}
+ .el-pagination {
+ margin-top: 20px;
+ }
</style>
\ No newline at end of file
--
Gitblit v1.9.3