From ad0a536bd7534a8eaf477d41294de21c7d7b25df Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Thu, 21 Dec 2023 11:50:54 +0800
Subject: [PATCH] 维修基金审核

---
 src/views/article/discussionManage.vue |  205 +++++++++++++++++++++++---------------------------
 1 files changed, 94 insertions(+), 111 deletions(-)

diff --git a/src/views/article/discussionManage.vue b/src/views/article/discussionManage.vue
index c18948e..113ba42 100644
--- a/src/views/article/discussionManage.vue
+++ b/src/views/article/discussionManage.vue
@@ -33,7 +33,7 @@
       <div id="">
         <avue-crud :option="optionList" :data="form" ref="crud" @row-save="rowSave" @row-update="rowUpdate"
           @row-del="rowDel">
-          <template slot="menuLeft">
+          <template slot="menuLeft" v-if="!editFlag">
             <el-button type="primary" size="small" plain icon="el-icon-circle-plus-outline" @click="add()">添加
             </el-button>
           </template>
@@ -41,7 +41,7 @@
             <i :class="scope.row.icon" style="font-size:14px"></i>
           </template>
           <template #menu="{row,size}">
-            <el-button v-if="row.level === 1" :size="size" text type="primary" @click="openDilog(row)">编辑</el-button>
+            <el-button v-if="row.level === 1" :size="size" text type="primary" @click="edit(row)">编辑</el-button>
             <el-button v-if="row.level === 1" :size="size" text type="danger" @click="deletes(row)">删除</el-button>
             <el-button v-if="row.level === 2" :size="size" text type="primary" @click="openUser(row,1)">选择此项人数
               :{{row.number}} 详情</el-button>
@@ -50,16 +50,12 @@
       </div>
     </el-dialog>
 
-
-
-
-
     <el-dialog title="" append-to-body :visible.sync="dialogVisiblesEdit" width="50%" :before-close="editHandleClose">
       <span slot="title" class="dialog-footer">
         编辑议题
       </span>
       <div id="">
-        <avue-form @submit="handleSubmitEdit" :option="optionDiscuss" v-model="discussForm"></avue-form>
+        <avue-form @submit="handleSubmitEdit" :option="optionDiscussEdit" v-model="discussForm"></avue-form>
       </div>
     </el-dialog>
 
@@ -67,7 +63,7 @@
       <!-- <span slot="title" class="dialog-footer">
         {{discussForm.ontitle}}
       </span> -->
-      <avue-crud :data="data" :option="option1"></avue-crud>
+      <avue-crud :data="userData" :page="pageUser" :option="option1" @on-load="getUser"></avue-crud>
     </el-dialog>
 
   </basicContainer>
@@ -91,6 +87,10 @@
     remove
   } from "@/api/discuss/topics";
 
+  import {
+    getPage
+  } from "@/api/discuss/userTopics";
+
   import option from "@/option/discuss/publicDiscuss";
   import {
     mapGetters
@@ -103,27 +103,35 @@
     data() {
       return {
         option1: {
-          addBtn:false,
+          addBtn: false,
           menu: false,
           column: [{
             label: '姓名',
             prop: 'name'
           }, {
-            label: '昵称',
-            prop: 'sex'
+            label: '头像',
+            prop: 'avatar'
           }, {
             label: '手机',
-            prop: 'sex'
+            prop: 'phone'
           }, {
             label: '小区',
-            prop: 'sex'
+            prop: 'aoiName'
           }, {
             label: '地址',
-            prop: 'sex'
+            prop: 'addressName'
           }, {
             label: '时间',
             prop: 'createTime'
           }]
+        },
+        userParams: {},
+        // 分页信息
+        pageUser: {
+          pageSize: 10,
+          pageSizes: [10, 20, 30, 50, 100],
+          currentPage: 1,
+          total: 0
         },
         discussForm: {
           title: '',
@@ -180,10 +188,10 @@
               row: true,
               dicData: [{
                 label: '多选',
-                value: 0
+                value: 1
               }, {
                 label: '单选',
-                value: 1
+                value: 0
               }]
             }, {
               label: '排序',
@@ -215,17 +223,15 @@
             },
           ]
         },
-        optionDiscuss: {
+        optionDiscussEdit: {
           column: [{
               label: "",
-              // labelWidth: 20,
               type: 'title',
               prop: "title",
               span: 24,
               row: true,
               offset: 2,
               styles: {
-                // color: 'red',
                 fontSize: '24px'
               }
             }, {
@@ -245,72 +251,18 @@
               }]
             }, {
               labelWidth: 100,
-              label: '多房屋可重复',
-              prop: 'repeatVote',
+              label: '开启签名',
+              prop: 'signatureFlag',
               type: 'radio',
               button: true,
               row: true,
               offset: 6,
               dicData: [{
-                label: '不可以',
+                label: '开启',
                 value: 0
               }, {
-                label: '可以',
+                label: '不开启',
                 value: 1
-              }]
-            }, {
-              labelWidth: 100,
-              label: '投票限制',
-              prop: 'voteRestrictions',
-              type: 'radio',
-              button: true,
-              row: true,
-              offset: 6,
-              dicData: [{
-                label: '一人一票',
-                value: 0
-              }, {
-                label: '一户一票',
-                value: 1
-              }]
-            }, {
-              labelWidth: 100,
-              label: '用户限制',
-              prop: 'userRestrictions',
-              type: 'radio',
-              button: true,
-              row: true,
-              offset: 6,
-              dicData: [{
-                label: '不限制',
-                value: 0
-              }, {
-                label: '必须绑定手机',
-                value: 1
-              }, {
-                label: '必须绑定房屋',
-                value: 2
-              }]
-            }, {
-              labelWidth: 100,
-              label: '票数公开',
-              prop: 'voteNumberPublic',
-              type: 'radio',
-              button: true,
-              row: true,
-              offset: 6,
-              dicData: [{
-                label: '全程公开',
-                value: 0
-              }, {
-                label: '投票后公开',
-                value: 1
-              }, {
-                label: '投票结束后公开',
-                value: 2
-              }, {
-                label: '不公开',
-                value: 3
               }]
             },
             {
@@ -322,35 +274,6 @@
               format: "yyyy-MM-dd hh:mm:ss",
               valueFormat: "timestamp",
             },
-            // {
-            //   labelWidth: 100,
-            //   label: '人数限制',
-            //   prop: 'numberRestrictions',
-            //   type: 'number',
-            //   button: true,
-            //   row: true,
-            //   min: 0,
-            //   max: 99999999,
-            //   controlsPosition: '',
-            //   step: 10,
-            //   offset: 6,
-            // },
-            // {
-            //   labelWidth: 100,
-            //   label: '指定用户',
-            //   prop: 'appointUser',
-            //   type: 'radio',
-            //   button: true,
-            //   row: true,
-            //   offset: 6,
-            //   dicData: [{
-            //     label: '不限制',
-            //     value: 0
-            //   }, {
-            //     label: '指定用户可见',
-            //     value: 1
-            //   }]
-            // },
           ]
         },
         disCussFrom: {
@@ -404,11 +327,49 @@
         // 选择行
         selectionList: [],
         // 表单配置
-        option: option,
+        option: {
+          selection: true,
+          height: "auto",
+          calcHeight: 54,
+          align: 'center',
+          menuAlign: 'center',
+          addBtn: false,
+          editBtn: false,
+          searchMenuSpan: 3,
+          searchBtn: true,
+          menuWidth: 500,
+          column: [{
+              label: 'ID',
+              prop: 'id',
+              searchSpan: 4,
+              // search: true,
+            },
+            {
+              label: '标题',
+              prop: 'title',
+              searchSpan: 4,
+              search: true,
+            },
+            {
+              label: '参与人数',
+              prop: 'topsCount',
+              searchSpan: 4,
+              search: true,
+            },
+            {
+              label: '截止时间',
+              prop: 'endTime',
+              searchSpan: 4,
+              search: true,
+            }
+          ]
+        },
         // 表单列表
         data: [],
+        userData: [],
         dataTop: [],
         dialogVisibles: false,
+        publicDiscussId: '',
       }
     },
     mounted() {
@@ -428,7 +389,26 @@
     methods: {
 
       openUser(row, type) {
+        console.table(row)
         this.dialogVisiblesUser = true
+        if (type == 0) {
+          this.userParams = {
+            publicDiscussId: row.id
+          }
+        } else {
+          this.userParams = {
+            topicsId: row.id
+          }
+        }
+        this.getUserPage(this.pageUser, this.userParams)
+      },
+
+      getUserPage(page, params = {}) {
+        getPage(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
+          const data = res.data.data;
+          this.pageUser.total = data.total;
+          this.userData = data.records;
+        });
       },
 
       openEdit(row) {
@@ -506,9 +486,10 @@
       openDilog(row, type) {
         this.dialogVisibles = true
         this.loading = true;
-        // this.disCussFrom.publicDiscussId = row.id
+        this.publicDiscussId = row.id
         let params = {
-          level: 1
+          level: 1,
+          publicDiscussId: row.id
         }
         getLists(1, 100, Object.assign(params, this.query)).then(res => {
           const data = res.data.data;
@@ -520,6 +501,7 @@
 
       handleSubmit(form, done) {
         done();
+        form.publicDiscussId = this.publicDiscussId
         add(form).then(
           () => {
             this.$message({
@@ -528,7 +510,8 @@
             });
             this.editFlag = false
             let params = {
-              level: 1
+              level: 1,
+              publicDiscussId: this.publicDiscussId
             }
             getLists(1, 100, Object.assign(params, this.query)).then(res => {
               const data = res.data.data;
@@ -654,4 +637,4 @@
   .el-pagination {
     margin-top: 20px;
   }
-</style>
+</style>
\ No newline at end of file

--
Gitblit v1.9.3