From d205764a3ebe073b8302e8faf9345b74ae3350df Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期一, 11 十一月 2024 17:12:35 +0800
Subject: [PATCH] 优化初始化进入界面时,默认监测因子选项为PM颗粒物等常用因子

---
 src/components/scene/SceneSearch.vue |   50 +++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 39 insertions(+), 11 deletions(-)

diff --git a/src/components/scene/SceneSearch.vue b/src/components/scene/SceneSearch.vue
index 92d4de0..a7644ac 100644
--- a/src/components/scene/SceneSearch.vue
+++ b/src/components/scene/SceneSearch.vue
@@ -21,6 +21,7 @@
           :data="sceneStore.sceneList"
           table-layout="fixed"
           size="small"
+          height="30vh"
           :show-overflow-tooltip="true"
           border
           row-class-name="t-row"
@@ -28,18 +29,25 @@
           header-row-class-name="t-header-row"
           header-cell-class-name="t-header-cell"
           @row-click="handleRowClick"
+          @filter-change="handleFilterChange"
         >
           <el-table-column type="index" label="#" width="25" />
           <el-table-column
             prop="type"
             label="绫诲瀷"
-            width="55"
+            width="56"
+            column-key="type"
             :filters="sceneTypeFilter"
             :filter-method="filterHandler"
           />
           <el-table-column prop="name" label="鍚嶇О" />
           <!-- <el-table-column prop="location" label="鍦板潃" /> -->
-          <!-- <el-table-column prop="districtName" label="鍖哄幙" align="center" /> -->
+          <el-table-column
+            prop="districtName"
+            label="鍖哄幙"
+            align="center"
+            width="54"
+          />
           <!-- <el-table-column label="绠$悊" width="70" align="center">
             <template #default="{ row }">
               <el-button
@@ -94,7 +102,8 @@
   data() {
     return {
       dialogVisible: false,
-      onConfirm: undefined
+      onConfirm: undefined,
+      showSceneTypes: []
     };
   },
   computed: {
@@ -108,6 +117,15 @@
         .map((v) => {
           return { text: v.label, value: v.label };
         });
+    },
+    showSceneList() {
+      if (this.showSceneTypes.length == 0) {
+        return this.sceneStore.sceneList;
+      } else {
+        return this.sceneStore.sceneList.filter((v) => {
+          return this.showSceneTypes.indexOf(v.type) != -1;
+        });
+      }
     }
   },
   watch: {
@@ -120,14 +138,20 @@
         }
       }
     },
-    'sceneStore.sceneList': {
-      handler(nV, oV) {
-        if (nV != oV) {
-          this.dialogVisible = true;
-          this.drawMarks(nV);
-        }
-      },
-      deep: true
+    // 'sceneStore.sceneList': {
+    //   handler(nV, oV) {
+    //     if (nV != oV) {
+    //       this.dialogVisible = true;
+    //       this.drawMarks(nV);
+    //     }
+    //   },
+    //   deep: true
+    // },
+    showSceneList(nV, oV) {
+      if (nV != oV) {
+        this.dialogVisible = true;
+        this.drawMarks(nV);
+      }
     },
     'toolboxStore.sceneSearchStatus': {
       handler(nV) {
@@ -158,6 +182,10 @@
     filterHandler(value, row, column) {
       const property = column['property'];
       return row[property] === value;
+    },
+    handleFilterChange(newFilters) {
+      // console.log(newFilters);
+      this.showSceneTypes = newFilters['type'];
     }
   }
 };

--
Gitblit v1.9.3