Преглед изворни кода

商家/平台/商场公告通知

july пре 4 година
родитељ
комит
ae2d6a8a7c
1 измењених фајлова са 67 додато и 61 уклоњено
  1. 67 61
      src/views/ldt_notice/notice.vue

+ 67 - 61
src/views/ldt_notice/notice.vue

@@ -18,25 +18,13 @@
                @size-change="sizeChange"
                @refresh-change="refreshChange"
                @on-load="onLoad">
-      <template slot="menuLeft">
-        <el-button type="danger"
-                   size="small"
-                   icon="el-icon-delete"
-                   plain
-                   v-if="permission.notice_delete"
-                   @click="handleDelete">删 除
+
+      <template slot-scope="scope" slot="menu">
+        <el-button class="el-button el-button--text el-button--small" icon="el-icon-delete"
+                   v-if="(userInfo.tenant_id === '000000' && scope.row.senderType === '平台')||(userInfo.tenant_id !== '000000' && scope.row.senderType === '商场')"
+                   @click="rowDel(scope.row)">删除
         </el-button>
       </template>
-      <template slot="senderTypeSearch">
-        <el-select v-model="senderType" placeholder="请选择发送者类型">
-          <el-option v-if="userInfo.tenant_id === '000000'"
-                     v-for="item in userInfo.tenant_id !== '000000' ? senderTypeMall : senderTypeAdmin"
-                     :key="item.value"
-                     :label="item.label"
-                     :value="item.value">
-          </el-option>
-        </el-select>
-      </template>
     </avue-crud>
   </basic-container>
 </template>
@@ -56,31 +44,6 @@ export default {
         currentPage: 1,
         total: 0
       },
-      senderTypeMall: [
-        {
-          label: "商场",
-          value: "MALL"
-        },
-        {
-          label: "商家",
-          value: "SHOP"
-        }
-      ],
-      senderTypeAdmin: [
-        {
-          label: "平台",
-          value: "PLATFORM"
-        },
-        {
-          label: "商场",
-          value: "MALL"
-        },
-        {
-          label: "商家",
-          value: "SHOP"
-        }
-      ],
-      senderType: "",
       selectionList: [],
       option: {
         height: 'auto',
@@ -92,7 +55,7 @@ export default {
         index: true,
         viewBtn: true,
         selection: true,
-        addBtn: false,
+        addBtn: true,
         editBtn: false,
         delBtn: false,
         dialogClickModal: false,
@@ -126,28 +89,31 @@ export default {
           },
           {
             label: "发送者类型",
+            labelWidth: 100,
             prop: "senderType",
             type: "select",
             search: true,
             searchLabelWidth: 90,
             searchslot: true,
-            dicData: [
-              {
-                label: "商家",
-                value: "SHOP"
-              },
-              {
-                label: "平台",
-                value: "PLATFORM"
-              },
-              {
-                label: "商场",
-                value: "MALL"
-              }
-            ],
+            dicData: [],
             rules: [{
               required: true,
-              message: "请输入发送类型(商户,平台,商场)",
+              message: "请输入发送者类型",
+              trigger: "blur"
+            }]
+          },
+          {
+            label: "接收者类型",
+            labelWidth: 100,
+            prop: "receiverType",
+            type: "checkbox",
+            search: true,
+            searchLabelWidth: 90,
+            searchslot: true,
+            dicData: [],
+            rules: [{
+              required: true,
+              message: "接受者类型",
               trigger: "blur"
             }]
           },
@@ -156,6 +122,7 @@ export default {
             prop: "isRead",
             type: "switch",
             search: true,
+            addDisplay: false,
             dicData: [
               {
                 label: "未读",
@@ -166,6 +133,7 @@ export default {
                 value: true
               }
             ],
+            value: false,
             rules: [{
               required: true,
               message: "请输入是否已读",
@@ -215,7 +183,21 @@ export default {
       return ids.join(",");
     }
   },
+  created() {
+    const receiverType = this.option.column.find(ele => {
+      return ele.prop === "receiverType";
+    });
+    receiverType.dicData = this.receiverTypeDicDataFun();
+
+    const senderType = this.option.column.find(ele => {
+      return ele.prop === "senderType";
+    });
+    senderType.dicData = this.senderTypeDicDataFun();
+  },
   methods: {
+    rowDel(row, index) {
+      this.$refs.crud.rowDel(row, index)
+    },
     rowSave(row, done, loading) {
       add(row).then(() => {
         this.onLoad(this.page);
@@ -290,7 +272,8 @@ export default {
       done();
     },
     searchReset() {
-      this.senderType = "";
+      //this.senderTypeValue = "";
+      //this.receiverTypeValue = "";
       this.query = {};
       this.onLoad(this.page);
     },
@@ -314,12 +297,35 @@ export default {
       this.page.pageSize = pageSize;
     },
     refreshChange() {
-      this.senderType = '';
       this.onLoad(this.page, this.query);
     },
+    receiverTypeDicDataFun() {
+      const data =
+        [
+          {label: "商家", value: "SHOP"}
+        ];
+      if (this.userInfo.tenant_id === '000000') {
+        data.push({label: "商场", value: "MALL"});
+        data.push({label: "用户", value: "CONSUMER"});
+      } else {
+        data.push({label: "会员", value: "MEMBER"});
+      }
+
+      return data;
+    },
+    senderTypeDicDataFun() {
+      const data =
+        [
+          {label: "商场", value: "MALL"},
+          {label: "商家", value: "SHOP"}
+        ];
+      if (this.userInfo.tenant_id === '000000') {
+        data.push({label: "平台", value: "PLATFORM"});
+      }
+      return data;
+    },
     onLoad(page, params = {}) {
       this.loading = true;
-      this.query.senderType = this.senderType;
       getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
         const data = res.data.data;
         this.page.total = data.total;