From 34dbf82112e28c111ffb2efdf2653ee42df80b21 Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Wed, 28 Feb 2024 14:15:49 +0800
Subject: [PATCH] 街道管理员查询不出物业公司(物业公司加一列)

---
 src/views/article/discussionManage.vue |  218 +++++++++++++++++++++++++++++++++---------------------
 1 files changed, 133 insertions(+), 85 deletions(-)

diff --git a/src/views/article/discussionManage.vue b/src/views/article/discussionManage.vue
index 413f365..895d934 100644
--- a/src/views/article/discussionManage.vue
+++ b/src/views/article/discussionManage.vue
@@ -12,9 +12,9 @@
             </template>
 
             <template slot-scope="{type,size,row }" slot="menu">
-                <!-- <el-button icon="el-icon-circle-plus-outline" :size="size" :type="type" @click.stop="openDilog(row, 1)">
-                    创建议题
-                </el-button> -->
+                <el-button icon="el-icon-s-tools" :size="size" :type="type" @click.stop="openDilog(row, 1)">
+                    设置
+                </el-button>
 
                 <el-button icon="el-icon-edit" :size="size" :type="type" @click.stop="openEditPopup(row, 1)">
                     编辑议题
@@ -35,34 +35,23 @@
                 </el-button>
             </template>
 
-            <template slot-scope="{ row }" slot="publish">
-                <el-tag>{{ row.publish == "1" ? "已发布" : row.publish == "0" ? "未发布" : "未发布" }}
+            <template slot-scope="{ row, size }" slot="publish">
+                <el-tag :size="size" :type="showStatus(row.publish, 1).type" v-text="showStatus(row.publish, 1).text">
                 </el-tag>
             </template>
 
-            <template slot-scope="{ row }" slot="iscomment">
-                <el-tag>{{ row.iscomment == "1" ? "开启" : row.iscomment == "0" ? "关闭" : "关闭" }}
-                </el-tag>
+            <template slot-scope="{ row, size }" slot="iscomment">
+                <el-switch @change="iscommentInput($event, row)" v-model="row.iscomment" :active-value="'1'"
+                    :inactive-value="'0'" active-color="#13ce66" inactive-color="#ccc">
+                </el-switch>
             </template>
         </avue-crud>
 
         <deitDiscussion ref="DeitDiscussion">
         </deitDiscussion>
 
-        <el-dialog title="" append-to-body :visible.sync="dialogVisibles" width="80%" :before-close="handleClose">
-            <discussionManageChild ref="discussionManageChild" />
-            <!-- <span slot="title" class="dialog-footer">
-        {{discussForm.ontitle}}
-      </span> -->
-            <!--  <div id="" v-if="discussForm.eventType == 1">
-        <avue-form @submit="handleSubmit" :option="optionDiscuss" v-model="discussForm"></avue-form>
-      </div> -->
+        <discussionManageChild ref="discussionManageChild" />
 
-            <!-- <div id="" v-else>
-        <avue-form @submit="handleSubmit" :option="optionEnroll" v-model="discussForm">
-        </avue-form>
-      </div> -->
-        </el-dialog>
     </basic-container>
 </template>
 
@@ -121,7 +110,6 @@
                 userIds: '',
                 eventType: 1,
             },
-            dialogVisibles: false,
             form: {},
             query: {},
             loading: true,
@@ -133,27 +121,32 @@
             datetime: "",
             selectionList: [],
             option: {
+                labelWidth: 96,
+                searchLabelWidth: 96,
+                searchShow: true,
+                searchMenuSpan: 3,
+                menuWidth: 500,
+
                 height: "auto",
                 calcHeight: 54,
                 dialogWidth: 950,
                 tip: false,
-                searchShow: true,
-                searchMenuSpan: 3,
-                menuWidth: 450,
-                border: false,
+                border: true,
                 //stripe:true,
                 index: true,
-                viewBtn: true,
+                viewBtn: false,
                 selection: true,
                 excelBtn: true,
                 dialogClickModal: false,
                 column: [{
+                    overHidden: true,
                     label: "议事标题",
                     prop: "title",
                     span: 24,
                     row: true,
                     searchSpan: 4,
                     search: true,
+                    searchLabelWidth: 76,
                     rules: [{
                         required: true,
                         message: "请输入议事标题",
@@ -165,6 +158,7 @@
                     prop: "articleList",
                     span: 24,
                     minRows: 2,
+                    tags: true,
                     type: "tree",
                     multiple: true,
                     dicData: [],
@@ -180,29 +174,10 @@
                     hide: true,
                 },
                 {
-                    label: "发布时间",
-                    prop: "dateTime",
-                    type: "datetime",
-                    format: "yyyy-MM-dd",
-                    valueFormat: "yyyy-MM-dd",
-                    searchSpan: 5,
-                    searchRange: true,
-                    hide: true,
-                    addDisplay: false,
-                    editDisplay: false,
-                    viewDisplay: false,
-                    search: true,
-                    rules: [{
-                        required: true,
-                        message: "请选择发布时间",
-                        trigger: "blur",
-                    },],
-                },
-                {
+                    width: 110,
                     label: "封面",
                     prop: "url",
                     // align:'center',
-                    width: 80,
                     type: "upload",
                     listType: "picture-img",
                     action: "/api/blade-resource/oss/endpoint/put-file",
@@ -214,11 +189,81 @@
                     span: 24,
                 },
                 {
+                    width: 110,
+                    label: "议事类型",
+                    prop: "articleType",
+                    addDisplay: true,
+                    editDisplay: true,
+                    viewDisplay: true,
+                    searchSpan: 4,
+                    checkStrictly: true,
+                    dicUrl: "/api/blade-system/dict-biz/dictionary?code=investigateType",
+                    props: {
+                        label: "dictValue",
+                        value: "dictKey",
+                    },
+                    search: true,
+                    type: "tree",
+                    rules: [{
+                        required: true,
+                        message: "请选择议事类型",
+                        trigger: "blur",
+                    },],
+                },
+                // {
+                //   label: "发布时间",
+                //   prop: "dateTime",
+                //   type: "daterange",
+                //   format: "yyyy-MM-dd",
+                //   valueFormat: "yyyy-MM-dd",
+                //   searchSpan: 6,
+                //   searchRange: true,
+                //   hide: true,
+                //   addDisplay: false,
+                //   editDisplay: false,
+                //   viewDisplay: false,
+                //   search: true,
+                //   rules: [{
+                //     required: true,
+                //     message: "请选择发布时间",
+                //     trigger: "blur",
+                //   }, ],
+                // },
+                {
+                    width: 100,
                     label: "发布时间",
                     prop: "createTime",
                     type: "date",
                     format: "yyyy-MM-dd",
                     valueFormat: "yyyy-MM-dd HH:mm:ss",
+                    search: true,
+                    addDisplay: false,
+                    editDisplay: false,
+                    viewDisplay: false,
+                },
+                {
+                    width: 100,
+                    label: "发布状态",
+                    prop: "publish",
+                    searchSpan: 4,
+                    value: "0",
+                    slot: true,
+                    search: true,
+                    type: "select",
+                    rules: [{
+                        required: true,
+                        message: "请选择发布状态",
+                        trigger: "blur",
+                    },],
+                    dicData: [{
+                        label: "未发布",
+                        value: "0",
+                    },
+                    {
+                        label: "已发布",
+                        value: "1",
+                    }
+                    ],
                 },
                 {
                     span: 24,
@@ -420,6 +465,7 @@
                 editBtn: this.vaildData(this.permission.article_edit, true),
             }
         },
+
         ids () {
             let ids = []
             this.selectionList.forEach((ele) => {
@@ -427,10 +473,47 @@
             })
             return ids.join(",")
         },
+
+        showStatus () {
+            return (data, type) => {
+                if (data == 0) {
+                    return {
+                        text: type == 1 ? '未发布' : '关闭',
+                        type: 'info'
+                    }
+                } else if (data == 1) {
+                    return {
+                        text: type == 1 ? '已发布' : '开启',
+                        type: 'success'
+                    }
+                }
+            }
+        }
     },
     methods: {
+        iscommentInput (e, data) {
+            upcomment(data.id, e).then(() => {
+                this.$message({
+                    type: "success",
+                    message: "操作成功!",
+                })
+            })
+        },
+
         openEditPopup (row) {
-            this.$refs.DeitDiscussion.initData(row)
+            getListPd(1, 10, {
+                eventType: 1,
+                articleId: row.id
+            }).then(res => {
+                if (res.data.data.records.length == 0) {
+                    this.$message.warning('请先设置议事规则!')
+                    setTimeout(() => {
+                        this.openDilog(row, 1)
+                    }, 200)
+                } else {
+                    this.$refs.DeitDiscussion.initData(row)
+                }
+            })
         },
 
         openUserPopup (row) {
@@ -439,48 +522,12 @@
 
         openDilog (row, type) {
             var that = this
-            this.dialogVisibles = true
             this.$nextTick(() => {
                 that.$refs.discussionManageChild.init(row)
             })
-            // this.discussForm.eventType = type
-            // this.discussForm.articleId = row.id
-            // this.discussForm.title = row.title
-            // if (type == 0) {
-            //   this.discussForm.ontitle = '公益报名'
-            // } else {
-            //   this.discussForm.ontitle = '创建议题'
-            // }
         },
 
-        handleSubmit (form, done) {
-            done()
-            addPd(form).then(
-                () => {
-                    this.$message({
-                        type: "success",
-                        message: "操作成功!",
-                    })
-                    this.dialogVisibles = false
-                    done()
-                },
-                (error) => {
-                    window.console.log(error)
-                    // loading();
-                }
-            )
-        },
-
-        handleClose (done) {
-            done()
-            // this.$confirm('确认关闭?')
-            //   .then(_ => {
-            //     done();
-            //   })
-            //   .catch(_ => {});
-        },
         rowSave (row, done, loading) {
-            console.log(row, 9999)
             if (row.videoUrl.length == 0) {
                 row.videoUrl = ""
             }
@@ -497,7 +544,7 @@
             }
             // 类型  0:文章 1经营性收支,2:物业招标 3:公益报名 4:选举调查
             row.type = 4
-            row.publish = 1
+            // row.publish = 1
 
             add(row).then(
                 () => {
@@ -653,6 +700,7 @@
                 this.page.total = data.total
                 this.data = data.records
                 this.data.forEach(item => {
+                    // item.articleRange = JSON.parse(item.articleRange)
                     if (item.url.length > 0) {
                         var urls = []
                         var names = item.url.split(",")

--
Gitblit v1.9.3