From 5ee0d36e051d591f930ba93ba660e45f10710c3f Mon Sep 17 00:00:00 2001
From: ZZJ <zzjdsg2300@163.com>
Date: 星期四, 05 五月 2022 13:30:31 +0800
Subject: [PATCH] bug修复

---
 src/views/equipmentManagement/index.vue                                 |    3 
 src/views/register/components/BaseInfo.vue                              |   44 ++--
 vue.config.js                                                           |    1 
 src/views/equipmentManagement/equipmentDetail/components/UnbindBox.vue  |    2 
 src/views/hashrate/CameraManage/index.vue                               |   17 +
 src/views/product/components/ProductContent.vue                         |    1 
 src/views/index/index.vue                                               |   25 ++
 src/components/Connect.vue                                              |    1 
 src/components/Footer.vue                                               |    2 
 src/components/giantTree/zTree/ztree.vue                                |   33 ++-
 src/api/search.ts                                                       |   30 +-
 src/views/search/Searching.vue                                          |   13 
 src/views/equipmentManagement/equipmentList/components/Content.vue      |   38 +--
 src/api/login.js                                                        |    2 
 src/views/equipmentManagement/equipmentList/components/FormList.vue     |    9 
 src/views/productDetail/index.vue                                       |   18 -
 src/views/search/components/LeftNav.vue                                 |    2 
 src/components/IndexHeader.vue                                          |   30 +-
 src/components/wasmPlayer/index.vue                                     |    2 
 src/components/subComponents/PwInput.vue                                |   59 ++++++
 src/views/equipmentManagement/equipmentDetail/components/SettingBox.vue |    8 
 src/components/giantTree/index.vue                                      |    1 
 src/main.ts                                                             |    4 
 src/views/register/components/ResetPassword.vue                         |   10 
 src/views/manageCenter/index.vue                                        |    2 
 src/views/register/components/SelectType.vue                            |    4 
 src/views/search/components/wasmPlayer/index.vue                        |    2 
 src/scripts/httpRequest.ts                                              |   25 --
 src/scripts/component.js                                                |    7 
 src/components/Header.vue                                               |    3 
 src/views/connectUs/components/consult.vue                              |    2 
 src/scripts/validate.js                                                 |   25 +-
 src/views/login/components/loginForm.vue                                |   10 
 src/assets/css/element-variables.scss                                   |   33 +++
 src/views/equipmentManagement/equipmentList/components/AddBox.vue       |   15 +
 src/Pool/VideoPhotoData.ts                                              |    2 
 36 files changed, 312 insertions(+), 173 deletions(-)

diff --git a/src/Pool/VideoPhotoData.ts b/src/Pool/VideoPhotoData.ts
index e86de54..e73e50d 100644
--- a/src/Pool/VideoPhotoData.ts
+++ b/src/Pool/VideoPhotoData.ts
@@ -287,7 +287,7 @@
       // });
       let taskNames = [];
       this.tasks = [];
-      rsp.data.forEach((d: any) => {
+      rsp.data.aggs.forEach((d: any) => {
         if (taskNames.indexOf(d.name) < 0) {
           taskNames.push(d.name);
           this.tasks.push(d)
diff --git a/src/api/login.js b/src/api/login.js
index 14e0413..e824ffa 100644
--- a/src/api/login.js
+++ b/src/api/login.js
@@ -145,7 +145,7 @@
 //鑱旂郴鎴戜滑
 export const saveConnectUs = (data) => {
   return request({
-    url: "/saas/api-i/saasIndex/saveConnectUs",
+    url: "/cloud/api-i/saasIndex/saveConnectUs",
     method: "post",
     data,
   });
diff --git a/src/api/search.ts b/src/api/search.ts
index 94cdfef..74c4dee 100644
--- a/src/api/search.ts
+++ b/src/api/search.ts
@@ -3,7 +3,7 @@
 // 妫�绱㈤〉闈㈡暟鎹垪琛�
 export const getSearchList = (query: any) => {
   return request({
-    url: "/data/api-v/es/esSearch",
+    url: "/saas/api-s/es/search",
     method: "post",
     data: query
   });
@@ -21,7 +21,7 @@
 // 妫�绱㈤〉闈㈡爣绛炬煡璇�
 export const getTagList = (query: any) => {
   return request({
-    url: "/data/api-v/es/tagList",
+    url: "/saas/api-s/es/tagList",
     method: "post",
     data: query
   });
@@ -30,25 +30,27 @@
 // 妫�绱㈤〉闈换鍔″垪琛ㄦ煡璇�
 export const getTaskList = (query: any) => {
   return request({
-    url: "/data/api-v/task/aggregateTaskList",
-    method: "get",
-    params: query
-  });
-};
-
-// 瀛楀吀鏌ヨ锛堝竷闃茬瓑绾э級
-export const getAlarmLevel = (query: any) => {
-  return request({
-    url: "/saas/api-s/dictionary/findByType",
-    method: "get",
+    url: "/saas/api-s/es/aggTaskList",
+    method: "post",
     data: query
   });
 };
 
+// 鑾峰彇鏍囩瀛楀吀
+// param:type
+
+export const getAlarmLevel = (query: any) => {
+  return request({
+    url: '/saas/api-s/dictionary/findByType',
+    method: "get",
+    params: query
+  })
+}
+
 // 
 export const findPerson = (query: any) => {
   return request({
-    url: "/data/api-v/es/queryEsCompareData",
+    url: "/saas/api-s/es/queryEsCompareData",
     method: "post",
     data: query
   });
diff --git a/src/assets/css/element-variables.scss b/src/assets/css/element-variables.scss
new file mode 100644
index 0000000..cdceab1
--- /dev/null
+++ b/src/assets/css/element-variables.scss
@@ -0,0 +1,33 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+// $--color-primary: #3D68E1;
+$--color-primary: #0064FF;
+$--color-success: #13ce66;
+$--color-warning: #ff8725;
+$--color-danger: #f52323;
+$--color-info: #EAEAEA;
+$--color-themeBlue: #0064FF;
+
+$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+
+$--border-color-light: #dfe4ed;
+$--border-color-lighter: #e6ebf5;
+
+$--table-border:1px solid #dfe6ec;
+
+/* icon font path, required */
+$--font-path: '~element-ui/lib/theme-chalk/fonts';
+
+@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+  theme: $--color-primary;
+}
\ No newline at end of file
diff --git a/src/components/Connect.vue b/src/components/Connect.vue
index f4914e4..7377522 100644
--- a/src/components/Connect.vue
+++ b/src/components/Connect.vue
@@ -88,6 +88,7 @@
   background: #ffffff;
   box-shadow: 0px 4px 12px rgba(0, 51, 128, 0.18);
   border-radius: 8px;
+  z-index: 2;
 
   .tele,
   .advice {
diff --git a/src/components/Footer.vue b/src/components/Footer.vue
index a0b128a..382c817 100644
--- a/src/components/Footer.vue
+++ b/src/components/Footer.vue
@@ -8,7 +8,7 @@
       <span class="label">娉曞緥澹版槑</span>
       <span class="label">闅愮鏀跨瓥</span>
       <span class="label">寤夋涓炬姤</span>
-      <span class="label">鑱旂郴鎴戜滑</span>
+      <span class="label" @click="$router.push('/connectUs')">鑱旂郴鎴戜滑</span>
       <span class="label">鍔犲叆鎴戜滑</span>
     </div>
   </div>
diff --git a/src/components/Header.vue b/src/components/Header.vue
index 319c3d8..8aa2dc4 100644
--- a/src/components/Header.vue
+++ b/src/components/Header.vue
@@ -7,7 +7,7 @@
 
     <div class="right">
       <div class="link"><router-link to="/">棣栭〉</router-link></div>
-      <div class="link">鑱旂郴鎴戜滑</div>
+      <div class="link" @click="$router.push('/connectUs')">鑱旂郴鎴戜滑</div>
       <div class="link">鍏充簬鎴戜滑</div>
     </div>
   </div>
@@ -48,6 +48,7 @@
 
     .link {
       margin-right: 20px;
+      cursor: pointer;
     }
   }
 }
diff --git a/src/components/IndexHeader.vue b/src/components/IndexHeader.vue
index 9f17990..badc01c 100644
--- a/src/components/IndexHeader.vue
+++ b/src/components/IndexHeader.vue
@@ -6,17 +6,11 @@
         <router-link to="/">
           <img class="logo" src="/images/index/LOGO.png" alt="" />
         </router-link>
-        <router-link to="/">
-          <div class="title">宸ヤ笟鐗╄仈缃戝钩鍙�</div>
-        </router-link>
-        <div class="label"><router-link to="/">棣栭〉</router-link></div>
+        <div class="title" @click="$router.push('/')">宸ヤ笟鐗╄仈缃戝钩鍙�</div>
+        <div class="label" @click="$router.push('/')">棣栭〉</div>
         <div class="label">浜戞湇鍔�</div>
-        <div class="label">
-          <router-link to="/manageCenter">绠$悊涓績</router-link>
-        </div>
-        <div class="label">
-          <router-link to="/product">搴旂敤鍟嗗煄</router-link>
-        </div>
+        <div class="label" @click="$router.push('/manageCenter')">绠$悊涓績</div>
+        <div class="label" @click="$router.push('/product')">搴旂敤鍟嗗煄</div>
       </div>
 
       <!-- 宸︿晶 -->
@@ -37,11 +31,19 @@
         </el-input>
 
         <!-- 鏈櫥褰曟儏鍐� -->
-        <div class="headerLogin" v-if="!userInfo">
-          <router-link to="/login"> 鐧诲綍</router-link>
+        <div
+          class="headerLogin"
+          v-if="!userInfo"
+          @click="$router.push('/login')"
+        >
+          鐧诲綍
         </div>
-        <div class="register" v-if="!userInfo">
-          <router-link to="/register"> 鍏嶈垂娉ㄥ唽 </router-link>
+        <div
+          class="register"
+          v-if="!userInfo"
+          @click="$router.push('/register')"
+        >
+          鍏嶈垂娉ㄥ唽
         </div>
 
         <!-- 宸茬櫥褰曟儏鍐� -->
diff --git a/src/components/giantTree/index.vue b/src/components/giantTree/index.vue
index 13ad53d..502fc00 100644
--- a/src/components/giantTree/index.vue
+++ b/src/components/giantTree/index.vue
@@ -404,6 +404,7 @@
 }
 .tree-menu {
   // max-width: 350px;
+  min-height: 92px;
   overflow-x: auto;
   overflow-y: hidden;
   margin-bottom: 4px;
diff --git a/src/components/giantTree/zTree/ztree.vue b/src/components/giantTree/zTree/ztree.vue
index c66a40c..c6a3b0f 100644
--- a/src/components/giantTree/zTree/ztree.vue
+++ b/src/components/giantTree/zTree/ztree.vue
@@ -152,10 +152,11 @@
         !this.readonly &&
         !this.gb28181
       ) {
-        const btn = document.createElement("i");
+        const btn = document.createElement("a");
         btn.id = `${treeid}_${treeNode.id}_btn`;
         btn.classList.add("addIcon");
         btn.classList.add("iconfont");
+        btn.title = "鏂板";
         // btn.innerText = '鍒犻櫎';
         btn.addEventListener("click", (e) => {
           e.stopPropagation();
@@ -175,10 +176,11 @@
         !treeNode.children &&
         !this.gb28181
       ) {
-        const btn = document.createElement("i");
+        const btn = document.createElement("a");
         btn.id = `${treeid}_${treeNode.id}_btn`;
         btn.classList.add("delIcon");
         btn.classList.add("iconfont");
+        btn.title = "鍒犻櫎";
         // btn.innerText = '鍒犻櫎';
         btn.addEventListener("click", (e) => {
           e.stopPropagation();
@@ -196,10 +198,11 @@
         treeNode.isParent &&
         !this.readonly
       ) {
-        const btn = document.createElement("i");
+        const btn = document.createElement("a");
         btn.id = `${treeid}_${treeNode.id}_btn`;
         btn.classList.add("editIcon");
         btn.classList.add("iconfont");
+        btn.title = "缂栬緫";
         // btn.innerText = '鍒犻櫎';
         btn.addEventListener("click", (e) => {
           e.stopPropagation();
@@ -217,10 +220,11 @@
         !this.readonly &&
         !this.gb28181
       ) {
-        const btn = document.createElement("i");
+        const btn = document.createElement("a");
         btn.id = `${treeid}_${treeNode.id}_btn`;
         btn.classList.add("iconfont");
         btn.classList.add("addCameraIcon");
+        btn.title = "娣诲姞鎽勫儚鏈�";
         // btn.innerText = '鍒犻櫎';
         btn.addEventListener("click", (e) => {
           e.stopPropagation();
@@ -239,10 +243,11 @@
         !this.readonly &&
         !this.gb28181
       ) {
-        const btn = document.createElement("i");
+        const btn = document.createElement("a");
         btn.id = `${treeid}_${treeNode.id}_btn`;
         btn.classList.add("iconfont");
         btn.classList.add("importIcon");
+        btn.title = "瀵煎叆鎽勫儚鏈�";
         // btn.innerText = '鍒犻櫎';
         btn.addEventListener("click", (e) => {
           e.stopPropagation();
@@ -259,12 +264,13 @@
         !item.querySelector(".icontupian1") &&
         treeNode.type == "camera"
       ) {
-        const btn = document.createElement("i");
+        const btn = document.createElement("a");
         btn.id = `${treeid}_${treeNode.id}_btn`;
         btn.classList.add("iconfont");
         btn.classList.add("icontupian1");
         btn.classList.add("primary");
         btn.classList.add("icon-fix");
+        btn.title = "鏌ョ湅搴曞浘";
         // btn.innerText = '鍒犻櫎';
         btn.addEventListener("click", (e) => {
           e.stopPropagation();
@@ -405,6 +411,11 @@
   text-align: left;
   white-space: nowrap;
   outline: 0;
+
+  .iconfont {
+    padding: 0;
+    padding-top: 3px;
+  }
 }
 .ztree li ul {
   margin: 0;
@@ -474,7 +485,7 @@
   color: #5f5f5f;
 }
 
-.ztree li i.icon-fix {
+.ztree li a.icon-fix {
   font-size: 15px;
   margin-left: 3px;
   margin-right: 5px;
@@ -482,10 +493,10 @@
   top: 2px;
 }
 
-.ztree li i.primary {
+.ztree li a.primary {
   color: #3d68e1;
 }
-.ztree li i.danger {
+.ztree li a.danger {
   color: #f7493c;
 }
 
@@ -522,7 +533,7 @@
   background-position: 0 -14px;
 }
 .ztree li span.button.chk.checkbox_false_part {
-  background-position: 0 -28px;
+  background-position: -14px 0;
 }
 .ztree li span.button.chk.checkbox_false_part_focus {
   background-position: 0 -42px;
@@ -537,7 +548,7 @@
   background-position: -14px -14px;
 }
 .ztree li span.button.chk.checkbox_true_part {
-  background-position: -14px -28px;
+  background-position: -14px 0;
 }
 .ztree li span.button.chk.checkbox_true_part_focus {
   background-position: -14px -42px;
diff --git a/src/components/subComponents/PwInput.vue b/src/components/subComponents/PwInput.vue
new file mode 100644
index 0000000..d1ba79f
--- /dev/null
+++ b/src/components/subComponents/PwInput.vue
@@ -0,0 +1,59 @@
+<template>
+  <el-input
+    :placeholder="placeholder"
+    class="PwInput"
+    :type="[flag ? 'text' : 'password']"
+    v-model="inputVal"
+    @input="input"
+    autocomplete="off"
+  >
+    <i slot="prefix" class="iconfont" v-if="showPreIcon">&#xe608;</i>
+
+    <i
+      slot="suffix"
+      class="iconfont showPass"
+      autocomplete="auto"
+      @click="flag = !flag"
+    >
+      {{ flag ? "&#xe60a;" : "&#xe609;" }}
+    </i>
+  </el-input>
+</template>
+
+<script>
+export default {
+  props: {
+    value: {},
+    showPreIcon: {},
+    placeholder: {
+      default: "璇疯緭鍏ュ瘑鐮�",
+    },
+  },
+  data() {
+    return {
+      flag: false,
+      inputVal: this.value,
+    };
+  },
+  methods: {
+    input() {
+      this.$emit("input", this.inputVal);
+    },
+  },
+  watch: {
+    value(val) {
+      this.inputVal = val;
+    },
+  },
+};
+</script>
+
+<style lang="scss" >
+.PwInput {
+  .showPass {
+    margin-top: 8px;
+    font-size: 24px;
+    cursor: pointer;
+  }
+}
+</style>
\ No newline at end of file
diff --git a/src/components/wasmPlayer/index.vue b/src/components/wasmPlayer/index.vue
index 9f43bdf..f9f9f3e 100644
--- a/src/components/wasmPlayer/index.vue
+++ b/src/components/wasmPlayer/index.vue
@@ -74,6 +74,7 @@
         <i
           class="el-icon-download jsmodern-video-download"
           @click="downLoad"
+          style="margin: 9px 0 0 15px"
         ></i>
       </section>
 
@@ -819,6 +820,7 @@
 }
 
 .video-error {
+  text-align: center;
   position: absolute;
   top: 35%;
   left: 30%;
diff --git a/src/main.ts b/src/main.ts
index 9359c6e..7363b3e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -12,9 +12,10 @@
 
 import VueAwesomeSwiper from "vue-awesome-swiper";
 import ToggleButton from 'vue-js-toggle-button';
-import ImageShow from './scripts/component.js'
+import {ImageShow,PwInput} from './scripts/component.js'
 
 import "swiper/dist/css/swiper.css";
+import './assets/css/element-variables.scss'
 
 
 
@@ -27,6 +28,7 @@
 Vue.use(VueAwesomeSwiper as any);
 Vue.use(ToggleButton)
 Vue.use(ImageShow)
+Vue.use(PwInput)
 
 
 
diff --git a/src/scripts/component.js b/src/scripts/component.js
index b0924d3..ae74329 100644
--- a/src/scripts/component.js
+++ b/src/scripts/component.js
@@ -1,9 +1,14 @@
 // 寮曞叆缁勪欢
 import ImageShow from "@/components/subComponents/ImageShow.vue";
+import PwInput from "@/components/subComponents/PwInput.vue";
 // 鍒涘缓涓┖瀵硅薄
 // 璁剧疆瀹夎鏂规硶
 ImageShow.install = function(Vue) {
   Vue.component("ImageShow", ImageShow);
 };
+
+PwInput.install = function(Vue) {
+  Vue.component("PwInput", PwInput);
+};
 // 瀵煎嚭瀵硅薄
-export default ImageShow;
+export { ImageShow, PwInput };
diff --git a/src/scripts/httpRequest.ts b/src/scripts/httpRequest.ts
index 848eba0..97b48e4 100644
--- a/src/scripts/httpRequest.ts
+++ b/src/scripts/httpRequest.ts
@@ -138,26 +138,7 @@
         case 500:
           errJson = error.response.data
           break
-        // case 501:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "鏈嶅姟鏈疄鐜�(501)";
-        //   break;
-        // case 502:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "缃戠粶閿欒(502)";
-        //   break;
-        // case 503:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "鏈嶅姟涓嶅彲鐢�(503)";
-        //   break;
-        // case 504:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "缃戠粶瓒呮椂(504)";
-        //   break;
-        // case 505:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "HTTP鐗堟湰涓嶅彈鏀寔(505)";
-        //   break;
+        
         default:
           errJson.status = error.response.status
           errJson.message = `杩炴帴鍑洪敊(${error.response.status})!`
@@ -174,6 +155,10 @@
     if(error.response&&error.response.data&&!error.response.data.success ) {
       errJson.message =error.response.data.msg
     }
+
+    if(error.response.status == 401) {
+      return
+    }
     
      Notification({
         title: '閿欒',
diff --git a/src/scripts/validate.js b/src/scripts/validate.js
index 742d89a..527cab9 100644
--- a/src/scripts/validate.js
+++ b/src/scripts/validate.js
@@ -9,23 +9,21 @@
   return validMap.indexOf(str.trim()) >= 0;
 }
 
-/* 鏍¢獙6鍒�20浣嶅瓧姣嶅拰鏁板瓧鐨勭敤鎴峰悕锛屼笉鑳戒互鏁板瓧寮�澶� */
+/* 鏍¢獙5鍒�20浣嶅瓧姣嶅拰鏁板瓧鐨勭敤鎴峰悕锛屼笉鑳戒互鏁板瓧寮�澶� */
 export function validUser(str) {
-  const reg = /^[a-zA-Z0-9]{5,20}$/;
+  const reg = /^[a-zA-Z][a-zA-Z0-9]{4,20}$/;
   return reg.test(str);
 }
 
 /* 6鍒�14浣嶇殑鏁板瓧鍜屽瓧姣嶄互鍙婃爣鐐圭鍙风殑鑷冲皯涓ょ缁勫悎 */
 export function validPassword(str) {
-  const reg =
-    /^(?!^[0-9]+$)(?!^[a-z]+$)(?!^[A-Z]+$)(?!^[\x21-\x2f\x3a-\x40\x5b-\x60\x7B-\x7F]+$)[a-z0-9A-Z\x21-\x2f\x3a-\x40\x5b-\x60\x7B-\x7F]{6,14}$/;
+  const reg = /^(?!^[0-9]+$)(?!^[a-z]+$)(?!^[A-Z]+$)(?!^[\x21-\x2f\x3a-\x40\x5b-\x60\x7B-\x7F]+$)[a-z0-9A-Z\x21-\x2f\x3a-\x40\x5b-\x60\x7B-\x7F]{6,14}$/;
   return reg.test(str);
 }
 
 /* 鍚堟硶uri */
 export function validURL(url) {
-  const reg =
-    /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/;
+  const reg = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/;
   return reg.test(url);
 }
 
@@ -53,16 +51,14 @@
  * @returns {boolean}
  */
 export function validEmail(rule, value, callback) {
-  const re =
-    /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
+  const re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
   if (re.test(value)) {
     return callback();
   }
   return callback(new Error("杈撳叆鐨勯偖绠遍敊璇�"));
 }
 export function emailNotRequired(rule, value, callback) {
-  const re =
-    /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
+  const re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
   if (value != "") {
     if (re.test(value)) {
       return callback();
@@ -89,8 +85,7 @@
     return callback(new Error("杈撳叆涓嶅彲浠ヤ负绌�"));
   }
 
-  const re =
-    /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
+  const re = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
   if (re.test(value)) {
     return callback();
   }
@@ -105,8 +100,7 @@
     if (value == "" || typeof value == undefined) {
       callback(new Error("璇疯緭鍏ョ鍙e��"));
     } else {
-      const re =
-        /^([0-9]|[1-9]\d|[1-9]\d{2}|[1-9]\d{3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$/;
+      const re = /^([0-9]|[1-9]\d|[1-9]\d{2}|[1-9]\d{3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$/;
       const rsCheck = re.test(value);
       if (!rsCheck) {
         callback(new Error("璇疯緭鍏ュ湪[0-65535]涔嬮棿鐨勭鍙e��"));
@@ -119,7 +113,6 @@
 
 //鏍¢獙鍩熷悕
 export function vaildHost(str) {
-  let re =
-    /^(?=^.{3,255}$)(http(s)?:\/\/)?(www\.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:\d+)*(\/\w+\.\w+)*$/;
+  let re = /^(?=^.{3,255}$)(http(s)?:\/\/)?(www\.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:\d+)*(\/\w+\.\w+)*$/;
   return re.test(str);
 }
diff --git a/src/views/connectUs/components/consult.vue b/src/views/connectUs/components/consult.vue
index ecf226d..a549429 100644
--- a/src/views/connectUs/components/consult.vue
+++ b/src/views/connectUs/components/consult.vue
@@ -107,13 +107,11 @@
     },
     //鑾峰彇楠岃瘉鐮�
     getCode() {
-      let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username;
       this.codeDisabled = true;
       this.getValidStr();
       this.timer = setInterval(this.getValidStr, 1000);
       getVerifyCode({
         phoneNum: this.formData.phoneNum,
-        username: loginName,
       }).then(() => {
         this.gotCode = true;
       });
diff --git a/src/views/equipmentManagement/equipmentDetail/components/SettingBox.vue b/src/views/equipmentManagement/equipmentDetail/components/SettingBox.vue
index 3e02336..47e1f70 100644
--- a/src/views/equipmentManagement/equipmentDetail/components/SettingBox.vue
+++ b/src/views/equipmentManagement/equipmentDetail/components/SettingBox.vue
@@ -7,7 +7,7 @@
       <el-select
         v-model="every"
         placeholder="璇烽�夋嫨"
-        popper-class="industrySelect"
+        popper-class="equipmentSelect"
       >
         <el-option
           v-for="item in periodOptions"
@@ -35,7 +35,7 @@
       <el-select
         v-model="cronValueObj.week"
         placeholder="璇烽�夋嫨"
-        popper-class="industrySelect"
+        popper-class="equipmentSelect"
       >
         <el-option
           v-for="item in weeks"
@@ -52,7 +52,7 @@
       <el-select
         v-model="cronValueObj.day"
         placeholder="璇烽�夋嫨"
-        popper-class="industrySelect"
+        popper-class="equipmentSelect"
       >
         <el-option
           v-for="item in days"
@@ -400,7 +400,7 @@
 </style>
 
 <style lang="scss">
-.industrySelect.el-select-dropdown.el-popper {
+.equipmentSelect.el-select-dropdown.el-popper {
   margin: 0;
 
   .el-scrollbar {
diff --git a/src/views/equipmentManagement/equipmentDetail/components/UnbindBox.vue b/src/views/equipmentManagement/equipmentDetail/components/UnbindBox.vue
index cc12cf9..79ed391 100644
--- a/src/views/equipmentManagement/equipmentDetail/components/UnbindBox.vue
+++ b/src/views/equipmentManagement/equipmentDetail/components/UnbindBox.vue
@@ -53,7 +53,7 @@
           duration: 2500,
           offset: 57,
         });
-        this.$emit("close");
+        this.$emit("reflash");
       } else {
         this.$notify({
           type: "error",
diff --git a/src/views/equipmentManagement/equipmentList/components/AddBox.vue b/src/views/equipmentManagement/equipmentList/components/AddBox.vue
index 24e66fe..bcdfb74 100644
--- a/src/views/equipmentManagement/equipmentList/components/AddBox.vue
+++ b/src/views/equipmentManagement/equipmentList/components/AddBox.vue
@@ -250,21 +250,30 @@
     },
 
     async submit() {
+      let res = {};
       if (this.addObj.type == "cluster") {
-        const res = await addCluster({
+        res = await addCluster({
           clusterPwd: this.auth_password,
           clusterId: this.addObj.id,
         });
       } else {
-        const res = await addDeviceToUser({
+        res = await addDeviceToUser({
           clusterPwd: this.auth_password,
           deviceId: this.addObj.id,
           clusterId: this.addObj.cid,
         });
       }
+
+      if (res && res.success) {
+        this.$notify({
+          type: "success",
+          message: "娣诲姞鎴愬姛",
+        });
+        this.close();
+      }
     },
     showBox(type, id, cid) {
-      console.log(cid);
+      this.auth_password = "";
       this.showPasswordBox = true;
       this.addObj = {
         type,
diff --git a/src/views/equipmentManagement/equipmentList/components/Content.vue b/src/views/equipmentManagement/equipmentList/components/Content.vue
index 8194efc..f3ef7b6 100644
--- a/src/views/equipmentManagement/equipmentList/components/Content.vue
+++ b/src/views/equipmentManagement/equipmentList/components/Content.vue
@@ -34,6 +34,9 @@
 import AMapLoader from "@amap/amap-jsapi-loader";
 import InfoCard from "@/views/equipmentManagement/equipmentList/components/InfoCard";
 import FormList from "@/views/equipmentManagement/equipmentList/components/FormList";
+
+import bus from "@/plugin/bus";
+
 export default {
   created() {
     window._AMapSecurityConfig = {
@@ -41,9 +44,16 @@
     };
   },
   mounted() {
-    this.searchingBtn();
-    //DOM鍒濆鍖栧畬鎴愯繘琛屽湴鍥惧垵濮嬪寲
+    this.initMap("");
+    bus.$on("refleshNode", (node) => {
+      this.nodes = node;
+      this.initNode();
+    });
   },
+  beforeDestroy() {
+    bus.$off("refleshNode");
+  },
+
   components: {
     InfoCard, //璁惧淇℃伅寮瑰眰
     FormList, //琛ㄦ牸
@@ -59,6 +69,7 @@
       center: [116.06157, 39.66157], //鍦板浘涓績
       activeNode: null, //閫変腑鐨勫湴鍥捐妭鐐�
       geocoder: {},
+      myMaker: null,
     };
   },
 
@@ -91,6 +102,9 @@
     },
     //鍒濆鍖栬妭鐐�
     initNode() {
+      if (this.myMaker) {
+        this.myMaker.destroy();
+      }
       this.nodes.filter((item, index) => {
         //鏌ヨ琛屾斂浣嶇疆
         this.geocoder.getAddress([item.lon, item.lat], (status, result) => {
@@ -123,6 +137,7 @@
           });
 
           this.map.add(marker);
+          this.myMaker = marker;
         });
       });
     },
@@ -143,25 +158,6 @@
         this.isFull = false;
       }
       this.initMap(status);
-    },
-
-    // 鏌ヨ鍒楄〃
-    searchingBtn() {
-      let param = {
-        page: 1,
-        size: 999,
-        // startTime: this.searchTime[0],
-        // endTime: this.searchTime[1],
-        inputText: "",
-      };
-      findDevList(param)
-        .then((res) => {
-          this.nodes = res.data.list;
-          this.initMap("");
-        })
-        .catch((err) => {
-          console.log(err);
-        });
     },
   },
 };
diff --git a/src/views/equipmentManagement/equipmentList/components/FormList.vue b/src/views/equipmentManagement/equipmentList/components/FormList.vue
index 01bd855..d643815 100644
--- a/src/views/equipmentManagement/equipmentList/components/FormList.vue
+++ b/src/views/equipmentManagement/equipmentList/components/FormList.vue
@@ -186,6 +186,9 @@
 import UnbindBox from "@/views/equipmentManagement/equipmentDetail/components/UnbindBox";
 import QuitClusterBox from "@/views/equipmentManagement/equipmentList/components/QuitClusterBox";
 import JoinClusterBox from "@/views/equipmentManagement/equipmentList/components/JoinClusterBox";
+
+import bus from "@/plugin/bus";
+
 export default {
   components: {
     AddBox,
@@ -277,6 +280,8 @@
           if (res.data.total <= this.size) {
             this.page = 1;
           }
+
+          bus.$emit("refleshNode", this.dataList);
         })
         .catch((err) => {
           console.log(err);
@@ -296,7 +301,6 @@
 
     //瑙g粦鎸夐挳
     Untying(row) {
-      console.log(row);
       this.unbindId = row.devId;
       this.isShowUnbind = true;
     },
@@ -322,6 +326,7 @@
     //鍏抽棴鏂板寮圭獥
     closeAddBox() {
       this.isShowAdd = false;
+      this.searchingBtn();
     },
     // 鍏抽棴瑙g粦寮圭獥
     closeUnbindBox() {
@@ -330,6 +335,7 @@
 
     //瑙g粦鎴愬姛鍥炶皟
     reflash() {
+      console.log("1111");
       this.isShowUnbind = false;
       this.searchingBtn();
     },
@@ -367,6 +373,7 @@
     padding: 60px 0 30px 0;
     font-size: 14px;
     border-bottom: 1px solid #e9ebee;
+    background-color: #fff;
 
     .left,
     .right,
diff --git a/src/views/equipmentManagement/index.vue b/src/views/equipmentManagement/index.vue
index dd75b8c..5484ec2 100644
--- a/src/views/equipmentManagement/index.vue
+++ b/src/views/equipmentManagement/index.vue
@@ -25,6 +25,9 @@
   methods: {
     checkpermission() {
       const userInfo = JSON.parse(sessionStorage.getItem("userInfo"));
+      if (!userInfo) {
+        this.$router.push("/login");
+      }
       const val = userInfo.permissions.find((item) => {
         return item == "deviceMng";
       });
diff --git a/src/views/hashrate/CameraManage/index.vue b/src/views/hashrate/CameraManage/index.vue
index 8e4bb27..9396978 100644
--- a/src/views/hashrate/CameraManage/index.vue
+++ b/src/views/hashrate/CameraManage/index.vue
@@ -123,6 +123,7 @@
     },
   },
   created() {
+    console.log("------------");
     this.getCluster();
     this.TreeDataPool.readonly = false;
 
@@ -186,6 +187,22 @@
       const res = await getClusterDevList();
       if (res && res.success) {
         this.clusterData = res.data.clusterList;
+        if (res.data.clusterList <= 0 && res.data.devList <= 0) {
+          this.$confirm(
+            "绯荤粺妫�娴嬪埌鎮ㄨ繕鏈坊鍔犺澶�, 璇峰湪璁惧绠$悊椤甸潰缁存姢",
+            "鎻愮ず",
+            {
+              confirmButtonText: "璺宠浆",
+              cancelButtonText: "鍙栨秷",
+              type: "warning",
+            }
+          )
+            .then(() => {
+              this.$router.push("/manageCenter");
+            })
+            .catch(() => {});
+        }
+
         res.data.clusterList.forEach((item) => {
           this.clusterArr.push({
             label: item.cluster_name,
diff --git a/src/views/index/index.vue b/src/views/index/index.vue
index 909df1d..2be6e4e 100644
--- a/src/views/index/index.vue
+++ b/src/views/index/index.vue
@@ -89,7 +89,7 @@
       </div>
     </div>
 
-    <Connect v-if="showConnect"></Connect>
+    <Connect></Connect>
 
     <!-- 椤靛熬 -->
     <Footer></Footer>
@@ -405,16 +405,33 @@
     //娣诲姞婊氬姩鐩戝惉
     scrollListener() {
       //椤甸潰婊戝姩瑙﹀彂浜嬩欢 (婊氬姩鏉$Щ鍔ㄥ垯璋冪敤鏄惁鏄剧ず杩斿洖椤堕儴鎸夐挳浜嬩欢)
+      var a = document.documentElement.clientHeight; // 婊氬姩瀹瑰櫒鐨勫彲瑙嗛珮
+      var b = document.documentElement.scrollTop; // 婊氬姩鏉¤窛绂婚《閮ㄧ殑楂樺害
+      var c = document.documentElement.scrollHeight; // 婊氬姩瀹瑰櫒鐨勬暣涓珮搴�
 
-      if (document.documentElement.scrollTop < 1100) {
-        this.showConnect = false;
-      } else {
+      if (c === a + b) {
+        //褰撴粴鍔ㄥ鍣ㄧ殑鍙楂�+婊氬姩瀹瑰櫒婊氬姩浜嗙殑楂樺害锛堟粴鍔ㄦ潯椤堕儴璺濈婊氬姩瀹瑰櫒椤堕儴鐨勮窛绂伙級 = 婊氬姩瀹瑰櫒鐨勬暣涓珮搴︽椂锛岃鏄庢粴鍔ㄦ潯鍒板簳浜�
         this.showConnect = true;
+      } else {
+        this.showConnect = false;
       }
 
       //妫�鏌ユ粴鍔ㄦ潯鏄惁鍦ㄩ《閮紝鎺у埗杩斿洖椤堕儴鎸夐挳鐨勯殣钘忓拰鏄剧ず
     },
   },
+  beforeRouteLeave(to, from, next) {
+    let userInfo = sessionStorage.getItem("userInfo");
+    if (
+      !userInfo &&
+      to.path !== "/login" &&
+      to.path !== "/register" &&
+      to.path !== "/connectUs"
+    ) {
+      next({ path: "/login" });
+    } else {
+      next();
+    }
+  },
 };
 </script>
 
diff --git a/src/views/login/components/loginForm.vue b/src/views/login/components/loginForm.vue
index b1ac15a..b334c4b 100644
--- a/src/views/login/components/loginForm.vue
+++ b/src/views/login/components/loginForm.vue
@@ -12,22 +12,22 @@
           >
             <el-form-item prop="loginName">
               <el-input
-                v-model="user.loginName"
+                v-model.trim="user.loginName"
                 placeholder="璇疯緭鍏ユ墜鏈哄彿 / 鐢ㄦ埛鍚�"
               >
                 <i slot="prefix" class="iconfont">&#xe603;</i>
               </el-input>
             </el-form-item>
             <el-form-item prop="password" class="password-form-item">
-              <el-input
+              <PwInput v-model="user.password" :showPreIcon="true"> </PwInput>
+              <!--   <el-input
                 show-password
                 @keyup.enter.native="userLogin"
                 v-model="user.password"
                 autocomplete="off"
                 placeholder="璇疯緭鍏ュ瘑鐮�"
               >
-                <i slot="prefix" class="iconfont">&#xe608;</i>
-              </el-input>
+              </el-input> -->
             </el-form-item>
             <el-form-item>
               <el-button
@@ -239,7 +239,7 @@
           this.codeDisabled = true;
           this.getValidStr();
           this.timer = setInterval(this.getValidStr, 1000);
-          makeVerifyCode({ phoneNum: this.phone.phoneNum, type:0 })
+          makeVerifyCode({ phoneNum: this.phone.phoneNum, type: 0 })
             .then(() => {
               this.gotCode = true;
             })
diff --git a/src/views/manageCenter/index.vue b/src/views/manageCenter/index.vue
index b5e1305..5242a6c 100644
--- a/src/views/manageCenter/index.vue
+++ b/src/views/manageCenter/index.vue
@@ -5,7 +5,7 @@
 
     <div class="centerTitle">
       <div class="heart">
-        <div class="welcome">{{ userName }},娆㈣繋鎮ㄨ礉鎬濈绠$悊涓績.</div>
+        <div class="welcome">{{ userName }}, 娆㈣繋鎮ㄥ洖鍒拌礉鎬濈绠$悊涓績銆�</div>
         <div class="time">{{ timeMsg }}</div>
       </div>
     </div>
diff --git a/src/views/product/components/ProductContent.vue b/src/views/product/components/ProductContent.vue
index cbf0428..5b4436e 100644
--- a/src/views/product/components/ProductContent.vue
+++ b/src/views/product/components/ProductContent.vue
@@ -191,6 +191,7 @@
 .Content {
   position: relative;
   width: 1280px;
+  min-height: calc(100vh - 148px);
   margin: 0 auto;
 
   .searchCard {
diff --git a/src/views/productDetail/index.vue b/src/views/productDetail/index.vue
index 28ba0de..9523177 100644
--- a/src/views/productDetail/index.vue
+++ b/src/views/productDetail/index.vue
@@ -57,20 +57,10 @@
         publishStatus: 1,
         productType: 0,
       };
-      findAllCenterProduct(param)
-        .then((res) => {
-          this.data.data = res.data.list[0];
-          this.showData = true;
-        })
-        .catch((err) => {
-          console.log(err);
-          this.$notify({
-            type: "error",
-            message: "鏌ヨ浜у搧澶辫触",
-            duration: 2500,
-            offset: 57,
-          });
-        });
+      findAllCenterProduct(param).then((res) => {
+        this.data.data = res.data.list[0];
+        this.showData = true;
+      });
     },
   },
 };
diff --git a/src/views/register/components/BaseInfo.vue b/src/views/register/components/BaseInfo.vue
index 1a0fbad..a72ead8 100644
--- a/src/views/register/components/BaseInfo.vue
+++ b/src/views/register/components/BaseInfo.vue
@@ -13,26 +13,24 @@
       </el-form-item>
 
       <el-form-item prop="password">
-        <el-input show-password v-model="user.password" placeholder="瀵嗙爜">
-        </el-input>
+        <PwInput show-password v-model="user.password" placeholder="瀵嗙爜">
+        </PwInput>
       </el-form-item>
       <el-form-item prop="repassword">
-        <el-input
-          show-password
-          v-model="user.repassword"
-          placeholder="纭瀵嗙爜"
-        >
-        </el-input>
+        <PwInput show-password v-model="user.repassword" placeholder="纭瀵嗙爜">
+        </PwInput>
       </el-form-item>
       <el-form-item prop="phoneNum">
-        <div class="phoneNum">
+        <div class="phoneNum" :class="{ isFocus: phoneFocus }">
           <el-input
             placeholder="鎵嬫満鍙�"
             v-model="user.phoneNum"
             class="input-with-select"
+            @focus="phoneFocus = true"
+            @blur="phoneFocus = false"
           >
-            <div slot="prepend" class="teleSlot">+86(涓浗)</div>
           </el-input>
+          <div slot="prepend" class="teleSlot">+86(涓浗)</div>
         </div>
       </el-form-item>
       <el-form-item prop="verifyCode">
@@ -176,6 +174,7 @@
       isWrong: false,
       countdown: 60,
       gotCode: false,
+      phoneFocus: false,
     };
   },
   methods: {
@@ -324,11 +323,22 @@
     &.is-error ::v-deep .el-input__inner:focus {
       border-color: #ff4b33;
     }
+
+    .PwInput {
+      ::v-deep .iconfont {
+        margin-right: 5px;
+        font-size: 18px;
+      }
+    }
   }
 
   ::v-deep .el-input__inner {
     padding: 10px 20px;
     border-color: #c0c5cc;
+
+    &:focus {
+      border-color: #0065ff;
+    }
 
     &::-webkit-input-placeholder {
       font-size: 14px;
@@ -337,19 +347,13 @@
   }
 
   .phoneNum {
-    ::v-deep .el-input-group__prepend {
-      margin: 0 4px;
-      padding: 0pt;
-      background-color: rgba($color: #fff, $alpha: 0);
-      border-right: none;
-      border-color: #c0c5cc;
-    }
-
+    position: relative;
     ::v-deep .el-input__inner {
-      border-left: none;
+      padding-left: 120px;
     }
-
     .teleSlot {
+      position: absolute;
+      top: 7px;
       width: 103px;
       height: 28px;
       line-height: 28px;
diff --git a/src/views/register/components/ResetPassword.vue b/src/views/register/components/ResetPassword.vue
index ffcab2b..135a0b1 100644
--- a/src/views/register/components/ResetPassword.vue
+++ b/src/views/register/components/ResetPassword.vue
@@ -15,7 +15,7 @@
             <div class="phoneNum">
               <el-input
                 placeholder="璇疯緭鍏ユ敞鍐屾墜鏈哄彿"
-                v-model="formData.phoneNum"
+                v-model.trim="formData.phoneNum"
                 class="input-with-select"
               >
               </el-input>
@@ -43,22 +43,22 @@
           </el-form-item>
 
           <el-form-item prop="password">
-            <el-input
+            <PwInput
               show-password
               v-model="formData.password"
               placeholder="璇疯缃�6-14浣嶇櫥褰曞瘑鐮�"
             >
-            </el-input>
+            </PwInput>
             <div class="iconfont">&#xe608;</div>
           </el-form-item>
 
           <el-form-item prop="repassword">
-            <el-input
+            <PwInput
               show-password
               v-model="formData.repassword"
               placeholder="纭瀵嗙爜"
             >
-            </el-input>
+            </PwInput>
             <div class="iconfont">&#xe608;</div>
           </el-form-item>
 
diff --git a/src/views/register/components/SelectType.vue b/src/views/register/components/SelectType.vue
index ad6bf1f..5c8aeb6 100644
--- a/src/views/register/components/SelectType.vue
+++ b/src/views/register/components/SelectType.vue
@@ -12,7 +12,7 @@
           v-model="info.type"
           style="float: left; margin-top: 15px"
         >
-          <el-radio :label="1">涓汉寮�鍙戣��</el-radio>
+          <el-radio :label="1">涓汉</el-radio>
           <el-radio :label="2">鍏徃</el-radio>
         </el-radio-group>
       </el-form-item>
@@ -29,7 +29,7 @@
       <el-form-item label="鑱旂郴浜�" prop="contact" v-show="info.type == '2'">
         <el-input v-model="info.contact" placeholder="璇疯緭鍏�"></el-input>
       </el-form-item>
-      <el-form-item label="閭">
+      <el-form-item label="閭" prop="email">
         <el-input
           v-model="info.email"
           clearable
diff --git a/src/views/search/Searching.vue b/src/views/search/Searching.vue
index a1fc267..f9bd1de 100644
--- a/src/views/search/Searching.vue
+++ b/src/views/search/Searching.vue
@@ -89,9 +89,9 @@
               ></el-option>
             </el-select>
           </p>
-          <p class="p-level" style="width: 18%">
+          <p class="p-level" style="width: 18%; margin-right: 20px">
             <b>浜嬩欢绛夌骇锛�</b>
-            <!-- <el-select
+            <el-select
               v-model="alarmValues"
               multiple
               @change="searchingBtn"
@@ -107,9 +107,9 @@
                 :label="item.name"
                 :value="item.value"
               ></el-option>
-            </el-select> -->
+            </el-select>
           </p>
-          <p class="p-date" style="width: 19%; vertical-align: top">
+          <p class="p-date" style="width: 22%; vertical-align: top">
             <el-date-picker
               size="mini"
               v-model="searchTime"
@@ -808,7 +808,7 @@
 };
 </script>
 
-<style lang="scss">
+<style lang="scss" >
 .searching-box {
   width: 100%;
   height: 100% !important;
@@ -984,9 +984,6 @@
     right: 0px;
     bottom: 15px;
   }
-}
-.search {
-  background-color: #eee;
 }
 </style>
 <style lang="scss" scoped>
diff --git a/src/views/search/components/LeftNav.vue b/src/views/search/components/LeftNav.vue
index 3fd4403..9907514 100644
--- a/src/views/search/components/LeftNav.vue
+++ b/src/views/search/components/LeftNav.vue
@@ -340,7 +340,7 @@
 
 import bus from "@/plugin/bus";
 // import TreeMenu from "@/components/treeMenu/index";
-import TreeMenu from "./giantTree/index";
+import TreeMenu from "@/components/giantTree/index";
 import LocalVedioList from "./LocalVedioList";
 import FileUpload from "./FileUpload/index";
 import XLSX from "xlsx";
diff --git a/src/views/search/components/wasmPlayer/index.vue b/src/views/search/components/wasmPlayer/index.vue
index 1124b3f..2a7fec6 100644
--- a/src/views/search/components/wasmPlayer/index.vue
+++ b/src/views/search/components/wasmPlayer/index.vue
@@ -74,6 +74,7 @@
         <i
           class="el-icon-download jsmodern-video-download"
           @click="downLoad"
+          style="margin: 9px 0 0 15px"
         ></i>
       </section>
 
@@ -812,6 +813,7 @@
 }
 
 .video-error {
+  text-align: center;
   position: absolute;
   top: 35%;
   left: 30%;
diff --git a/vue.config.js b/vue.config.js
index 703743d..719e360 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -15,6 +15,7 @@
       "/api": {
         // target: "http://192.168.20.10:7004",
         target: "http://192.168.20.174:7070",
+        //  target: "http://192.168.20.117:7080",
         // secure: false,
         changeOrigin: true,
       },

--
Gitblit v1.8.0