From ef48e4b7a4d34e63ffd2cb23c406f4da6eb72ed7 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期二, 14 五月 2024 13:42:26 +0800
Subject: [PATCH] 优化消息管理,标准库管理

---
 src/components/view/b2-standard.vue |   57 ++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 46 insertions(+), 11 deletions(-)

diff --git a/src/components/view/b2-standard.vue b/src/components/view/b2-standard.vue
index 46dba57..76219ef 100644
--- a/src/components/view/b2-standard.vue
+++ b/src/components/view/b2-standard.vue
@@ -58,7 +58,7 @@
   }
 
   .product_table .el-table {
-    height: 100%;
+    height: calc(100% - 35px) !important;
   }
 
   .sort {
@@ -161,8 +161,9 @@
         </el-table>
       </el-row>
       <el-row class="product_table" v-loading="tableLoad2">
-        <el-table :data="productList" ref="productTable" style="width: 100%;" height="100%" tooltip-effect="dark" stripe
-          :fit="true" border @selection-change="handleSelectionChange" :row-class-name="tableRowClassName"
+        <el-table :data="pagedData" ref="productTable" style="width: 100%;" height="100%" tooltip-effect="dark" stripe
+          :fit="true" border
+          @selection-change="handleSelectionChange" :row-class-name="tableRowClassName"
           @select="upProductSelect" @select-all="handleAll">
           <el-table-column type="selection" width="65">
           </el-table-column>
@@ -231,6 +232,14 @@
             </template>
           </el-table-column>
         </el-table>
+        <el-pagination
+        style="position: absolute;right: 16px;bottom: 1px;"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-size="pageSize"
+          layout="total, prev, pager, next, jumper"
+          :total="total">
+        </el-pagination>
       </el-row>
     </div>
     <el-dialog title="鍒嗙被娣诲姞" :visible.sync="addDia" width="400px">
@@ -428,7 +437,29 @@
         sectionLoad: false,
         sectionRow: null,
         sectionList: [],
-        templateList: []
+        templateList: [],
+        total:0,
+        pageSize:100,
+        currentPage:1,
+      }
+    },
+    computed: {
+      pagedData() {
+        const start = (this.currentPage - 1) * this.pageSize;
+        const end = start + this.pageSize;
+        return this.productList.slice(start, end);
+      },
+    },
+    watch:{
+      pagedData:{
+        deep:true,
+        handler(val){
+          setTimeout(() => {
+            val.forEach(a => {
+              if (a.state == 1) this.toggleSelection(a)
+            })
+          }, 300)
+        }
       }
     },
     mounted() {
@@ -912,11 +943,12 @@
           tree: this.selectTree
         }).then(res => {
           this.productList = res.data
-          setTimeout(() => {
-            this.productList.forEach(a => {
-              if (a.state == 1) this.toggleSelection(a)
-            })
-          }, 300)
+          this.total = this.productList.length;
+          // setTimeout(() => {
+          //   this.productList.forEach(a => {
+          //     if (a.state == 1) this.toggleSelection(a)
+          //   })
+          // }, 300)
           this.tableLoad2 = false
         })
       },
@@ -955,13 +987,13 @@
       },
       handleAll(e) {
         if (e.length > 0) {
-          this.productList.map(m => {
+          this.productList = this.productList.map(m => {
             m.state = 0
             this.upProductSelect(null, m)
             return m
           })
         } else {
-          this.productList.map(m => {
+          this.productList = this.productList.map(m => {
             m.state = 1
             this.upProductSelect(null, m)
             return m
@@ -1039,6 +1071,9 @@
           this.templateList = res.data
         })
       },
+      handleCurrentChange(val) {
+        this.currentPage = val;
+      },
     }
   }
 </script>

--
Gitblit v1.9.3