From b23a2a35a14b010a3b97a1b61a02ec179dfab924 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期五, 04 九月 2020 17:25:14 +0800
Subject: [PATCH] feat: sort camera tree

---
 src/components/LeftNav.vue |  117 ++++++++++++++++++++++++++--------------------------------
 1 files changed, 52 insertions(+), 65 deletions(-)

diff --git a/src/components/LeftNav.vue b/src/components/LeftNav.vue
index 90ad872..cf99eea 100644
--- a/src/components/LeftNav.vue
+++ b/src/components/LeftNav.vue
@@ -6,12 +6,7 @@
       v-show="TreeDataPool.showTreeBox"
     >
       <el-tabs v-model="TreeDataPool.treeActiveName" type="border-card" @tab-click="handleClick">
-        <el-tab-pane
-          label="鎽勫儚鏈�"
-          name="camera"
-          :style="`height:${height - 56}px;`"
-          v-if="isShow(cameraAuth)"
-        >
+        <el-tab-pane label="鎽勫儚鏈�" name="camera" :style="`height:${height - 56}px;`" v-if="showCam">
           <el-menu
             :default-openeds="openeds"
             background-color="#fff"
@@ -27,7 +22,6 @@
               <el-select
                 v-model="TreeDataPool.searchCamType"
                 placeholder="璇烽�夋嫨"
-                
                 @change="searchAreaData"
               >
                 <el-option
@@ -43,7 +37,6 @@
                 placeholder="鎼滅储"
                 clearable
                 @input="querySearchAsync('camera')"
-                
               >
                 <i
                   class="el-icon-search el-input__icon"
@@ -52,7 +45,7 @@
                   @click="searchAreaData"
                 ></i>
               </el-input>
-              <div class="tree-close">
+              <!-- <div class="tree-close">
                 <el-tooltip content="鏀惰捣鐩綍鏍�" placement="bottom" popper-class="atooltip">
                   <i
                     class="el-icon-s-fold"
@@ -60,7 +53,7 @@
                     @click="closeTree"
                   ></i>
                 </el-tooltip>
-              </div>
+              </div>-->
             </li>
 
             <!-- 娣诲姞鍖哄煙鍥炬爣 -->
@@ -150,12 +143,12 @@
           label="鏁版嵁鏍�"
           name="dataStack"
           :style="`height:${height - 56}px;`"
-          v-if="isShow(dataStack)"
+          v-if="showDataStack"
         >
           <div class="local-vedio-area">
             <!-- 鎼滅储 -->
             <div class="search-input">
-              <span style="display: inline-block;padding: 0px 3px;"></span>
+              <!-- <span style="display: inline-block;padding: 0px 3px;"></span> -->
               <el-select
                 v-model="DataStackPool.searchType"
                 placeholder="璇烽�夋嫨"
@@ -187,13 +180,13 @@
                 ></i>
               </el-input>
               <!-- 闅愯棌鏍戞寜閽� -->
-              <div class="dev-tree-close">
+              <!-- <div class="dev-tree-close">
                 <i
                   class="el-icon-s-fold"
                   style="color: #3D68E1;line-height: 22px;font-size: 27px;"
                   @click="closeTree"
                 ></i>
-              </div>
+              </div>-->
             </div>
 
             <!-- 鏈湴瑙嗛婧愬垪琛� -->
@@ -216,21 +209,9 @@
               </div>
               <LocalVedioList :dataList="TreeDataPool.localVedioList"></LocalVedioList>
             </div>
-            <!-- 鍒嗛〉 -->
-            <!-- <div class="paginationClass flex-box">
-                <el-pagination
-                  @current-change="refrash"
-                  :current-page="TreeDataPool.localCurrentPage"
-                  :page-size="TreeDataPool.localPageSize"
-                  style="margin: 10px 0;"
-                  :total="TreeDataPool.localTotal"
-                ></el-pagination>
-            </div>-->
           </div>
           <file-upload v-show="fileUploadBox" @close="fileUploadBox= false" />
         </el-tab-pane>
-        <!-- <el-tab-pane label="鏈湴鍥剧墖" name="localPic" v-if="isShow('VIDEOCAMERA:image')">鏈湴鍥剧墖</el-tab-pane>
-        <el-tab-pane label="鏈湴闊抽" name="localAudio" v-if="isShow('VIDEOCAMERA:audio')">鏈湴闊抽</el-tab-pane>-->
       </el-tabs>
     </div>
   </transition>
@@ -244,6 +225,7 @@
   updateStatus
 } from "@/api/localVedio";
 
+import bus from "@/plugin/bus"
 import TreeMenu from "@/components/treeMenu/index";
 import LocalVedioList from '@/components/subComponents/LocalVedioList';
 import FileUpload from '@/components/subComponents/FileUpload/index';
@@ -270,6 +252,15 @@
   },
 
   computed: {
+    showTab() {
+      return true;
+    },
+    showCam() {
+      return this.appName === "Camera" || this.appName === "Search";
+    },
+    showDataStack() {
+      return this.appName === "DataStack" || this.appName === "Search";
+    },
     showLock() {
       return this.edit;
     },
@@ -347,52 +338,40 @@
       loadingGBTree: false
     };
   },
-  watch: {
-    $route(to, from) {
-      switch (to.name) {
-        case "Searching":
-          this.cameraAuth = "videoSearch:camera"
-          this.dataStack = "videoSearch:dataStack"
-          break
-        case "VideoManage":
-          this.cameraAuth = "VIDEOCAMERA:camera"
-          this.dataStack = "VIDEOCAMERA:dataStack"
-          break
-        default:
-          this.cameraAuth = "videoMonitor:camera"
-          this.dataStack = "videoMonitor:dataStack"
-      }
-      // console.log("璺敱鍙樺寲锛�", to, from)
-    }
-  },
+  // watch: {
+  //   $route(to, from) {
+  //     switch (to.name) {
+  //       case "Searching":
+  //         this.cameraAuth = "videoSearch:camera"
+  //         this.dataStack = "videoSearch:dataStack"
+  //         break
+  //       case "VideoManage":
+  //         this.cameraAuth = "VIDEOCAMERA:camera"
+  //         this.dataStack = "VIDEOCAMERA:dataStack"
+  //         break
+  //       default:
+  //         this.cameraAuth = "videoMonitor:camera"
+  //         this.dataStack = "videoMonitor:dataStack"
+  //     }
+  //     // console.log("璺敱鍙樺寲锛�", to, from)
+  //   }
+  // },
   created() {
-    if (this.isShow('VIDEOCAMERA:camera')) {
+    if (this.showCam) {
       this.TreeDataPool.treeActiveName = "camera"
+      this.TreeDataPool.fetchTreeData();
+
     } else {
       this.TreeDataPool.treeActiveName = "dataStack"
+      this.DataStackPool.fetchFiles();
+
     }
-    this.TreeDataPool.fetchTreeData().then(_ => {
-      // todo
-      // if (this.$route.path == '/Layout/Searching') {
-      //   this.TreeDataPool.filterLocalVideoWell()
-      // }
-    });
   },
   methods: {
-    isShow(authority) {
-      if (this.isAdmin) {
-        return true;
-      } else if (this.buttonAuthority.indexOf("," + authority + ",") > -1) {
-        return true;
-      } else {
-        return false;
-      }
-    },
     searchAreaData() {
       this.TreeDataPool.fetchTreeData();
     },
     searchDataStack() {
-      debugger
       this.DataStackPool.fetchFiles();
     },
     lockSwitch() {
@@ -407,16 +386,16 @@
     },
     closeTree() {
       this.TreeDataPool.showTreeBox = false;
-      // bus.$emit('refreshCompareImg')
+      bus.$emit('refreshCompareImg')
     },
     addNode(event) {
       this.$refs.tree.addNode(event, { id: 0 });
     },
     addCamera(node) {
-      // bus.$emit("addCameraOnTree", node);
+      bus.$emit("addCameraOnTree", node);
     },
     addDir(node) {
-      // bus.$emit("addDirOnTree", node);
+      bus.$emit("addDirOnTree", node);
     },
     menuOpen(index) {
       this.TreeDataPool.openeds[index] = true;
@@ -536,6 +515,10 @@
 .left-tree-box {
   float: left;
   width: 100%;
+  .el-tabs__nav-prev,
+  .el-tabs__nav-next {
+    display: none;
+  }
   .el-tabs--border-card {
     border: none;
     box-shadow: none;
@@ -577,7 +560,7 @@
   .navTopSelect {
     display: flex;
     text-align: left;
-    
+
     .el-input__icon {
       line-height: 34px;
     }
@@ -598,6 +581,10 @@
     font-size: 20px;
     padding: 0px 5px;
   }
+  // .el-input__inner:focus {
+  //     outline: none;
+  //     border-color: #3D68E1;
+  // }
   .el-menu {
     border-right: none;
   }

--
Gitblit v1.8.0