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/publicSignUp.vue |  216 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 207 insertions(+), 9 deletions(-)

diff --git a/src/views/article/publicSignUp.vue b/src/views/article/publicSignUp.vue
index 6db76ec..6cc23ca 100644
--- a/src/views/article/publicSignUp.vue
+++ b/src/views/article/publicSignUp.vue
@@ -11,7 +11,31 @@
           @click="handleDelete">批量删除
         </el-button>
       </template>
+
+      <template slot-scope="scope" slot="menu">
+        <el-button type="text" icon="el-icon-s-custom" size="small" @click.stop="openDilog(scope.row,0)">
+          编辑
+        </el-button>
+        <el-button type="primary" icon="el-icon-s-custom" size="small" @click.stop="openUser(scope.row,0)">
+          参与用户
+        </el-button>
+      </template>
     </avue-crud>
+
+    <el-dialog title="" append-to-body :visible.sync="dialogVisibles" width="50%" :before-close="handleClose">
+      <avue-form @submit="handleSubmit" :option="optionEnroll" v-model="discussForm">
+      </avue-form>
+    </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="dataUser" :page="pageUser" :option="option1" @on-load="getUser"></avue-crud>
+    </el-dialog>
+
+
   </basicContainer>
 </template>
 
@@ -21,8 +45,11 @@
     getDetailPd,
     addPd,
     updatePd,
-    removePd
+    removePd,
   } from "@/api/discuss/publicDiscuss";
+  import {
+    getPageUser,
+  } from "@/api/discuss/userPublicEnroll";
   import option from "@/option/discuss/publicDiscuss";
   import {
     mapGetters
@@ -34,6 +61,103 @@
   export default {
     data() {
       return {
+        option1: {
+          menu: false,
+          addBtn: false,
+          column: [{
+            label: '姓名',
+            prop: 'name'
+          }, {
+            label: '头像',
+            prop: 'avatar'
+          }, {
+            label: '手机',
+            prop: 'phone'
+          }, {
+            label: '小区',
+            prop: 'aoiName'
+          }, {
+            label: '地址',
+            prop: 'addressName'
+          }, {
+            label: '时间',
+            prop: 'createTime'
+          }]
+        },
+        discussForm: {
+          ontitle: '',
+          title: '',
+          openFlag: 0,
+          numberRestrictions: 0,
+          voteRestrictions: 0,
+          userRestrictions: 0,
+          endTime: '',
+          articleId: '',
+          createTime: '',
+          updateTime: '',
+          deleteFlag: '',
+          repeatVote: 0,
+          voteNumberPublic: 0,
+          appointUser: '',
+          userIds: '',
+          eventType: 1,
+        },
+        optionEnroll: {
+          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: 'openFlag',
+              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",
+            },
+          ]
+        },
+        dialogVisibles: false,
+        dialogVisiblesUser: false,
         // 弹框标题
         title: '',
         // 是否展示弹框
@@ -53,14 +177,59 @@
           currentPage: 1,
           total: 0
         },
+
+        // 分页信息
+        pageUser: {
+          pageSize: 10,
+          pageSizes: [10, 20, 30, 50, 100],
+          currentPage: 1,
+          total: 0
+        },
         // 表单数据
         form: {},
         // 选择行
         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: 'enrollCount',
+              searchSpan: 4,
+              search: true,
+            },
+            {
+              label: '截止时间',
+              prop: 'endTime',
+              searchSpan: 4,
+              search: true,
+            }
+          ]
+        },
         // 表单列表
         data: [],
+        dataUser: [],
       }
     },
     mounted() {
@@ -78,6 +247,34 @@
       }
     },
     methods: {
+      getUser(page, params = {}) {
+        getPageUser(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
+          const data = res.data.data;
+          this.pageUser.total = data.total;
+          this.dataUser = data.records;
+          this.loading = false;
+          this.selectionClear();
+        });
+      },
+      userHandleClose() {
+        this.dialogVisiblesUser = false
+      },
+      openUser(row) {
+        this.dialogVisiblesUser = true
+        this.getUser(this.pageUser, params = {})
+      },
+      openDilog(row, type) {
+        this.dialogVisibles = true
+        this.discussForm = row
+        let times = new Date(row.endTime).getTime();
+        this.discussForm.endTime = times
+        console.table(this.discussForm)
+        if (type == 0) {
+          this.discussForm.ontitle = '公益报名'
+        } else {
+          this.discussForm.ontitle = '创建议题'
+        }
+      },
       init() {},
       searchHide() {
         this.search = !this.search;
@@ -90,10 +287,11 @@
         this.page.currentPage = 1;
         this.onLoad(this.page);
       },
-      handleSubmit() {
-        if (!this.form.id) {
-          addPd(this.form).then(() => {
-            this.box = false;
+      handleSubmit(form, done) {
+        done()
+        if (!this.discussForm.id) {
+          addPd(this.discussForm).then(() => {
+            this.dialogVisibles = false
             this.onLoad(this.page);
             this.$message({
               type: "success",
@@ -101,8 +299,8 @@
             });
           });
         } else {
-          updatePd(this.form).then(() => {
-            this.box = false;
+          updatePd(this.discussForm).then(() => {
+            this.dialogVisibles = false
             this.onLoad(this.page);
             this.$message({
               type: "success",
@@ -210,4 +408,4 @@
   .el-pagination {
     margin-top: 20px;
   }
-</style>
+</style>
\ No newline at end of file

--
Gitblit v1.9.3