From 21b2c44753bf6e0587bd795f2557da63399d6fdf Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期六, 12 三月 2022 19:29:17 +0800
Subject: [PATCH] 完善底库功能

---
 src/api/baseLibrary.ts                      |   86 +
 src/pages/library/components/carList.vue    | 1039 ++++++++--------------
 src/pages/library/index/App.vue             |  122 +-
 src/pages/library/components/baseList.vue   |  156 +--
 src/pages/library/components/personList.vue | 1107 ++++++++----------------
 src/Pool/BaseManageData.ts                  |  135 +-
 6 files changed, 998 insertions(+), 1,647 deletions(-)

diff --git a/src/Pool/BaseManageData.ts b/src/Pool/BaseManageData.ts
index 0a99a6a..b58422d 100644
--- a/src/Pool/BaseManageData.ts
+++ b/src/Pool/BaseManageData.ts
@@ -7,67 +7,64 @@
   getTagList,
   copy,
   move
-} from "@/api/baseLibrary";
+} from "@/api/baseLibrary"
 export default class BaseManageData {
-  public syncTables: Array<object> = [];
-  public localTables: Array<object> = [];
-  public personList: Array<object>;
-  public personId: string = "";
-  public blackList: Array<object> = [];
-  public selectBlacks: Array<object> = [];
-  public whiteList: Array<object> = [];
-  public selectWhites: Array<object> = [];
-  public page: number;
-  public size: number;
-  public contentValue: string = "";
-  public tableId: number;
-  public orderName: string = "createTime";
-  public orderType: string = "desc";
-  public faceUrl: string = "";
-  public threshold: number = 60;
-  public total: number;
-  public picUrl: string = "";
-
+  public syncTables: Array<object> = []
+  public localTables: Array<object> = []
+  public personList: Array<object>
+  public personId: string = ""
+  public blackList: Array<object> = []
+  public selectBlacks: Array<object> = []
+  public whiteList: Array<object> = []
+  public selectWhites: Array<object> = []
+  public page: number
+  public size: number
+  public contentValue: string = ""
+  public tableId: number
+  public orderName: string = "createTime"
+  public orderType: string = "desc"
+  public faceUrl: string = ""
+  public threshold: number = 60
+  public total: number
+  public picUrl: string = ""
 
   constructor() {
-    this.personList = [];
-    this.page = 1;
-    this.size = 10;
-    this.total = 0;
+    this.personList = []
+    this.page = 1
+    this.size = 10
+    this.total = 0
   }
 
   cleanData() {
-    this.personList = [];
-    this.page = 1;
-    this.size = 10;
-    this.total = 0;
+    this.personList = []
+    this.page = 1
+    this.size = 10
+    this.total = 0
   }
 
   async querySyncTables() {
-    const rsp: any = await getSyncTables({
-
-    });
+    const rsp: any = await getSyncTables({})
     if (rsp && rsp.success) {
       this.syncTables.splice(0, this.syncTables.length)
-      rsp.data.datalist.forEach(element => {
-        this.syncTables.push((element as any))
-      });
+      rsp.data.datalist.forEach((element) => {
+        this.syncTables.push(element as any)
+      })
     }
   }
 
   async queryLocalTables() {
-    const rsp: any = await getLocalTables({
-
-    });
+    const rsp: any = await getLocalTables({})
     if (rsp && rsp.success) {
       this.localTables.splice(0, this.localTables.length)
-      rsp.data.datalist.forEach(element => {
-        this.localTables.push((element as any))
-      });
+      rsp.data.datalist.forEach((element) => {
+        this.localTables.push(element as any)
+      })
     }
   }
 
   async queryPersonList() {
+    this.cleanData()
+
     const rsp: any = await getPersonList({
       tableId: this.tableId,
       page: this.page,
@@ -75,32 +72,30 @@
       contentValue: this.contentValue,
       orderType: this.orderType,
       orderName: this.orderName
-    });
+    })
     if (rsp && rsp.success) {
       this.personList.splice(0, this.personList.length)
-      rsp.data.datalist.forEach(element => {
+      rsp.data.datalist.forEach((element) => {
         let carUrls = element.carPicUrls.split(";")
         element.carUrls = []
-        carUrls.forEach(picUrl => {
+        carUrls.forEach((picUrl) => {
           element.carUrls.push({ url: "/httpImage/" + picUrl })
-        });
+        })
         element.faceUrl = []
         element.faceUrl.push({ url: "/httpImage/" + element.personPicUrl })
-        this.personList.push((element as any))
-      });
+        this.personList.push(element as any)
+      })
       this.total = rsp.data.total
     }
   }
 
   async queryPersonListByPhoto() {
-    const rsp: any = await getPersonListByPhoto({
-
-    });
+    const rsp: any = await getPersonListByPhoto({})
     if (rsp && rsp.success) {
       this.personList.splice(0, this.personList.length)
-      rsp.data.datalist.forEach(element => {
-        this.personList.push((element as any))
-      });
+      rsp.data.datalist.forEach((element) => {
+        this.personList.push(element as any)
+      })
     }
   }
   async searchPhotoFromBase() {
@@ -115,40 +110,44 @@
       picUrl: this.picUrl
     })
     console.log("搴曞簱浠ュ浘鎼滃浘杩斿洖锛�", rsp)
-    this.personList = [];
+    this.personList = []
     if (rsp && rsp.success) {
-      rsp.data.totalList.forEach(element => {
-        this.personList.push((element as any))
-      });
+      rsp.data.totalList.forEach((element) => {
+        this.personList.push(element as any)
+      })
       console.log("鍒楄〃锛�", this.personList)
       this.total = rsp.data.total
     }
   }
   async queryTagList() {
-    const rsp: any = await getTagList({});
+    const rsp: any = await getTagList({})
     // console.log("tag杩斿洖鍊�: ",rsp)
     if (rsp && rsp.success) {
       // 鏀剧疆榛戠櫧鍚嶅崟 0涓虹櫧鍚嶅崟
       this.blackList.length = 0
       this.whiteList.length = 0
-      rsp.data.forEach(i => {
-        if (i.status === 0 && i.bwType === "0") { //鐧藉悕鍗�
-          if (i.analyServerId === "") { //鍚屾搴�
-            i.title = i.title + '(鍚屾搴�)'
+      rsp.data.forEach((i) => {
+        if (i.status === 0 && i.bwType === "0") {
+          //鐧藉悕鍗�
+          if (i.analyServerId === "") {
+            //鍚屾搴�
+            i.title = i.title + "(鍚屾搴�)"
             this.whiteList.push(i)
           } else {
             this.whiteList.push(i)
           }
         }
-        if (i.status === 0 && i.bwType === "1") { //榛戝悕鍗�
-          if (i.analyServerId === "") { //鍚屾搴�
-            i.title = i.title + '(鍚屾搴�)'
+        if (i.status === 0 && i.bwType === "1") {
+          //榛戝悕鍗�
+          if (i.analyServerId === "") {
+            //鍚屾搴�
+            i.title = i.title + "(鍚屾搴�)"
             this.blackList.push(i)
           } else {
             this.blackList.push(i)
           }
         }
-      });
+      })
     }
   }
   async copyTo() {
@@ -167,7 +166,5 @@
     const rsp: any = await move(param)
     return rsp
   }
-  mounted() {
-
-  }
-}
\ No newline at end of file
+  mounted() {}
+}
diff --git a/src/api/baseLibrary.ts b/src/api/baseLibrary.ts
index e12fbf9..4faf772 100644
--- a/src/api/baseLibrary.ts
+++ b/src/api/baseLibrary.ts
@@ -1,4 +1,4 @@
-import request from "@/scripts/httpRequest";
+import request from "@/scripts/httpRequest"
 
 /**
  * @description 鍚屾搴撳垪琛�
@@ -9,8 +9,8 @@
     url: "/data/api-v/dbtable/queryDbTables",
     method: "post",
     data: { isSync: 1 }
-  });
-};
+  })
+}
 
 /**
  * @description 鏈湴搴撳垪琛�
@@ -21,8 +21,8 @@
     url: "/data/api-v/dbtable/queryDbTables",
     method: "post",
     data: { isSync: 2 }
-  });
-};
+  })
+}
 
 /**
  * @description 娣诲姞搴曞簱
@@ -39,8 +39,8 @@
     url: "/data/api-v/dbtable/addDbTableInfo",
     method: "put",
     data: query
-  });
-};
+  })
+}
 
 /**
  * @description 淇敼搴曞簱
@@ -57,8 +57,8 @@
     url: "/data/api-v/dbtable/updateDbTables",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 /**
  * 鏇存敼搴曞簱鐘舵��
@@ -70,8 +70,8 @@
     url: "/data/api-v/dbtable/updateDbTableStatus",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 /**
  * @description 浜哄憳鍒楄〃
@@ -87,8 +87,8 @@
     url: "/data/api-v/dbperson/queryDbPersonsByTbId",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 /**
  * @description 浠ュ浘鎼滃浘浜哄憳鍒楄〃
@@ -105,8 +105,8 @@
     url: "/data/api-v/dbperson/queryDbPersonsByCampare/",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 /**
  * @description 鎵归噺鍒犻櫎
@@ -117,8 +117,8 @@
     url: "/data/api-v/dbperson/deleteMoreDbPerson",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 /**
  * @description 淇敼搴曞簱浜哄憳
@@ -126,7 +126,7 @@
  * @param { string } age          骞撮緞
  * @param { string } idcard       韬唤璇佸彿
  * @param { string } enabled      0涓虹敓鏁� 1涓哄け鏁�
- * @param { string } monitorLevel 绛夌骇 
+ * @param { string } monitorLevel 绛夌骇
  * @param { string } tableId      搴搃d
  * @param { string } phoneNum     鎵嬫満鍙风爜
  * @param { string } personName   浜哄憳濮撳悕
@@ -137,8 +137,8 @@
     url: "/data/api-v/dbperson/updateDbPerson",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 /**
  * @description 搴曞簱鐨勪互鍥炬悳鍥�
@@ -153,8 +153,8 @@
     url: "/data/api-v/dbperson/queryDbPersonsByCompare",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 // 搴曞簱椤甸潰鏍囩鏌ヨ
 export const getTagList = (query: any) => {
@@ -162,8 +162,8 @@
     url: "/data/api-v/es/tagList",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 // 澶嶅埗
 export const copy = (query: any) => {
@@ -171,8 +171,8 @@
     url: "/data/api-v/dbperson/copy",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 // 绉诲姩
 export const move = (query: any) => {
@@ -180,8 +180,8 @@
     url: "/data/api-v/dbperson/move",
     method: "post",
     data: query
-  });
-};
+  })
+}
 
 // 鎵归噺涓婁紶杞︾墝
 export const plateBatch = (query: any) => {
@@ -198,7 +198,7 @@
  * @param { string } age          骞撮緞
  * @param { string } idcard       韬唤璇佸彿
  * @param { string } enabled      0涓虹敓鏁� 1涓哄け鏁�
- * @param { string } monitorLevel 绛夌骇 
+ * @param { string } monitorLevel 绛夌骇
  * @param { string } tableId      搴搃d
  * @param { string } phoneNum     鎵嬫満鍙风爜
  * @param { string } personName   浜哄憳濮撳悕
@@ -213,8 +213,8 @@
     url: "/data/api-v/dbperson/addDbPerson",
     method: "put",
     data: query
-  });
-};
+  })
+}
 
 /**
  * @description 淇敼杞﹁締淇℃伅
@@ -222,7 +222,7 @@
  * @param { string } age          骞撮緞
  * @param { string } idcard       韬唤璇佸彿
  * @param { string } enabled      0涓虹敓鏁� 1涓哄け鏁�
- * @param { string } monitorLevel 绛夌骇 
+ * @param { string } monitorLevel 绛夌骇
  * @param { string } tableId      搴搃d
  * @param { string } phoneNum     鎵嬫満鍙风爜
  * @param { string } personName   浜哄憳濮撳悕
@@ -237,5 +237,23 @@
     url: "/data/api-v/dbperson/updateDbPerson",
     method: "post",
     data: query
-  });
-};
\ No newline at end of file
+  })
+}
+
+// 鍒犻櫎搴曞簱
+export const deleteDBtablesById = (query: any) => {
+  return request({
+    url: "/data/api-v/dbtable/deleteDBtablesById",
+    method: "get",
+    params: query
+  })
+}
+
+// 鍒犻櫎鍗曚釜浜哄憳
+export const deleteDbPersonById = (query: any) => {
+  return request({
+    url: "/data/api-v/dbtable/deleteDbPersonById",
+    method: "get",
+    params: query
+  })
+}
diff --git a/src/pages/library/components/baseList.vue b/src/pages/library/components/baseList.vue
index 3062d4d..ef99051 100644
--- a/src/pages/library/components/baseList.vue
+++ b/src/pages/library/components/baseList.vue
@@ -1,17 +1,9 @@
 <template>
-  <div
-    :style="listWidth ? `width:${listWidth};` : ''"
-    class="out-div el-menu-vertical-demo"
-  >
+  <div :style="listWidth ? `width:${listWidth};` : ''" class="out-div el-menu-vertical-demo">
     <el-collapse v-model="activeNames">
       <el-collapse-item name="1" class="el-collapse-item__wrap">
         <template slot="title">
-          <img
-            v-if="title === '鍚屾搴�'"
-            src="/images/library/鍚屾搴�2.png"
-            alt=""
-            srcset=""
-          />
+          <img v-if="title === '鍚屾搴�'" src="/images/library/鍚屾搴�2.png" alt="" srcset="" />
           <img v-else src="/images/library/鏈湴搴�2.png" alt="" srcset="" />
           <span class="m5">{{ title }}</span>
           <el-tooltip content="娣诲姞鍚屾搴�" placement="top">
@@ -37,26 +29,11 @@
             @click.native="clickCategory(index, 'sync', item)"
             :class="{ activeRow: categoryIndex == 'sync' + index }"
           >
-            <el-col
-              :span="12"
-              :class="item.bwType === '1' ? 'c-red' : 'c-green'"
-            >
-              <p
-                style="text-align: left; margin-left: 5px"
-                class="name-ellipsis"
-                :title="item.tableName"
-              >
-                <span
-                  class="iconfont iconrenyuanku-09"
-                  v-if="item.tableType == 'person'"
-                ></span>
-                <span
-                  class="iconfont iconcheliangku-09"
-                  v-if="item.tableType == 'car'"
-                ></span>
-                <span style="font-size: 14px; font-weight: bold">
-                  {{ item.tableName }}</span
-                >
+            <el-col :span="12" :class="item.bwType === '1' ? 'c-red' : 'c-green'">
+              <p style="text-align: left; margin-left: 5px" class="name-ellipsis" :title="item.tableName">
+                <span class="iconfont iconrenyuanku-09" v-if="item.tableType == 'person'"></span>
+                <span class="iconfont iconcheliangku-09" v-if="item.tableType == 'car'"></span>
+                <span style="font-size: 14px; font-weight: bold"> {{ item.tableName }}</span>
               </p>
             </el-col>
             <el-col :span="10" :offset="1">
@@ -110,23 +87,10 @@
             @click.native="clickCategory(index, 'local', item)"
             :class="{ activeRow: categoryIndex == 'local' + index }"
           >
-            <el-col
-              :span="12"
-              :class="item.bwType === '1' ? 'c-red' : 'c-green'"
-            >
-              <p
-                style="text-align: left; margin-left: 5px"
-                class="name-ellipsis"
-                :title="item.tableName"
-              >
-                <span
-                  class="iconfont iconrenyuanku-09"
-                  v-if="item.tableType == 'person'"
-                ></span>
-                <span
-                  class="iconfont iconcheliangku-09"
-                  v-if="item.tableType == 'car'"
-                ></span>
+            <el-col :span="12" :class="item.bwType === '1' ? 'c-red' : 'c-green'">
+              <p style="text-align: left; margin-left: 5px" class="name-ellipsis" :title="item.tableName">
+                <span class="iconfont iconrenyuanku-09" v-if="item.tableType == 'person'"></span>
+                <span class="iconfont iconcheliangku-09" v-if="item.tableType == 'car'"></span>
                 <span> {{ item.tableName }}</span>
               </p>
             </el-col>
@@ -159,7 +123,7 @@
   </div>
 </template>
 <script>
-import { updateDbTableStatus } from "@/api/baseLibrary";
+import { updateDbTableStatus } from "@/api/baseLibrary"
 export default {
   name: "baseList",
   data() {
@@ -169,121 +133,113 @@
       categoryIndex: "",
       syncTableList: [],
       localTableList: [],
-      clickBase: {}, // 褰撳墠鐐瑰嚮鐨勫簳搴撳璞�
-    };
+      clickBase: {} // 褰撳墠鐐瑰嚮鐨勫簳搴撳璞�
+    }
   },
   computed: {
     isAdmin() {
-      if (
-        sessionStorage.getItem("userInfo") &&
-        sessionStorage.getItem("userInfo") !== ""
-      ) {
-        let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username;
-        return loginName === "superadmin" || loginName === "basic";
+      if (sessionStorage.getItem("userInfo") && sessionStorage.getItem("userInfo") !== "") {
+        let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username
+        return loginName === "superadmin" || loginName === "basic"
       }
-      return false;
-    },
+      return false
+    }
   },
   mounted() {
-    this.init();
+    this.init()
   },
   methods: {
     isShow(authority) {
-      return (
-        this.isAdmin || this.buttonAuthority.indexOf("," + authority + ",") > -1
-      );
+      return this.isAdmin || this.buttonAuthority.indexOf("," + authority + ",") > -1
     },
     async init(typ) {
-      await this.BaseManageData.querySyncTables();
-      this.syncTableList = this.BaseManageData.syncTables;
+      await this.BaseManageData.querySyncTables()
+      this.syncTableList = this.BaseManageData.syncTables
       if (typ) {
-        this.clickLast(typ);
+        this.clickLast(typ)
       } else {
-        this.defaultShow();
+        this.defaultShow()
       }
-      await this.BaseManageData.queryLocalTables();
-      this.localTableList = this.BaseManageData.localTables;
+      await this.BaseManageData.queryLocalTables()
+      this.localTableList = this.BaseManageData.localTables
       if (typ) {
-        this.clickLast(typ);
+        this.clickLast(typ)
       } else {
-        this.defaultShow();
+        this.defaultShow()
       }
     },
     add(type) {
-      this.$emit("changeShow", null, type);
+      this.$emit("changeShow", null, type)
     },
     clickLast(type) {
       // this.$nextTick(() => {
 
       // });
-      this.clickCategory(
-        this.syncTableList.length - 1,
-        type,
-        this.syncTableList[this.syncTableList.length - 1]
-      );
+      this.clickCategory(this.syncTableList.length - 1, type, this.syncTableList[this.syncTableList.length - 1])
     },
     clickCategory(index, type, item) {
-      this.categoryIndex = type + index;
+      this.categoryIndex = type + index
       // 璋冪敤鍒囨崲鍙充晶闈㈡澘鐨勫嚱鏁板苟涓斿垏鎹㈢埗缁勪欢涓璱sSelected鐨勫�艰鍙︿竴涓粍浠舵竻闄よ閫変腑鐘舵��
-      this.clickBase = item;
-      this.$emit("getList", item, type);
+      this.clickBase = item
+      this.$emit("getList", item, type)
+      console.log("clickCategory", item, type)
     },
     // 榛樿鏄剧ず绗竴涓簱鐨勬暟鎹�
     defaultShow() {
       if (this.syncTableList && this.syncTableList.length) {
-        this.clickCategory(0, "sync", this.syncTableList[0]);
+        this.clickCategory(0, "sync", this.syncTableList[0])
       } else {
         if (this.localTableList && this.localTableList.length) {
-          this.clickCategory(0, "local", this.syncTableList[0]);
+          this.clickCategory(0, "local", this.syncTableList[0])
         }
       }
     },
     // 娣诲姞鏃堕棿姣旇緝鍑芥暟
     dateParse(dateString) {
-      var SEPARATOR_BAR = "-";
-      var SEPARATOR_SLASH = "/";
-      var SEPARATOR_DOT = ".";
-      var dateArray;
+      var SEPARATOR_BAR = "-"
+      var SEPARATOR_SLASH = "/"
+      var SEPARATOR_DOT = "."
+      var dateArray
       if (dateString.indexOf(SEPARATOR_BAR) > -1) {
-        dateArray = dateString.split(SEPARATOR_BAR);
+        dateArray = dateString.split(SEPARATOR_BAR)
       } else if (dateString.indexOf(SEPARATOR_SLASH) > -1) {
-        dateArray = dateString.split(SEPARATOR_SLASH);
+        dateArray = dateString.split(SEPARATOR_SLASH)
       } else {
-        dateArray = dateString.split(SEPARATOR_DOT);
+        dateArray = dateString.split(SEPARATOR_DOT)
       }
-      return new Date(dateArray[0], dateArray[1] - 1, dateArray[2]);
+      return new Date(dateArray[0], dateArray[1] - 1, dateArray[2])
     },
     isEmpty(str) {
       if (!str || str === undefined || str === null) {
-        return true;
+        return true
       } else {
-        return false;
+        return false
       }
-    },
+    }
   },
   props: {
     listWidth: {
       default: "224px",
-      type: String,
+      type: String
     },
     title: {
       default: "鍚屾搴�",
-      type: String,
+      type: String
     },
     titleB: {
       default: "鏈湴搴�",
-      type: String,
+      type: String
     },
     isSelected: {
       default: false,
-      type: Boolean,
+      type: Boolean
     },
     type: {
       default: "",
-      type: String,
-    },
-  },
-};
+      type: String
+    }
+  }
+}
 </script>
 <style lang="scss">
 .iconStyle1 {
diff --git a/src/pages/library/components/carList.vue b/src/pages/library/components/carList.vue
index ff01f45..41208c7 100644
--- a/src/pages/library/components/carList.vue
+++ b/src/pages/library/components/carList.vue
@@ -4,18 +4,12 @@
       <div class="base-tip">
         <div class="left-tips">
           <span class="ku-name">{{ this.baseObject.tableName }}</span>
-          <span
-            class="list"
-            :class="
-              this.baseObject.bwType === '1' ? 'black-list' : 'white-list'
-            "
-            >{{ this.baseObject.bwType === "1" ? "榛戝悕鍗�" : "鐧藉悕鍗�" }}</span
-          >
+          <span class="list" :class="this.baseObject.bwType === '1' ? 'black-list' : 'white-list'">{{
+            this.baseObject.bwType === "1" ? "榛戝悕鍗�" : "鐧藉悕鍗�"
+          }}</span>
           <span class="ok-time"
             >鏈夋晥鏃堕棿锛歿{ this.baseObject.startTime }} --
-            {{
-              this.baseObject.endTime ? this.baseObject.endTime : "姘镐箙鏈夋晥"
-            }}</span
+            {{ this.baseObject.endTime ? this.baseObject.endTime : "姘镐箙鏈夋晥" }}</span
           >
         </div>
 
@@ -43,11 +37,7 @@
           </el-tooltip>
 
           <el-tooltip content="缂栬緫2" placement="top" popper-class="atooltip">
-            <span
-              class="iconfont iconfont-wrap iconbianjiku-09"
-              @click.stop="edit"
-              v-if="isShow('library:set')"
-            ></span>
+            <span class="iconfont iconfont-wrap iconbianjiku-09" @click.stop="edit" v-if="isShow('library:set')"></span>
           </el-tooltip>
         </div>
       </div>
@@ -69,15 +59,9 @@
             v-model="BaseManageData.contentValue"
             @keyup.enter.native="handleSearch"
           ></el-input>
-          <el-button size="small" type="primary" @click="handleSearch"
-            >鎼滅储</el-button
-          >
+          <el-button size="small" type="primary" @click="handleSearch">鎼滅储</el-button>
 
-          <el-tooltip
-            content="鎵归噺鍒犻櫎"
-            placement="top"
-            popper-class="atooltip"
-          >
+          <el-tooltip content="鎵归噺鍒犻櫎" placement="top" popper-class="atooltip">
             <fTemplate authority="library:set">
               <span
                 class="iconfont iconfont-wrap iconpiliangshanchu-09"
@@ -87,26 +71,12 @@
             </fTemplate>
           </el-tooltip>
 
-          <el-tooltip
-            content="娣诲姞杞﹁締"
-            placement="top"
-            popper-class="atooltip"
-          >
-            <span
-              class="iconfont iconfont-wrap icontianjiacheliang-09"
-              @click="addCar"
-            ></span>
+          <el-tooltip content="娣诲姞杞﹁締" placement="top" popper-class="atooltip">
+            <span class="iconfont iconfont-wrap icontianjiacheliang-09" @click="addCar"></span>
           </el-tooltip>
 
-          <el-tooltip
-            content="鎵归噺涓婁紶杞︾墝"
-            placement="top"
-            popper-class="atooltip"
-          >
-            <span
-              class="iconfont iconfont-wrap iconshangchuanchepai-09"
-              @click="addBatch"
-            ></span>
+          <el-tooltip content="鎵归噺涓婁紶杞︾墝" placement="top" popper-class="atooltip">
+            <span class="iconfont iconfont-wrap iconshangchuanchepai-09" @click="addBatch"></span>
           </el-tooltip>
         </div>
       </div>
@@ -126,7 +96,7 @@
           background: '#fff',
           color: '#222222',
           padding: '2px 1px',
-          borderBottom: 'none',
+          borderBottom: 'none'
         }"
       >
         <el-table-column type="selection" width="30"></el-table-column>
@@ -146,15 +116,8 @@
               indicator-position="none"
               :arrow="scope.row.carUrls.length > 1 ? 'always' : 'never'"
             >
-              <el-carousel-item
-                v-for="(item, index) in scope.row.carUrls"
-                :key="index"
-              >
-                <img
-                  style="width: 100px; height: 100px; object-fit: contain"
-                  :src="item.url"
-                  alt
-                />
+              <el-carousel-item v-for="(item, index) in scope.row.carUrls" :key="index">
+                <img style="width: 100px; height: 100px; object-fit: contain" :src="item.url" alt />
               </el-carousel-item>
             </el-carousel>
           </template>
@@ -170,13 +133,7 @@
             ></el-switch>
           </template>
         </el-table-column>
-        <el-table-column
-          prop="carNo"
-          label="杞︾墝鍙�"
-          sortable
-          align="center"
-          width="120"
-        ></el-table-column>
+        <el-table-column prop="carNo" label="杞︾墝鍙�" sortable align="center" width="120"></el-table-column>
         <el-table-column
           prop="carType"
           label="杞﹁締绫诲瀷"
@@ -185,21 +142,8 @@
           sortable
           align="center"
         ></el-table-column>
-        <el-table-column
-          prop="carBrand"
-          label="杞﹁締鍝佺墝"
-          min-width="100"
-          sortable
-          align="center"
-        ></el-table-column>
-        <el-table-column
-          prop="carColor"
-          label="杞﹁韩棰滆壊"
-          width="100"
-          show-overflow-tooltip
-          sortable
-          align="center"
-        >
+        <el-table-column prop="carBrand" label="杞﹁締鍝佺墝" min-width="100" sortable align="center"></el-table-column>
+        <el-table-column prop="carColor" label="杞﹁韩棰滆壊" width="100" show-overflow-tooltip sortable align="center">
           <template slot-scope="scope">{{
             getDataName(VideoPhotoData.dictionary.nColor, scope.row.carColor)
           }}</template>
@@ -212,12 +156,7 @@
           sortable
           align="center"
         ></el-table-column>
-        <el-table-column
-          prop="sex"
-          label="杞︿富鎬у埆"
-          align="center"
-          width="80"
-        ></el-table-column>
+        <el-table-column prop="sex" label="杞︿富鎬у埆" align="center" width="80"></el-table-column>
 
         <el-table-column
           prop="createTime"
@@ -231,11 +170,7 @@
         <el-table-column label="鎿嶄綔" min-width="200" align="center">
           <template slot-scope="scope">
             <fTemplate authority="library:set">
-              <el-tooltip
-                content="缂栬緫"
-                placement="top"
-                popper-class="atooltip"
-              >
+              <el-tooltip content="缂栬緫" placement="top" popper-class="atooltip">
                 <span
                   class="iconfont iconbianjixinxi-09"
                   style="    font-size: 24px;cursor: pointer"
@@ -243,68 +178,36 @@
                 ></span>
               </el-tooltip>
             </fTemplate>
-            <el-popover
-              placement="top"
-              trigger="click"
-              popper-class="popper-caozuo1"
-            >
-              <el-tooltip
-              content="鏌ユ壘姝よ溅"
-              placement="top"
-              popper-class="atooltip"
-            >
+            <el-popover placement="top" trigger="click" popper-class="popper-caozuo1">
+              <el-tooltip content="鏌ユ壘姝よ溅" placement="top" popper-class="atooltip">
+                <span class="iconfont iconchazhaociren-09" @click="tosearch(scope.row)"></span>
+              </el-tooltip>
+              <fTemplate authority="library:set">
+                <el-tooltip content="澶嶅埗" placement="top" popper-class="atooltip">
+                  <span class="iconfont iconfuzhi-09" title="澶嶅埗" @click="copyClick(scope.row)"></span>
+                </el-tooltip>
+              </fTemplate>
+              <fTemplate authority="library:set">
+                <el-tooltip content="绉诲姩" placement="top" popper-class="atooltip">
+                  <span class="iconfont iconyidong-09" title="绉诲姩" @click="moveClick(scope.row)"></span>
+                </el-tooltip>
+              </fTemplate>
+              <fTemplate authority="library:set">
+                <el-tooltip content="鍒犻櫎" placement="top" popper-class="atooltip">
+                  <span
+                    class="iconfont iconshanchu-09"
+                    style="color: #e74c3c"
+                    @click="askDelete('single', scope.row.id)"
+                    title="鍒犻櫎"
+                  ></span>
+                </el-tooltip>
+              </fTemplate>
               <span
-                class="iconfont iconchazhaociren-09"
-                @click="tosearch(scope.row)"
-              ></span>
-            </el-tooltip>
-            <fTemplate authority="library:set">
-              <el-tooltip
-                content="澶嶅埗"
-                placement="top"
-                popper-class="atooltip"
-              >
-                <span
-                  class="iconfont iconfuzhi-09"
-                  title="澶嶅埗"
-                  @click="copyClick(scope.row)"
-                ></span>
-              </el-tooltip>
-            </fTemplate>
-            <fTemplate authority="library:set">
-              <el-tooltip
-                content="绉诲姩"
-                placement="top"
-                popper-class="atooltip"
-              >
-                <span
-                  class="iconfont iconyidong-09"
-                  title="绉诲姩"
-                  @click="moveClick(scope.row)"
-                ></span>
-              </el-tooltip>
-            </fTemplate>
-            <fTemplate authority="library:set">
-              <el-tooltip
-                content="鍒犻櫎"
-                placement="top"
-                popper-class="atooltip"
-              >
-                <span
-                  class="iconfont iconshanchu-09"
-                  style="color: #e74c3c"
-                  @click="deleteThis(scope.row.id)"
-                  title="鍒犻櫎"
-                ></span>
-              </el-tooltip>
-            </fTemplate>
-             <span
                 slot="reference"
                 class="iconfont icongengduocaozuo-09"
                 style="font-size: 24px; cursor: pointer"
               ></span>
             </el-popover>
-            
           </template>
         </el-table-column>
       </el-table>
@@ -316,48 +219,26 @@
         :total="BaseManageData.total"
       ></el-pagination>
     </div>
-    <el-dialog
-      title="鎻愮ず"
-      :visible.sync="dialogVisible"
-      :append-to-body="true"
-      :close="getCarList"
-      width="30%"
-    >
+    <el-dialog title="鎻愮ず" :visible.sync="dialogVisible" :append-to-body="true" :close="getCarList" width="30%">
       <div>
         <div class="tl">
           <span>涓婁紶鎴愬姛鐨勬暟閲忥細{{ uploadResult.successList.length }}</span>
         </div>
         <div class="flex-box mt10">
           <span>涓婁紶澶辫触鐨勬暟閲忥細{{ uploadResult.failList.length }}</span>
-          <div
-            class="ml20"
-            v-for="(i, index) in uploadResult.failList"
-            :key="index"
-          >
+          <div class="ml20" v-for="(i, index) in uploadResult.failList" :key="index">
             {{ i }}
           </div>
         </div>
         <div class="flex-box mt10">
-          <span
-            >鍖呭惈澶氬紶浜鸿劯鐨勫浘鐗囨暟閲忥細{{
-              uploadResult.multiFaceList.length
-            }}</span
-          >
-          <div
-            class="ml20"
-            v-for="(i, index) in uploadResult.multiFaceList"
-            :key="index"
-          >
+          <span>鍖呭惈澶氬紶浜鸿劯鐨勫浘鐗囨暟閲忥細{{ uploadResult.multiFaceList.length }}</span>
+          <div class="ml20" v-for="(i, index) in uploadResult.multiFaceList" :key="index">
             {{ i }}
           </div>
         </div>
         <div class="flex-box mt10">
           <span>涓嶅惈浜鸿劯鐨勫浘鐗囨暟閲忥細{{ uploadResult.noFaceList.length }}</span>
-          <div
-            class="ml20"
-            v-for="(i, index) in uploadResult.noFaceList"
-            :key="index"
-          >
+          <div class="ml20" v-for="(i, index) in uploadResult.noFaceList" :key="index">
             {{ i }}
           </div>
         </div>
@@ -379,21 +260,11 @@
             <p>榛戝悕鍗� ></p>
           </div>
           <div class="baseList">
-            <el-checkbox-group
-              v-model="BaseManageData.selectBlacks"
-              @change="blackAngWhite"
-            >
-              <div
-                class="base"
-                v-for="(item, index) in BaseManageData.blackList"
-                :key="index"
-              >
-                <el-checkbox
-                  :label="item.value"
-                  :title="item.title"
-                  :disabled="item.disabled"
-                  >{{ item.title }}</el-checkbox
-                >
+            <el-checkbox-group v-model="BaseManageData.selectBlacks" @change="blackAngWhite">
+              <div class="base" v-for="(item, index) in BaseManageData.blackList" :key="index">
+                <el-checkbox :label="item.value" :title="item.title" :disabled="item.disabled">{{
+                  item.title
+                }}</el-checkbox>
               </div>
             </el-checkbox-group>
           </div>
@@ -403,21 +274,11 @@
             <p>鐧藉悕鍗� ></p>
           </div>
           <div class="baseList">
-            <el-checkbox-group
-              v-model="BaseManageData.selectWhites"
-              @change="blackAngWhite"
-            >
-              <div
-                class="base"
-                v-for="(item, index) in BaseManageData.whiteList"
-                :key="index"
-              >
-                <el-checkbox
-                  :label="item.value"
-                  :title="item.title"
-                  :disabled="item.disabled"
-                  >{{ item.title }}</el-checkbox
-                >
+            <el-checkbox-group v-model="BaseManageData.selectWhites" @change="blackAngWhite">
+              <div class="base" v-for="(item, index) in BaseManageData.whiteList" :key="index">
+                <el-checkbox :label="item.value" :title="item.title" :disabled="item.disabled">{{
+                  item.title
+                }}</el-checkbox>
               </div>
             </el-checkbox-group>
           </div>
@@ -425,9 +286,7 @@
       </div>
       <div slot="footer" class="dialog-footer">
         <el-button size="small" @click="copyClose" type="info">鍙� 娑�</el-button>
-        <el-button size="small" type="primary" @click="copySubmit()"
-          >纭� 瀹�</el-button
-        >
+        <el-button size="small" type="primary" @click="copySubmit()">纭� 瀹�</el-button>
       </div>
     </el-dialog>
 
@@ -446,22 +305,11 @@
             <p>榛戝悕鍗� ></p>
           </div>
           <div class="baseList">
-            <el-checkbox-group
-              v-model="BaseManageData.selectBlacks"
-              @change="blackAngWhite"
-              :max="1"
-            >
-              <div
-                class="base"
-                v-for="(item, index) in BaseManageData.blackList"
-                :key="index"
-              >
-                <el-checkbox
-                  :label="item.value"
-                  :title="item.title"
-                  :disabled="item.disabled"
-                  >{{ item.title }}</el-checkbox
-                >
+            <el-checkbox-group v-model="BaseManageData.selectBlacks" @change="blackAngWhite" :max="1">
+              <div class="base" v-for="(item, index) in BaseManageData.blackList" :key="index">
+                <el-checkbox :label="item.value" :title="item.title" :disabled="item.disabled">{{
+                  item.title
+                }}</el-checkbox>
               </div>
             </el-checkbox-group>
           </div>
@@ -471,22 +319,11 @@
             <p>鐧藉悕鍗� ></p>
           </div>
           <div class="baseList">
-            <el-checkbox-group
-              v-model="BaseManageData.selectWhites"
-              @change="blackAngWhite"
-              :max="1"
-            >
-              <div
-                class="base"
-                v-for="(item, index) in BaseManageData.whiteList"
-                :key="index"
-              >
-                <el-checkbox
-                  :label="item.value"
-                  :title="item.title"
-                  :disabled="item.disabled"
-                  >{{ item.title }}</el-checkbox
-                >
+            <el-checkbox-group v-model="BaseManageData.selectWhites" @change="blackAngWhite" :max="1">
+              <div class="base" v-for="(item, index) in BaseManageData.whiteList" :key="index">
+                <el-checkbox :label="item.value" :title="item.title" :disabled="item.disabled">{{
+                  item.title
+                }}</el-checkbox>
               </div>
             </el-checkbox-group>
           </div>
@@ -494,17 +331,11 @@
       </div>
       <div slot="footer" class="dialog-footer">
         <el-button size="small" @click="moveClose" type="info">鍙� 娑�</el-button>
-        <el-button size="small" type="primary" @click="moveSubmit()"
-          >纭� 瀹�</el-button
-        >
+        <el-button size="small" type="primary" @click="moveSubmit()">纭� 瀹�</el-button>
       </div>
     </el-dialog>
 
-    <el-dialog
-      :visible.sync="askDeleteShow"
-      :center="true"
-      custom-class="del-dialog"
-    >
+    <el-dialog :visible.sync="askDeleteShow" :center="true" custom-class="del-dialog">
       <div>
         <div class="suc-icon">
           <i class="iconfont icongantanhao1"></i>
@@ -516,7 +347,7 @@
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="askDeleteShow = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="handleDel">纭� 瀹�</el-button>
+        <el-button type="primary" @click="handleDel" :loading="delBtnLoading">纭� 瀹�</el-button>
       </span>
     </el-dialog>
 
@@ -566,18 +397,10 @@
         :rule="rules"
       >
         <el-form-item label="杞︾墝鍙�" prop="carNo">
-          <el-input
-            placeholder="璇疯緭鍏ヨ溅鐗屽彿"
-            v-model="form.carNo"
-            class="inputWidth"
-          ></el-input>
+          <el-input placeholder="璇疯緭鍏ヨ溅鐗屽彿" v-model="form.carNo" class="inputWidth"></el-input>
         </el-form-item>
         <el-form-item label="杞﹁締绫诲瀷">
-          <el-select
-            v-model="form.carType"
-            placeholder="璇烽�夋嫨杞﹁締绫诲瀷"
-            class="inputWidth"
-          >
+          <el-select v-model="form.carType" placeholder="璇烽�夋嫨杞﹁締绫诲瀷" class="inputWidth">
             <el-option
               v-for="item in VideoPhotoData.dictionary.CARTYPE"
               :key="item.value"
@@ -587,11 +410,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="杞﹁締鍝佺墝">
-          <el-select
-            v-model="form.carBrand"
-            placeholder="璇烽�夋嫨杞﹁締鍝佺墝"
-            class="inputWidth"
-          >
+          <el-select v-model="form.carBrand" placeholder="璇烽�夋嫨杞﹁締鍝佺墝" class="inputWidth">
             <el-option
               v-for="item in VideoPhotoData.dictionary.BRAND"
               :key="item.value"
@@ -601,11 +420,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="杞﹁韩棰滆壊">
-          <el-select
-            v-model="form.carColor"
-            placeholder="璇烽�夋嫨杞﹁韩棰滆壊"
-            class="inputWidth"
-          >
+          <el-select v-model="form.carColor" placeholder="璇烽�夋嫨杞﹁韩棰滆壊" class="inputWidth">
             <el-option
               v-for="item in VideoPhotoData.dictionary.nColor"
               :key="item.value"
@@ -643,20 +458,8 @@
         </el-form-item> -->
       </el-form>
       <div class="dialog-footer">
-        <el-button
-          size="small"
-          class="sure-btn"
-          type="primary"
-          @click="submitCar"
-          >纭� 瀹�</el-button
-        >
-        <el-button
-          size="small"
-          class="cancel-btn"
-          @click="resetForm"
-          type="info"
-          >鍙� 娑�</el-button
-        >
+        <el-button size="small" class="sure-btn" type="primary" @click="submitCar">纭� 瀹�</el-button>
+        <el-button size="small" class="cancel-btn" @click="resetForm" type="info">鍙� 娑�</el-button>
       </div>
     </el-drawer>
 
@@ -690,20 +493,8 @@
         </div>
       </div>
       <div class="dialog-footer">
-        <el-button
-          size="small"
-          class="sure-btn"
-          type="primary"
-          @click="platesBatch"
-          >淇濆瓨</el-button
-        >
-        <el-button
-          size="small"
-          class="cancel-btn"
-          @click="resetForm('ruleForm')"
-          type="info"
-          >鍙栨秷</el-button
-        >
+        <el-button size="small" class="sure-btn" type="primary" @click="platesBatch">淇濆瓨</el-button>
+        <el-button size="small" class="cancel-btn" @click="resetForm('ruleForm')" type="info">鍙栨秷</el-button>
       </div>
     </el-drawer>
   </div>
@@ -715,23 +506,46 @@
   deleteBasePersons,
   plateBatch,
   updateDbTableStatus,
-} from "@/api/baseLibrary";
-import axios from "axios";
-import Upload from "./upload";
-import fTemplate from "@/components/fTemplate";
-import request from "@/scripts/httpRequest";
+  deleteDbPersonById,
+  deleteDBtablesById
+} from "@/api/baseLibrary"
+import axios from "axios"
+import fTemplate from "@/components/fTemplate"
+import request from "@/scripts/httpRequest"
 export default {
   components: {
-    fTemplate,
+    fTemplate
   },
   props: {
     baseObject: {
       default: () => {},
-      type: Object,
+      type: Object
     },
     syncType: {
-      type: String,
+      type: String
+    }
+  },
+
+  computed: {
+    isAdmin() {
+      if (sessionStorage.getItem("userInfo") && sessionStorage.getItem("userInfo") !== "") {
+        let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username
+        return loginName === "superadmin" || loginName === "basic"
+      }
+      return false
     },
+    delText() {
+      switch (this.delType) {
+        case "base":
+          return ["鍒犻櫎搴曞簱", "纭畾鍒犻櫎璇ュ簳搴擄紵"]
+        case "single":
+          return ["鍒犻櫎杞﹁締淇℃伅", "纭畾鍒犻櫎璇ヨ溅杈嗕俊鎭紵"]
+        case "batch":
+          return ["鎵归噺鍒犻櫎", "纭畾鍒犻櫎璇ュ簳搴撻�変腑鐨勮溅杈嗕俊鎭紵"]
+        default:
+          return ["", ""]
+      }
+    }
   },
   data() {
     return {
@@ -744,12 +558,12 @@
       fileList: [
         {
           name: "fasjido.jpg",
-          url: "group2/M00/0A/D7/wKgBnFyjH0-AUE5eAAC8hSMP2Yw110.jpg",
+          url: "group2/M00/0A/D7/wKgBnFyjH0-AUE5eAAC8hSMP2Yw110.jpg"
         },
         {
           name: "fasjido.jpg",
-          url: "group2/M00/0A/D7/wKgBnFyjH0-AUE5eAAC8hSMP2Yw110.jpg",
-        },
+          url: "group2/M00/0A/D7/wKgBnFyjH0-AUE5eAAC8hSMP2Yw110.jpg"
+        }
       ],
       copyVisiabled: false,
       moveVisiabled: false,
@@ -782,14 +596,10 @@
         carBrand: "0",
         carNo: "",
         enable: 0,
-        reserved: "",
+        reserved: ""
       },
       rules: {
-        carNo: [{ required: true, message: "璇疯緭鍏ヨ溅鐗屽彿", trigger: "change" }],
-        // sex: [{ required: true, message: "璇峰嬀閫夋�у埆", trigger: "change" }],
-        // monitorLevel: [
-        //   { required: true, message: "璇烽�夋嫨浜哄憳绛夌骇", trigger: "change" },
-        // ],
+        carNo: [{ required: true, message: "璇疯緭鍏ヨ溅鐗屽彿", trigger: "change" }]
       },
       tableData: [],
       oldWidth: "",
@@ -802,145 +612,142 @@
         failList: [],
         successList: [],
         multiFaceList: [],
-        noFaceList: [],
+        noFaceList: []
       },
-    };
+      delBtnLoading: false
+    }
   },
-  computed: {
-    isAdmin() {
-      if (
-        sessionStorage.getItem("userInfo") &&
-        sessionStorage.getItem("userInfo") !== ""
-      ) {
-        let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username;
-        return loginName === "superadmin" || loginName === "basic";
-      }
-      return false;
+  watch: {
+    "BaseManageData.selectBlacks": function(value) {
+      this.blackAngWhite()
     },
-    delText() {
-      switch (this.delType) {
-        case "base":
-          return ["鍒犻櫎搴曞簱", "纭畾鍒犻櫎璇ュ簳搴擄紵"];
-        case "single":
-          return ["鍒犻櫎浜哄憳", "纭畾鍒犻櫎璇ュ簳搴撲汉鍛橈紵"];
-        case "batch":
-          return ["鎵归噺鍒犻櫎", "纭畾鍒犻櫎璇ュ簳搴撻�変腑浜哄憳锛�"];
-        default:
-          return ["", ""];
+    "BaseManageData.selectWhites": function(value) {
+      this.blackAngWhite()
+    }
+  },
+  mounted() {
+    this.getCarList()
+    this.VideoPhotoData.queryDictionary()
+    this.BaseManageData.queryTagList()
+    this.oldWidth = document.body.clientWidth
+    this.oldHeight = document.body.clientHeight
+    this.blackAngWhite()
+    window.onresize = () => {
+      let width = document.body.clientWidth
+      let height = document.body.clientHeight
+      if (width !== this.oldWidth && width < 1750) {
       }
-    },
+      this.$nextTick(() => {
+        this.$refs.multipleTable.doLayout()
+      })
+    }
+    this.$nextTick(() => {
+      this.$refs.multipleTable.doLayout()
+    })
+  },
+  beforeDestroy() {
+    window.onresize = null
   },
   methods: {
-    handleDel() {
+    async handleDel() {
+      this.delBtnLoading = true
       if (this.delType == "single") {
-        this.deleteThis();
+        await this.deleteThis()
       } else if (this.delType == "base") {
-        this.deleteBase();
+        await this.deleteBase()
       } else if (this.delType == "batch") {
-        this.deleteBatch();
+        await this.deleteBatch()
       }
+
+      this.delBtnLoading = false
+      this.askDeleteShow = false
     },
     deleteBase() {
-      let token =
-        sessionStorage.getItem("loginedInfo") &&
-        JSON.parse(sessionStorage.getItem("loginedInfo")).access_token;
-      fetch(`/data/api-v/dbtable/deleteDBtablesById?id=${this.baseObject.id}`, {
-        method: "GET",
-        headers: {
-          "Content-Type": "application/json",
-          Authorization: token,
-        },
-      })
-        .then((res) => {
-          return res.json();
-        })
+      deleteDBtablesById({ id: this.baseObject.id })
         .then((res) => {
           if (res.success) {
             this.$notify({
               type: "success",
-              message: "搴曞簱鍒犻櫎鎴愬姛锛�",
-            });
+              message: "搴曞簱鍒犻櫎鎴愬姛锛�"
+            })
           }
-          this.askDeleteShow=false
-          this.$emit("onDelete");
+          this.askDeleteShow = false
+          this.$emit("onDelete")
         })
         .catch((err) => {
           this.$notify({
             type: "error",
-            message: err,
-          });
-        });
+            message: err
+          })
+        })
     },
     handleRemoveCarPic(file, fileList) {
       var index = fileList.findIndex((item) => {
         if (item.uid == file.uid) {
-          return true;
+          return true
         }
-      });
-      this.form.carUrls.splice(index, 1);
+      })
+      this.form.carUrls.splice(index, 1)
     },
     isDisabled(item) {
-      var flag = true;
+      var flag = true
       if (this.isShow("library:set")) {
         if (item.endTime == "") {
-          flag = false;
+          flag = false
         } else {
-          flag = !this.$moment(new Date()).isBetween(
-            item.startTime,
-            item.endTime
-          );
+          flag = !this.$moment(new Date()).isBetween(item.startTime, item.endTime)
         }
       }
-      return flag;
+      return flag
     },
     handleRemoveFacePic(file, fileList) {
-      this.form.faceUrl.splice(0, 1);
+      this.form.faceUrl.splice(0, 1)
     },
     edit() {
-      this.$emit("changeShow", this.baseObject, this.syncType);
+      this.$emit("changeShow", this.baseObject, this.syncType)
     },
     // beforeUoload() {},
     handlePictureCardPreview(file) {
-      this.dialogImageUrl = file.url;
-      this.dialogVisible = true;
+      this.dialogImageUrl = file.url
+      this.dialogVisible = true
     },
     async uploadCar(param) {
-      const fd = new FormData();
-      fd.append("file", param.file);
-      fd.append("picType", "0");
+      const fd = new FormData()
+      fd.append("file", param.file)
+      fd.append("picType", "0")
       let res = await request({
         method: "post",
         url: `/data/api-v/dbperson/fileupload`,
-        data: fd,
-      });
+        data: fd
+      })
       if (res.success) {
-        this.form.carUrls.push({ url: "/httpImage/" + res.data.picUrl });
+        this.form.carUrls.push({ url: "/httpImage/" + res.data.picUrl })
       }
     },
     async uploadPerson(param) {
-      const fd = new FormData();
-      fd.append("file", param.file);
-      fd.append("picType", "1");
+      const fd = new FormData()
+      fd.append("file", param.file)
+      fd.append("picType", "1")
       let res = await request({
         method: "post",
         url: `/data/api-v/dbperson/fileupload`,
-        data: fd,
-      });
+        data: fd
+      })
       debugger
       if (res.success) {
-        this.form.faceUrl.push({ url: "/httpImage/" + res.data.picUrl });
-        this.form.faceFeature = res.data.faceFeature;
+        this.form.faceUrl.push({ url: "/httpImage/" + res.data.picUrl })
+        this.form.faceFeature = res.data.faceFeature
       }
     },
     addCar() {
-      this.addDrawer = true;
+      this.addDrawer = true
     },
     addBatch() {
-      this.addBatchDrawer = true;
+      this.addBatchDrawer = true
     },
     resetForm() {},
     handleClose1(done) {
-      (this.form = {
+      ;(this.form = {
         id: "",
         sex: "鐢�",
         name: "",
@@ -959,120 +766,106 @@
         carBrand: "0",
         carNo: "",
         enable: 0,
-        reserved: "",
+        reserved: ""
       }),
-        done();
+        done()
     },
     handleClose2(done) {
-      done();
+      done()
     },
     isShow(authority) {
-      return (
-        this.isAdmin || this.buttonAuthority.indexOf("," + authority + ",") > -1
-      );
+      return this.isAdmin || this.buttonAuthority.indexOf("," + authority + ",") > -1
     },
     toggleSelection(rows) {
       if (rows) {
         rows.forEach((row) => {
-          this.$refs.multipleTable.toggleRowSelection(row);
-        });
+          this.$refs.multipleTable.toggleRowSelection(row)
+        })
       } else {
-        this.$refs.multipleTable.clearSelection();
+        this.$refs.multipleTable.clearSelection()
       }
     },
     deleteThis() {
-      let token =
-        sessionStorage.getItem("loginedInfo") &&
-        JSON.parse(sessionStorage.getItem("loginedInfo")).access_token;
-      fetch(`/data/api-v/dbperson/deleteDbPersonById?id=${this.toDeleteId}`, {
-        method: "GET",
-        headers: {
-          "Content-Type": "application/json",
-          Authorization: token,
-        },
-      })
-        .then((res) => {
-          return res.json();
-        })
+      deleteDbPersonById({ id: this.toDeleteId })
         .then((data) => {
           if (data.success) {
             this.$notify({
               type: "success",
-              message: "璇ヤ汉鍛樺垹闄ゆ垚鍔燂紒",
-            });
+              message: "杞﹁締淇℃伅鍒犻櫎鎴愬姛锛�"
+            })
           }
-          this.getCarList();
+          this.getCarList()
         })
-        .catch((err) => {});
+        .catch((err) => {})
     },
     getUploadResult(result) {
-      this.uploadResult = result.data;
-      this.dialogVisible = true;
-      this.getCarList();
+      this.uploadResult = result.data
+      this.dialogVisible = true
+      this.getCarList()
     },
     async getCarList() {
       if (this.baseObject.id && this.baseObject.id !== undefined) {
-        this.BaseManageData.tableId = this.baseObject.id;
-        this.setLoadSearch(this.BaseManageData.queryPersonList());
+        this.BaseManageData.tableId = this.baseObject.id
+        this.setLoadSearch(this.BaseManageData.queryPersonList())
       }
     },
     changeDialog(data) {
       data.erFileList.map((item, index) => {
         this.$notify({
           type: "error",
-          message: item.errorMsg.message,
-        });
-      });
+          message: item.errorMsg.message
+        })
+      })
     },
     handleClose() {
-      this.dialogFormVisible = false;
+      this.dialogFormVisible = false
     },
     handleSelectionChange(val) {
-      this.selectedRowKeys = val;
+      this.selectedRowKeys = val
     },
     refrash(current, pageSize) {
-      this.current = current;
-      this.BaseManageData.page = current;
-      this.getCarList();
+      this.current = current
+      this.BaseManageData.page = current
+      this.getCarList()
     },
     handleClick(row) {
-      this.form = row;
+      this.form = row
       // 杩欏潡鍎垮悗鍙扮殑瀛楀吀value鍊兼湁闂锛岄渶瑕佸墠绔潵鍥炶浆
-      this.form.carColor += "";
-      this.form.carType += "";
-      this.form.carBrand += "";
-      this.addDrawer = true;
+      this.form.carColor += ""
+      this.form.carType += ""
+      this.form.carBrand += ""
+      this.addDrawer = true
     },
     async submit() {
       this.$refs["formForEdit"].validate(async (valid) => {
         if (valid) {
-          let { ...json } = this.form;
-          delete json["compareScore"];
-          let res = await updateBasePerson(json);
+          let { ...json } = this.form
+          delete json["compareScore"]
+          let res = await updateBasePerson(json)
           if (res.success) {
             this.$notify({
               type: "success",
-              message: "浜哄憳淇敼鎴愬姛锛�",
-            });
-            this.dialogFormVisible = false;
+              message: "杞﹁締淇℃伅淇敼鎴愬姛锛�"
+            })
+            this.dialogFormVisible = false
           } else {
             this.$notify({
               type: "error",
-              message: "浜哄憳淇敼澶辫触锛岃閲嶈瘯锛侊紒",
-            });
+              message: "杞﹁締淇℃伅淇敼澶辫触锛岃閲嶈瘯锛侊紒"
+            })
           }
         } else {
-          return false;
+          return false
         }
-      });
+      })
     },
     confirm() {
       this.$confirm({
         title: "Confirm",
         content: "Bla bla ...",
         okText: "纭",
-        cancelText: "鍙栨秷",
-      });
+        cancelText: "鍙栨秷"
+      })
     },
     async enable(item) {
       let res = await updateBasePerson({
@@ -1085,44 +878,44 @@
         phoneNum: item.phoneNum,
         monitorLevel: item.monitorLevel,
         personPicUrl: item.personPicUrl,
-        reserved: item.reserved,
-      });
+        reserved: item.reserved
+      })
       if (res.success) {
         this.$notify({
           type: "success",
-          message: "搴曞簱浜哄憳鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒",
-        });
+          message: "杞﹁締淇℃伅鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒"
+        })
       } else {
         this.$notify({
           type: "error",
-          message: "搴曞簱浜哄憳鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒",
-        });
+          message: "杞﹁締淇℃伅鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒"
+        })
       }
     },
     handleSearch() {
-      this.getCarList();
+      this.getCarList()
     },
     searchImg() {
-      this.$refs.uploadDrag && this.$refs.uploadDrag.uploadStart();
+      this.$refs.uploadDrag && this.$refs.uploadDrag.uploadStart()
     },
     haveScore(row) {
-      return row.compareScore && row.compareScore !== "";
+      return row.compareScore && row.compareScore !== ""
     },
     async setEnable(item) {
       let res = await updateDbTableStatus({
         id: item.id,
-        enable: item.enable,
-      });
+        enable: item.enable
+      })
       if (res.success) {
         this.$notify({
           type: "success",
-          message: "搴曞簱鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒",
-        });
+          message: "搴曞簱鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒"
+        })
       } else {
         this.$notify({
           type: "error",
-          message: "搴曞簱鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒",
-        });
+          message: "搴曞簱鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒"
+        })
       }
     },
     async searchImgList(faceUrl, threshold) {
@@ -1133,65 +926,61 @@
         faceUrl: faceUrl,
         threshold: threshold,
         orderType: this.orderType,
-        orderName: this.orderName,
-      };
-      let res = await getPersonByPhoto(json);
-      this.tableData = res.data.datalist;
-      this.total = res.data.total;
-      this.compare = true;
+        orderName: this.orderName
+      }
+      let res = await getPersonByPhoto(json)
+      this.tableData = res.data.datalist
+      this.total = res.data.total
+      this.compare = true
     },
     // updateThreshold() {},
     async updateFace(param) {
-      const fd = new FormData();
-      fd.append("file", param.file);
-      fd.append("id", this.form.id);
+      const fd = new FormData()
+      fd.append("file", param.file)
+      fd.append("id", this.form.id)
       let res = await axios({
         method: "post",
         url: `/data/api-v/dbperson/updateFace`,
         headers: {
           Authorization:
-            sessionStorage.getItem("loginedInfo") &&
-            JSON.parse(sessionStorage.getItem("loginedInfo")).access_token,
+            sessionStorage.getItem("loginedInfo") && JSON.parse(sessionStorage.getItem("loginedInfo")).access_token
         },
-        data: fd,
-      });
+        data: fd
+      })
       if (res.data.success) {
-        this.form.personPicUrl = res.data.data.personPicUrl;
-        this.form.faceFeature = res.data.data.faceFeature;
+        this.form.personPicUrl = res.data.data.personPicUrl
+        this.form.faceFeature = res.data.data.faceFeature
       }
     },
     async deleteBatch() {
-      let ids = [];
+      let ids = []
       this.selectedRowKeys.map((item, index) => {
-        ids.push(item.id);
-      });
-      let res = await deleteBasePersons(ids);
+        ids.push(item.id)
+      })
+      let res = await deleteBasePersons({ ids: ids })
       if (res.success) {
         this.$notify({
           type: "success",
-          message: "鍒犻櫎鎴愬姛锛�",
-        });
-        this.getCarList();
+          message: "鍒犻櫎鎴愬姛锛�"
+        })
+        this.getCarList()
       } else {
         this.$notify({
           type: "error",
-          message: "鍒犻櫎澶辫触锛�",
-        });
+          message: "鍒犻櫎澶辫触锛�"
+        })
       }
     },
     async init() {
-      await this.BaseManageData.querySyncTables();
-      await this.BaseManageData.queryLocalTables();
+      await this.BaseManageData.querySyncTables()
+      await this.BaseManageData.queryLocalTables()
       if (this.baseObject.id && this.baseObject.id !== undefined) {
-      } else if (
-        this.BaseManageData.syncTables[0].id &&
-        this.BaseManageData.syncTables[0].id !== undefined
-      ) {
-        this.BaseManageData.tableId = this.BaseManageData.syncTables[0].id;
-        this.BaseManageData.queryPersonList();
+      } else if (this.BaseManageData.syncTables[0].id && this.BaseManageData.syncTables[0].id !== undefined) {
+        this.BaseManageData.tableId = this.BaseManageData.syncTables[0].id
+        this.BaseManageData.queryPersonList()
       } else {
-        this.BaseManageData.tableId = this.BaseManageData.localTables[0].id;
-        this.BaseManageData.queryPersonList();
+        this.BaseManageData.tableId = this.BaseManageData.localTables[0].id
+        this.BaseManageData.queryPersonList()
       }
     },
     askDelete(typ, id) {
@@ -1199,290 +988,238 @@
         if (this.selectedRowKeys.length === 0) {
           this.$notify({
             type: "warning",
-            message: "璇烽�夋嫨瑕佸垹闄ょ殑浜哄憳",
-          });
-          return;
+            message: "璇烽�夋嫨瑕佸垹闄ょ殑杞﹁締淇℃伅"
+          })
+          return
         }
       }
-      this.askDeleteShow = true;
-      this.delType = typ;
-      id && (this.toDeleteId = id);
+      this.askDeleteShow = true
+      this.delType = typ
+      id && (this.toDeleteId = id)
     },
     blackAngWhite() {
       if (this.BaseManageData.selectBlacks.length > 0) {
         for (let i = 0; i < this.BaseManageData.whiteList.length; i++) {
           //this.VideoPhotoData.whiteList[i].disabled = true
-          this.$set(this.BaseManageData.whiteList[i], "disabled", true);
+          this.$set(this.BaseManageData.whiteList[i], "disabled", true)
         }
       }
       if (this.BaseManageData.selectBlacks.length == 0) {
         for (let i = 0; i < this.BaseManageData.whiteList.length; i++) {
           //this.VideoPhotoData.whiteList[i].disabled = false
-          this.$set(this.BaseManageData.whiteList[i], "disabled", false);
+          this.$set(this.BaseManageData.whiteList[i], "disabled", false)
         }
       }
       if (this.BaseManageData.selectWhites.length > 0) {
         for (let i = 0; i < this.BaseManageData.blackList.length; i++) {
           // this.VideoPhotoData.blackList[i].disabled = true
-          this.$set(this.BaseManageData.blackList[i], "disabled", true);
+          this.$set(this.BaseManageData.blackList[i], "disabled", true)
         }
       }
       if (this.BaseManageData.selectWhites.length == 0) {
         for (let i = 0; i < this.BaseManageData.blackList.length; i++) {
           //this.VideoPhotoData.blackList[i].disabled = false
-          this.$set(this.BaseManageData.blackList[i], "disabled", false);
+          this.$set(this.BaseManageData.blackList[i], "disabled", false)
         }
       }
     },
     tosearch(item) {
-      var curWwwPath = window.document.location.href;
-      var pathname = window.document.location.pathname;
-      var pos = curWwwPath.indexOf(pathname);
-      var localhostPath = curWwwPath.substring(0, pos); //ip+port
-      var href = localhostPath + "/Layout/Searching";
-      let captureId = item.id == "" ? item.personId : item.id;
-      var url = item.personPicUrl ? item.personPicUrl : item.personPicUrl;
-      var compType = 0;
-      window.open(
-        href +
-          "?showType=findByPic&targetId=" +
-          captureId +
-          "&picSmUrl=" +
-          url +
-          "&compType=" +
-          compType
-      );
+      var curWwwPath = window.document.location.href
+      var pathname = window.document.location.pathname
+      var pos = curWwwPath.indexOf(pathname)
+      var localhostPath = curWwwPath.substring(0, pos) //ip+port
+      var href = localhostPath + "/Layout/Searching"
+      let captureId = item.id == "" ? item.personId : item.id
+      var url = item.personPicUrl ? item.personPicUrl : item.personPicUrl
+      var compType = 0
+      window.open(href + "?showType=findByPic&targetId=" + captureId + "&picSmUrl=" + url + "&compType=" + compType)
     },
     async platesBatch() {
-      var temp = this.plates.split(/[\n,]/g);
-      var reg = /[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块]{1}[A-Z]{1}[A-Z0-9]{5,6}/;
+      var temp = this.plates.split(/[\n,]/g)
+      var reg = /[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块]{1}[A-Z]{1}[A-Z0-9]{5,6}/
       for (let i = 0; i < temp.length; i++) {
         if (temp[i] == "") {
-          temp.splice(i, 1);
-          i--;
+          temp.splice(i, 1)
+          i--
         } else {
           if (!reg.test(temp[i])) {
             this.$notify({
               type: "error",
-              message: "杞︾墝鍙�:" + temp[i] + "涓嶇鍚堣鍒欙紝璇锋鏌�!",
-            });
-            return;
+              message: "杞︾墝鍙�:" + temp[i] + "涓嶇鍚堣鍒欙紝璇锋鏌�!"
+            })
+            return
           }
         }
       }
       if (temp.length == 0) {
         this.$notify({
           type: "error",
-          message: "璇疯緭鍏ヨ溅鐗屽彿",
-        });
-        return;
+          message: "璇疯緭鍏ヨ溅鐗屽彿"
+        })
+        return
       }
       let param = {
         tableId: this.baseObject.id,
-        carNos: temp,
-      };
-      let resp = await plateBatch(param);
+        carNos: temp
+      }
+      let resp = await plateBatch(param)
       if (resp && resp.success) {
         // 鍒锋柊car鍒楄〃
         this.$notify({
           type: "success",
-          message: resp.msg,
-        });
-        this.getCarList();
-        this.addBatchDrawer = false;
+          message: resp.msg
+        })
+        this.getCarList()
+        this.addBatchDrawer = false
       } else {
         this.$notify({
           type: "error",
-          message: resp.msg,
-        });
+          message: resp.msg
+        })
       }
     },
     async submitCar() {
       this.$refs["formForCar"].validate(async (valid) => {
         if (valid) {
-          let { ...json } = this.form;
+          let { ...json } = this.form
           for (let index in json.carUrls) {
             if (index == 0) {
-              json.carPicUrls += json.carUrls[index].url.substring(11);
+              json.carPicUrls += json.carUrls[index].url.substring(11)
             } else {
-              json.carPicUrls += ";" + json.carUrls[index].url.substring(11);
+              json.carPicUrls += ";" + json.carUrls[index].url.substring(11)
             }
           }
-          json.carColor = parseInt(json.carColor);
-          json.carType = parseInt(json.carType);
-          json.carBrand = parseInt(json.carBrand);
-           debugger  
-          json.personPicUrl = json.faceUrl[0].url.substring(11);
-          json.tableId = this.baseObject.id;
-          delete json["compareScore"];
-          let res;
+          json.carColor = parseInt(json.carColor)
+          json.carType = parseInt(json.carType)
+          json.carBrand = parseInt(json.carBrand)
+          debugger
+          json.personPicUrl = json.faceUrl[0].url.substring(11)
+          json.tableId = this.baseObject.id
+          delete json["compareScore"]
+          let res
           if (json.id == "") {
-            res = await addBaseCar(json);
+            res = await addBaseCar(json)
           } else {
-            res = await updateBaseCar(json);
+            res = await updateBaseCar(json)
           }
           if (res.success) {
             this.$notify({
               type: "success",
-              message: res.data.msg,
-            });
-            this.getCarList();
-            this.addDrawer = false;
+              message: res.data.msg
+            })
+            this.getCarList()
+            this.addDrawer = false
           } else {
             this.$notify({
               type: "error",
-              message: res.data.msg,
-            });
+              message: res.data.msg
+            })
           }
         } else {
-          return false;
+          return false
         }
-      });
+      })
     },
     copyClick(row) {
-      this.BaseManageData.personId = row.id;
-      this.copyVisiabled = true;
+      this.BaseManageData.personId = row.id
+      this.copyVisiabled = true
     },
     moveClick(row) {
-      this.BaseManageData.personId = row.id;
-      this.moveVisiabled = true;
+      this.BaseManageData.personId = row.id
+      this.moveVisiabled = true
     },
     copyClose() {
-      this.copyVisiabled = false;
-      this.BaseManageData.personId = "";
-      this.BaseManageData.selectBlacks = [];
-      this.BaseManageData.selectWhites = [];
+      this.copyVisiabled = false
+      this.BaseManageData.personId = ""
+      this.BaseManageData.selectBlacks = []
+      this.BaseManageData.selectWhites = []
     },
     moveClose() {
-      this.moveVisiabled = false;
-      this.BaseManageData.personId = "";
-      this.BaseManageData.selectBlacks = [];
-      this.BaseManageData.selectWhites = [];
+      this.moveVisiabled = false
+      this.BaseManageData.personId = ""
+      this.BaseManageData.selectBlacks = []
+      this.BaseManageData.selectWhites = []
     },
     copySubmit() {
-      if (
-        this.BaseManageData.selectBlacks.length === 0 &&
-        this.BaseManageData.selectWhites.length === 0
-      ) {
+      if (this.BaseManageData.selectBlacks.length === 0 && this.BaseManageData.selectWhites.length === 0) {
         this.$notify({
           title: "娉ㄦ剰",
           message: "璇烽�夋嫨瑕佸鍒跺埌鐨勫簱",
-          type: "warning",
-        });
-        return;
+          type: "warning"
+        })
+        return
       }
-      var resp = this.BaseManageData.copyTo();
+      var resp = this.BaseManageData.copyTo()
       resp.then((data) => {
         if (data.success) {
           this.$notify({
             title: "鎴愬姛",
             message: data.data,
-            type: "success",
-          });
+            type: "success"
+          })
         } else {
           this.$notify({
             title: "澶辫触",
             message: data.data,
-            type: "error",
-          });
+            type: "error"
+          })
         }
-      });
-      this.copyVisiabled = false;
-      this.BaseManageData.personId = "";
-      this.BaseManageData.selectBlacks = [];
-      this.BaseManageData.selectWhites = [];
+      })
+      this.copyVisiabled = false
+      this.BaseManageData.personId = ""
+      this.BaseManageData.selectBlacks = []
+      this.BaseManageData.selectWhites = []
     },
     getDataName: (dataList, key) => {
-      let name = "";
+      let name = ""
       if (Array.isArray(dataList) && dataList.length > 0) {
         for (let i = 0; i < dataList.length; i++) {
           if (dataList[i].value == key) {
-            name = dataList[i].name;
+            name = dataList[i].name
           }
         }
       }
-      return name;
+      return name
     },
     moveSubmit() {
-      if (
-        this.BaseManageData.selectBlacks.length === 0 &&
-        this.BaseManageData.selectWhites.length === 0
-      ) {
+      if (this.BaseManageData.selectBlacks.length === 0 && this.BaseManageData.selectWhites.length === 0) {
         this.$notify({
           title: "娉ㄦ剰",
           message: "璇烽�夋嫨瑕佺Щ鍔ㄥ埌鐨勫簱",
-          type: "warning",
-        });
-        return;
+          type: "warning"
+        })
+        return
       }
-      var resp = this.BaseManageData.moveTo();
+      var resp = this.BaseManageData.moveTo()
       resp.then((data) => {
         if (data.success) {
           this.$notify({
             title: "鎴愬姛",
             message: data.data,
-            type: "success",
-          });
+            type: "success"
+          })
         } else {
           this.$notify({
             title: "澶辫触",
             message: data.data,
-            type: "error",
-          });
+            type: "error"
+          })
         }
-        this.moveVisiabled = false;
-        this.BaseManageData.personId = "";
-        this.BaseManageData.selectBlacks = [];
-        this.BaseManageData.selectWhites = [];
-        this.BaseManageData.queryPersonList();
-      });
+        this.moveVisiabled = false
+        this.BaseManageData.personId = ""
+        this.BaseManageData.selectBlacks = []
+        this.BaseManageData.selectWhites = []
+        this.BaseManageData.queryPersonList()
+      })
     },
     setLoadSearch(fn) {
-      this.AuthData.setLoading("multipleTable", this);
+      this.AuthData.setLoading("multipleTable", this)
       fn.then((_) => {
-        this.AuthData.closeLoad();
-      });
-    },
-  },
-  mounted() {
-    this.getCarList();
-    this.VideoPhotoData.queryDictionary();
-    this.BaseManageData.queryTagList();
-    this.oldWidth = document.body.clientWidth;
-    this.oldHeight = document.body.clientHeight;
-    this.blackAngWhite();
-    window.onresize = () => {
-      let width = document.body.clientWidth;
-      let height = document.body.clientHeight;
-      if (width !== this.oldWidth && width < 1750) {
-      }
-      this.$nextTick(() => {
-        this.$refs.multipleTable.doLayout();
-      });
-    };
-    this.$nextTick(() => {
-      this.$refs.multipleTable.doLayout();
-    });
-  },
-  beforeDestroy() {
-    window.onresize = null;
-  },
-  watch: {
-    baseObject: {
-      handler(newVal, oldVal) {
-        this.BaseManageData.cleanData();
-        this.getCarList();
-      },
-      deep: true,
-    },
-    "BaseManageData.selectBlacks": function (value) {
-      this.blackAngWhite();
-    },
-    "BaseManageData.selectWhites": function (value) {
-      this.blackAngWhite();
-    },
-  },
-};
+        this.AuthData.closeLoad()
+      })
+    }
+  }
+}
 </script>
 <style lang="scss">
 .iconStyle1 {
@@ -1647,9 +1384,7 @@
       display: none;
     }
     .el-table--border .el-table__cell,
-    .el-table__body-wrapper
-      .el-table--border.is-scrolling-left
-      ~ .el-table__fixed {
+    .el-table__body-wrapper .el-table--border.is-scrolling-left ~ .el-table__fixed {
       border-right: none;
     }
     td {
diff --git a/src/pages/library/components/personList.vue b/src/pages/library/components/personList.vue
index 6511bbb..798b7a8 100644
--- a/src/pages/library/components/personList.vue
+++ b/src/pages/library/components/personList.vue
@@ -4,18 +4,12 @@
       <div class="base-tip">
         <div class="left-tips">
           <span class="ku-name">{{ this.baseObject.tableName }}</span>
-          <span
-            class="list"
-            :class="
-              this.baseObject.bwType === '1' ? 'black-list' : 'white-list'
-            "
-            >{{ this.baseObject.bwType === "1" ? "榛戝悕鍗�" : "鐧藉悕鍗�" }}</span
-          >
+          <span class="list" :class="this.baseObject.bwType === '1' ? 'black-list' : 'white-list'">{{
+            this.baseObject.bwType === "1" ? "榛戝悕鍗�" : "鐧藉悕鍗�"
+          }}</span>
           <span class="ok-time"
             >鏈夋晥鏃堕棿锛歿{ this.baseObject.startTime }} --
-            {{
-              this.baseObject.endTime ? this.baseObject.endTime : "姘镐箙鏈夋晥"
-            }}</span
+            {{ this.baseObject.endTime ? this.baseObject.endTime : "姘镐箙鏈夋晥" }}</span
           >
         </div>
 
@@ -43,11 +37,7 @@
           </el-tooltip>
 
           <el-tooltip content="缂栬緫" placement="top" popper-class="atooltip">
-            <span
-              class="iconfont iconfont-wrap iconbianjiku-09"
-              @click.stop="edit"
-              v-if="isShow('library:set')"
-            ></span>
+            <span class="iconfont iconfont-wrap iconbianjiku-09" @click.stop="edit" v-if="isShow('library:set')"></span>
           </el-tooltip>
         </div>
       </div>
@@ -70,14 +60,8 @@
           >
             <upload-icon slot="suffix"></upload-icon>
           </el-input>
-          <el-button size="small" type="primary" @click="handleSearch"
-            >鎼滅储</el-button
-          >
-          <el-tooltip
-            content="鎵归噺鍒犻櫎"
-            placement="top"
-            popper-class="atooltip"
-          >
+          <el-button size="small" type="primary" @click="handleSearch">鎼滅储</el-button>
+          <el-tooltip content="鎵归噺鍒犻櫎" placement="top" popper-class="atooltip">
             <span
               class="iconfont iconfont-wrap iconpiliangshanchu-09"
               @click="askDelete('batch')"
@@ -85,11 +69,7 @@
             ></span>
           </el-tooltip>
 
-          <el-tooltip
-            content="涓婁紶鐓х墖"
-            placement="top"
-            popper-class="atooltip"
-          >
+          <el-tooltip content="涓婁紶鐓х墖" placement="top" popper-class="atooltip">
             <UploadBtn
               limitTypes=".jpg,.png,.jpeg"
               limitSize
@@ -113,7 +93,6 @@
         tooltip-effect="dark"
         style="width: 100%; overflow: auto"
         :fit="true"
-        row-class-name="hover-row"
         cell-class-name="cell-classname"
         @row-click="pickRow"
         :default-sort="{ prop: 'createTime', order: 'descending' }"
@@ -123,7 +102,7 @@
           background: '#fff',
           color: '#222222',
           padding: '2px 1px',
-          borderBottom: 'none',
+          borderBottom: 'none'
         }"
       >
         <el-table-column type="selection" width="40"></el-table-column>
@@ -134,9 +113,7 @@
               style="width: 84px; height: 84px; object-fit: contain"
               alt
             />
-            <p class="text-center fb f16" v-show="haveScore(scope.row)">
-              {{ scope.row.compareScore }}%
-            </p>
+            <p class="text-center fb f16" v-show="haveScore(scope.row)">{{ scope.row.compareScore }}%</p>
           </template>
         </el-table-column>
         <el-table-column label="鐢熸晥鐘舵��" min-width="70">
@@ -152,19 +129,8 @@
             ></el-switch>
           </template>
         </el-table-column>
-        <el-table-column
-          prop="personName"
-          label="濮撳悕"
-          min-width="70"
-          show-overflow-tooltip
-          sortable
-        ></el-table-column>
-        <el-table-column
-          prop="sex"
-          label="鎬у埆"
-          min-width="60"
-          sortable
-        ></el-table-column>
+        <el-table-column prop="personName" label="濮撳悕" min-width="70" show-overflow-tooltip sortable></el-table-column>
+        <el-table-column prop="sex" label="鎬у埆" min-width="60" sortable></el-table-column>
         <el-table-column
           prop="idCard"
           label="韬唤璇佸彿"
@@ -179,11 +145,7 @@
           show-overflow-tooltip
           sortable
         ></el-table-column>
-        <el-table-column
-          prop="monitorLevel"
-          label="绛夌骇"
-          min-width="50"
-        ></el-table-column>
+        <el-table-column prop="monitorLevel" label="绛夌骇" min-width="50"></el-table-column>
         <el-table-column
           prop="createTime"
           label="鍏ュ簱鏃堕棿"
@@ -194,11 +156,7 @@
         <el-table-column label="鎿嶄綔" min-width="130">
           <template slot-scope="scope">
             <fTemplate authority="library:set">
-              <el-tooltip
-                content="缂栬緫"
-                placement="top"
-                popper-class="atooltip"
-              >
+              <el-tooltip content="缂栬緫" placement="top" popper-class="atooltip">
                 <span
                   class="iconfont iconbianjixinxi-09"
                   style="font-size: 24px; cursor: pointer"
@@ -206,67 +164,26 @@
                 ></span>
               </el-tooltip>
             </fTemplate>
-            <el-popover
-              placement="top"
-              trigger="click"
-              popper-class="popper-caozuo"
-            >
-              <el-tooltip
-                content="鏌ユ壘姝や汉"
-                placement="top"
-                popper-class="atooltip"
-              >
-                <span
-                  class="iconfont iconchazhaociren-09"
-                  @click="tosearch(scope.row)"
-                ></span>
+            <el-popover placement="top" trigger="click" popper-class="popper-caozuo">
+              <el-tooltip content="鏌ユ壘姝や汉" placement="top" popper-class="atooltip">
+                <span class="iconfont iconchazhaociren-09" @click="tosearch(scope.row)"></span>
               </el-tooltip>
-              <el-tooltip
-                content="鏌ョ湅璇︽儏"
-                placement="top"
-                popper-class="atooltip"
-              >
-                <span
-                  class="iconfont iconchakanxiangqing-09"
-                  @click="showDetail(scope.row)"
-                ></span>
+              <el-tooltip content="鏌ョ湅璇︽儏" placement="top" popper-class="atooltip">
+                <span class="iconfont iconchakanxiangqing-09" @click="showDetail(scope.row)"></span>
               </el-tooltip>
               <fTemplate authority="library:set">
-                <el-tooltip
-                  content="澶嶅埗"
-                  placement="top"
-                  popper-class="atooltip"
-                >
-                  <span
-                    class="iconfont iconfuzhi-09"
-                    title="澶嶅埗"
-                    @click="copyClick(scope.row)"
-                  ></span>
+                <el-tooltip content="澶嶅埗" placement="top" popper-class="atooltip">
+                  <span class="iconfont iconfuzhi-09" title="澶嶅埗" @click="copyClick(scope.row)"></span>
                 </el-tooltip>
               </fTemplate>
               <fTemplate authority="library:set">
-                <el-tooltip
-                  content="绉诲姩"
-                  placement="top"
-                  popper-class="atooltip"
-                >
-                  <span
-                    class="iconfont iconyidong-09"
-                    title="绉诲姩"
-                    @click="moveClick(scope.row)"
-                  ></span>
+                <el-tooltip content="绉诲姩" placement="top" popper-class="atooltip">
+                  <span class="iconfont iconyidong-09" title="绉诲姩" @click="moveClick(scope.row)"></span>
                 </el-tooltip>
               </fTemplate>
               <fTemplate authority="library:set" class="del-wrap">
-                <el-tooltip
-                  content="鍒犻櫎"
-                  placement="top"
-                  popper-class="atooltip"
-                >
-                  <span
-                    class="iconfont iconshanchu-09"
-                    @click="askDelete('single', scope.row.id)"
-                  ></span>
+                <el-tooltip content="鍒犻櫎" placement="top" popper-class="atooltip">
+                  <span class="iconfont iconshanchu-09" @click="askDelete('single', scope.row.id)"></span>
                 </el-tooltip>
               </fTemplate>
               <span
@@ -289,12 +206,7 @@
         :total="BaseManageData.total"
       ></el-pagination>
     </div>
-    <el-dialog
-      title="鎶撴媿璇︽儏"
-      :visible.sync="cameraDetailVisible"
-      okText="纭畾"
-      custom-class="zhuapai-dialog"
-    >
+    <el-dialog title="鎶撴媿璇︽儏" :visible.sync="cameraDetailVisible" okText="纭畾" custom-class="zhuapai-dialog">
       <div class="member-info">
         <label class>
           <img src="/images/library/涓汉淇℃伅.png" alt="" srcset="" />
@@ -342,13 +254,9 @@
           ></el-date-picker>
         </div>
 
-        <el-button size="mini" type="primary" @click="postCameraData"
-          >鏌ヨ</el-button
-        >
+        <el-button size="mini" type="primary" @click="postCameraData">鏌ヨ</el-button>
       </div>
-      <p style="text-align: right; font-size: 14px; color: #5f5f5f">
-        鍏眥{ faceDataCount }}鏉℃暟鎹�
-      </p>
+      <p style="text-align: right; font-size: 14px; color: #5f5f5f">鍏眥{ faceDataCount }}鏉℃暟鎹�</p>
 
       <el-table
         :data="cameraDetailData"
@@ -359,15 +267,10 @@
           background: '#fff',
           color: '#222222',
           padding: '2px 1px',
-          borderBottom: 'none',
+          borderBottom: 'none'
         }"
       >
-        <el-table-column
-          prop="faceImg"
-          label="鎶撴媿瀹炴櫙"
-          width="160"
-          align="center"
-        >
+        <el-table-column prop="faceImg" label="鎶撴媿瀹炴櫙" width="160" align="center">
           <template slot-scope="scope">
             <div>
               <img
@@ -384,28 +287,10 @@
             </div>
           </template>
         </el-table-column>
-        <el-table-column
-          prop="cameraName"
-          label="鎽勫儚鏈哄悕绉�"
-          width="100"
-          align="center"
-        ></el-table-column>
-        <el-table-column
-          prop="startTime"
-          label="寮�濮嬫椂闂�"
-          align="center"
-        ></el-table-column>
-        <el-table-column
-          prop="endTime"
-          label="缁撴潫鏃堕棿"
-          align="center"
-        ></el-table-column>
-        <el-table-column
-          prop="stayTime"
-          label="鍋滅暀鏃堕暱"
-          width="99"
-          align="center"
-        >
+        <el-table-column prop="cameraName" label="鎽勫儚鏈哄悕绉�" width="100" align="center"></el-table-column>
+        <el-table-column prop="startTime" label="寮�濮嬫椂闂�" align="center"></el-table-column>
+        <el-table-column prop="endTime" label="缁撴潫鏃堕棿" align="center"></el-table-column>
+        <el-table-column prop="stayTime" label="鍋滅暀鏃堕暱" width="99" align="center">
           <template slot-scope="scope">
             <span>{{ scope.row.stayTime }} 绉�</span>
           </template>
@@ -413,21 +298,11 @@
       </el-table>
 
       <div class="bot-btn">
-        <el-button
-          size="mini"
-          type="primary"
-          @click="cameraDetailVisible = false"
-          >鍏抽棴</el-button
-        >
+        <el-button size="mini" type="primary" @click="cameraDetailVisible = false">鍏抽棴</el-button>
       </div>
     </el-dialog>
     <el-drawer title="淇敼淇℃伅" :modal="false" :visible.sync="showInfoDrawer">
-      <el-form
-        ref="formForEdit"
-        :model="inputPersonForm"
-        label-width="100px"
-        :rules="rules"
-      >
+      <el-form ref="formForEdit" :model="inputPersonForm" label-width="100px" :rules="rules">
         <div class="flex-center mb10">
           <el-upload
             class="avatar-uploader"
@@ -439,11 +314,7 @@
             :on-error="uploadError"
           >
             <div class="mask1">
-              <div
-                slot="trigger"
-                class="flex-center"
-                style="position: absolute; top: 70px"
-              >
+              <div slot="trigger" class="flex-center" style="position: absolute; top: 70px">
                 <p
                   style="
                     background: rgba(0, 0, 0, 0.35);
@@ -474,48 +345,27 @@
         <el-row>
           <el-col :span="20">
             <el-form-item label="ID" style="width: 100%; margin-bottom: 20px">
-              <el-input
-                size="small"
-                v-model="inputPersonForm.id"
-                disabled
-                placeholder="璇疯緭鍏�"
-              ></el-input>
+              <el-input size="small" v-model="inputPersonForm.id" disabled placeholder="璇疯緭鍏�"></el-input>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="20">
-            <el-form-item
-              label="鐓х墖鏍囪瘑"
-              prop="picDesc"
-              style="width: 100%; margin-bottom: 20px"
-            >
-              <el-input
-                size="small"
-                v-model="inputPersonForm.picDesc"
-                placeholder="璇疯緭鍏�"
-              ></el-input>
+            <el-form-item label="鐓х墖鏍囪瘑" prop="picDesc" style="width: 100%; margin-bottom: 20px">
+              <el-input size="small" v-model="inputPersonForm.picDesc" placeholder="璇疯緭鍏�"></el-input>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="20">
             <el-form-item label="濮撳悕" style="width: 100%; margin-bottom: 20px">
-              <el-input
-                size="small"
-                v-model="inputPersonForm.personName"
-                placeholder="璇疯緭鍏�"
-              ></el-input>
+              <el-input size="small" v-model="inputPersonForm.personName" placeholder="璇疯緭鍏�"></el-input>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="20">
-            <el-form-item
-              label="鎬у埆"
-              prop="sex"
-              style="width: 100%; margin-bottom: 20px; text-align: left"
-            >
+            <el-form-item label="鎬у埆" prop="sex" style="width: 100%; margin-bottom: 20px; text-align: left">
               <el-radio-group v-model="inputPersonForm.sex" class="mt10">
                 <el-radio label="鐢�"></el-radio>
                 <el-radio label="濂�"></el-radio>
@@ -525,47 +375,22 @@
         </el-row>
         <el-row>
           <el-col :span="20">
-            <el-form-item
-              label="韬唤璇佸彿"
-              prop="idCard"
-              style="width: 100%; margin-bottom: 20px"
-            >
-              <el-input
-                size="small"
-                v-model="inputPersonForm.idCard"
-                placeholder="璇疯緭鍏�"
-              ></el-input>
+            <el-form-item label="韬唤璇佸彿" prop="idCard" style="width: 100%; margin-bottom: 20px">
+              <el-input size="small" v-model="inputPersonForm.idCard" placeholder="璇疯緭鍏�"></el-input>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="20">
-            <el-form-item
-              label="鎵嬫満鍙�"
-              prop="phoneNum"
-              style="width: 100%; margin-bottom: 20px"
-            >
-              <el-input
-                size="small"
-                v-model="inputPersonForm.phoneNum"
-                placeholder="璇疯緭鍏�"
-              ></el-input>
+            <el-form-item label="鎵嬫満鍙�" prop="phoneNum" style="width: 100%; margin-bottom: 20px">
+              <el-input size="small" v-model="inputPersonForm.phoneNum" placeholder="璇疯緭鍏�"></el-input>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="20">
-            <el-form-item
-              label="浜哄憳绛夌骇"
-              prop="monitorLevel"
-              style="width: 100%; margin-bottom: 20px"
-            >
-              <el-select
-                size="small"
-                v-model="inputPersonForm.monitorLevel"
-                placeholder="璇烽�夋嫨"
-                style="width: 100%"
-              >
+            <el-form-item label="浜哄憳绛夌骇" prop="monitorLevel" style="width: 100%; margin-bottom: 20px">
+              <el-select size="small" v-model="inputPersonForm.monitorLevel" placeholder="璇烽�夋嫨" style="width: 100%">
                 <el-option
                   v-for="item in VideoPhotoData.dictionary.MONITORLEVEL"
                   :key="item.value"
@@ -578,68 +403,33 @@
         </el-row>
         <el-row>
           <el-col :span="20">
-            <el-form-item
-              label="鍏ュ簱浣嶇疆"
-              style="width: 100%; margin-bottom: 20px"
-            >
-              <el-input
-                size="small"
-                v-model="inputPersonForm.fromServerId"
-                disabled
-              ></el-input>
+            <el-form-item label="鍏ュ簱浣嶇疆" style="width: 100%; margin-bottom: 20px">
+              <el-input size="small" v-model="inputPersonForm.fromServerId" disabled></el-input>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="20">
-            <el-form-item
-              label="鍏ュ簱鏃堕棿"
-              style="width: 100%; margin-bottom: 20px"
-            >
-              <el-input
-                size="small"
-                v-model="inputPersonForm.createTime"
-                disabled
-              ></el-input>
+            <el-form-item label="鍏ュ簱鏃堕棿" style="width: 100%; margin-bottom: 20px">
+              <el-input size="small" v-model="inputPersonForm.createTime" disabled></el-input>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-col :span="20">
             <el-form-item label="鍏朵粬" style="width: 100%; margin-bottom: 20px">
-              <el-input
-                size="small"
-                v-model="inputPersonForm.reserved"
-                placeholder="璇疯緭鍏�"
-              ></el-input>
+              <el-input size="small" v-model="inputPersonForm.reserved" placeholder="璇疯緭鍏�"></el-input>
             </el-form-item>
           </el-col>
         </el-row>
       </el-form>
       <div class="dialog-footer">
         <!-- {{BaseManageData.personList[1].idCard}} -->
-        <el-button
-          size="small"
-          class="cancel-btn"
-          @click="handleClose"
-          type="info"
-          >鍙栨秷</el-button
-        >
-        <el-button
-          size="small"
-          class="sure-btn"
-          type="primary"
-          @click="submit"
-          >纭畾</el-button
-        >
+        <el-button size="small" class="cancel-btn" @click="handleClose" type="info">鍙栨秷</el-button>
+        <el-button size="small" class="sure-btn" type="primary" @click="submit">纭畾</el-button>
       </div>
     </el-drawer>
-    <el-dialog
-      :visible.sync="dialogVisible"
-      :close="getPersonList"
-      :center="true"
-      custom-class="suc-dialog"
-    >
+    <el-dialog :visible.sync="dialogVisible" :close="getPersonList" :center="true" custom-class="suc-dialog">
       <div>
         <div class="suc-icon">
           <i class="iconfont iconduigou3"></i>
@@ -650,51 +440,31 @@
         </div>
         <div class="flex-box mt10">
           <span>涓婁紶澶辫触鐨勬暟閲忥細{{ uploadResult.failList.length }}</span>
-          <div
-            class="ml20"
-            v-for="(i, index) in uploadResult.failList"
-            :key="index"
-          >
+          <div class="ml20" v-for="(i, index) in uploadResult.failList" :key="index">
             {{ i }}
           </div>
         </div>
         <div class="flex-box mt10">
-          <span
-            >鍖呭惈澶氬紶浜鸿劯鐨勫浘鐗囨暟閲忥細{{
-              uploadResult.multiFaceList.length
-            }}</span
-          >
-          <div
-            class="ml20"
-            v-for="(i, index) in uploadResult.multiFaceList"
-            :key="index"
-          >
+          <span>鍖呭惈澶氬紶浜鸿劯鐨勫浘鐗囨暟閲忥細{{ uploadResult.multiFaceList.length }}</span>
+          <div class="ml20" v-for="(i, index) in uploadResult.multiFaceList" :key="index">
             {{ i }}
           </div>
         </div>
         <div class="flex-box mt10">
           <span>涓嶅惈浜鸿劯鐨勫浘鐗囨暟閲忥細{{ uploadResult.noFaceList.length }}</span>
-          <div
-            class="ml20"
-            v-for="(i, index) in uploadResult.noFaceList"
-            :key="index"
-          >
+          <div class="ml20" v-for="(i, index) in uploadResult.noFaceList" :key="index">
             {{ i }}
           </div>
         </div>
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="dialogVisible = false"
-          >纭� 瀹�</el-button
-        >
+        <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button>
       </span>
     </el-dialog>
-    <el-dialog
-      :visible.sync="askDeleteShow"
-      :center="true"
-      custom-class="del-dialog"
-    >
+
+    <!-- 纭鍒犻櫎瀵硅瘽妗� -->
+    <el-dialog :visible.sync="askDeleteShow" :center="true" custom-class="del-dialog">
       <div>
         <div class="suc-icon">
           <i class="iconfont icongantanhao1"></i>
@@ -706,42 +476,27 @@
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="askDeleteShow = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="handleDel">纭� 瀹�</el-button>
+        <el-button type="primary" @click="handleDel" :loading="delBtnLoading">纭� 瀹�</el-button>
       </span>
     </el-dialog>
-    <el-dialog
-      title="澶嶅埗鍒�"
-      :visible.sync="copyVisiabled"
-      okText="淇濆瓨"
-      custom-class="copy-dialog"
-      cancelText="鍙栨秷"
-    >
+
+    <el-dialog title="澶嶅埗鍒�" :visible.sync="copyVisiabled" okText="淇濆瓨" custom-class="copy-dialog" cancelText="鍙栨秷">
       <div class="addToBase1">
         <div class="items" v-if="baseObject.bwType === '1'">
           <div class="lable">
             <p>榛戝悕鍗�</p>
           </div>
           <div class="baseList">
-            <el-checkbox-group
-              v-model="BaseManageData.selectBlacks"
-              @change="blackAngWhite"
-            >
+            <el-checkbox-group v-model="BaseManageData.selectBlacks" @change="blackAngWhite">
               <div
                 class="base"
                 v-for="(item, index) in BaseManageData.blackList"
                 :key="index"
-                :class="
-                  BaseManageData.selectBlacks.includes(item.value)
-                    ? 'white-wrap'
-                    : ''
-                "
+                :class="BaseManageData.selectBlacks.includes(item.value) ? 'white-wrap' : ''"
               >
-                <el-checkbox
-                  :label="item.value"
-                  :title="item.title"
-                  :disabled="item.disabled"
-                  >{{ item.title }}</el-checkbox
-                >
+                <el-checkbox :label="item.value" :title="item.title" :disabled="item.disabled">{{
+                  item.title
+                }}</el-checkbox>
               </div>
             </el-checkbox-group>
           </div>
@@ -751,26 +506,16 @@
             <p>鐧藉悕鍗�</p>
           </div>
           <div class="baseList">
-            <el-checkbox-group
-              v-model="BaseManageData.selectWhites"
-              @change="blackAngWhite"
-            >
+            <el-checkbox-group v-model="BaseManageData.selectWhites" @change="blackAngWhite">
               <div
                 class="base"
-                :class="
-                  BaseManageData.selectWhites.includes(item.value)
-                    ? 'white-wrap'
-                    : ''
-                "
+                :class="BaseManageData.selectWhites.includes(item.value) ? 'white-wrap' : ''"
                 v-for="(item, index) in BaseManageData.whiteList"
                 :key="index"
               >
-                <el-checkbox
-                  :label="item.value"
-                  :title="item.title"
-                  :disabled="item.disabled"
-                  >{{ item.title }}</el-checkbox
-                >
+                <el-checkbox :label="item.value" :title="item.title" :disabled="item.disabled">{{
+                  item.title
+                }}</el-checkbox>
               </div>
             </el-checkbox-group>
           </div>
@@ -778,46 +523,27 @@
       </div>
       <div slot="footer" class="dialog-footer">
         <el-button size="small" @click="copyClose" type="info">鍙� 娑�</el-button>
-        <el-button size="small" type="primary" @click="copySubmit()"
-          >纭� 瀹�</el-button
-        >
+        <el-button size="small" type="primary" @click="copySubmit()">纭� 瀹�</el-button>
       </div>
     </el-dialog>
 
-    <el-dialog
-      title="绉诲姩鑷�"
-      :visible.sync="moveVisiabled"
-      okText="淇濆瓨"
-      custom-class="copy-dialog"
-      cancelText="鍙栨秷"
-    >
+    <el-dialog title="绉诲姩鑷�" :visible.sync="moveVisiabled" okText="淇濆瓨" custom-class="copy-dialog" cancelText="鍙栨秷">
       <div class="addToBase1">
         <div class="items">
           <div class="lable">
             <p>榛戝悕鍗�</p>
           </div>
           <div class="baseList">
-            <el-checkbox-group
-              v-model="BaseManageData.selectBlacks"
-              @change="blackAngWhite"
-              :max="1"
-            >
+            <el-checkbox-group v-model="BaseManageData.selectBlacks" @change="blackAngWhite" :max="1">
               <div
                 class="base"
                 v-for="(item, index) in BaseManageData.blackList"
                 :key="index"
-                :class="
-                  BaseManageData.selectBlacks.includes(item.value)
-                    ? 'white-wrap'
-                    : ''
-                "
+                :class="BaseManageData.selectBlacks.includes(item.value) ? 'white-wrap' : ''"
               >
-                <el-checkbox
-                  :label="item.value"
-                  :title="item.title"
-                  :disabled="item.disabled"
-                  >{{ item.title }}</el-checkbox
-                >
+                <el-checkbox :label="item.value" :title="item.title" :disabled="item.disabled">{{
+                  item.title
+                }}</el-checkbox>
               </div>
             </el-checkbox-group>
           </div>
@@ -827,27 +553,16 @@
             <p>鐧藉悕鍗�</p>
           </div>
           <div class="baseList">
-            <el-checkbox-group
-              v-model="BaseManageData.selectWhites"
-              @change="blackAngWhite"
-              :max="1"
-            >
+            <el-checkbox-group v-model="BaseManageData.selectWhites" @change="blackAngWhite" :max="1">
               <div
                 class="base"
                 v-for="(item, index) in BaseManageData.whiteList"
                 :key="index"
-                :class="
-                  BaseManageData.selectWhites.includes(item.value)
-                    ? 'white-wrap'
-                    : ''
-                "
+                :class="BaseManageData.selectWhites.includes(item.value) ? 'white-wrap' : ''"
               >
-                <el-checkbox
-                  :label="item.value"
-                  :title="item.title"
-                  :disabled="item.disabled"
-                  >{{ item.title }}</el-checkbox
-                >
+                <el-checkbox :label="item.value" :title="item.title" :disabled="item.disabled">{{
+                  item.title
+                }}</el-checkbox>
               </div>
             </el-checkbox-group>
           </div>
@@ -855,9 +570,7 @@
       </div>
       <div slot="footer" class="dialog-footer">
         <el-button size="small" @click="moveClose" type="info">鍙� 娑�</el-button>
-        <el-button size="small" type="primary" @click="moveSubmit()"
-          >纭� 瀹�</el-button
-        >
+        <el-button size="small" type="primary" @click="moveSubmit()">纭� 瀹�</el-button>
       </div>
     </el-dialog>
   </div>
@@ -867,27 +580,29 @@
   updateBasePerson,
   deleteBasePersons,
   updateDbTableStatus,
-} from "@/api/baseLibrary";
-import { getCameraFaceData } from "@/api/es";
+  deleteDbPersonById,
+  deleteDBtablesById
+} from "@/api/baseLibrary"
+import { getCameraFaceData } from "@/api/es"
 // import { checkIDCard } from "@/api/utils";
-import { isIDCard } from "../../../scripts/validate";
+import { isIDCard } from "../../../scripts/validate"
 
-import axios from "axios";
-import UploadBtn from "./upload";
-import fTemplate from "@/components/fTemplate";
-import UploadIcon from "@/components/searching/UploadIcon.vue";
+import axios from "axios"
+import UploadBtn from "./upload"
+import fTemplate from "@/components/fTemplate"
+import UploadIcon from "@/components/searching/UploadIcon.vue"
 function isPhone(rule, value, callback) {
-      if (!value) {
-        return callback();
-      } else if (value.trim()) {
-        var pattern = /^1[345789]\d{9}$/;
-        if (pattern.test(value)) {
-          return callback();
-        }
-        return callback(new Error("杈撳叆鐨勬墜鏈哄彿閿欒"));
-      }
+  if (!value) {
+    return callback()
+  } else if (value.trim()) {
+    var pattern = /^1[345789]\d{9}$/
+    if (pattern.test(value)) {
+      return callback()
     }
-Date.prototype.Format = function (fmt) {
+    return callback(new Error("杈撳叆鐨勬墜鏈哄彿閿欒"))
+  }
+}
+Date.prototype.Format = function(fmt) {
   var o = {
     "M+": this.getMonth() + 1, //鏈堜唤
     "d+": this.getDate(), //鏃�
@@ -895,34 +610,59 @@
     "m+": this.getMinutes(), //鍒�
     "s+": this.getSeconds(), //绉�
     "q+": Math.floor((this.getMonth() + 3) / 3), //瀛e害
-    S: this.getMilliseconds(), //姣
-  };
-  if (/(y+)/.test(fmt))
-    fmt = fmt.replace(
-      RegExp.$1,
-      (this.getFullYear() + "").substr(4 - RegExp.$1.length)
-    );
+    S: this.getMilliseconds() //姣
+  }
+  if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length))
   for (var k in o)
     if (new RegExp("(" + k + ")").test(fmt))
-      fmt = fmt.replace(
-        RegExp.$1,
-        RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)
-      );
-  return fmt;
-};
+      fmt = fmt.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length))
+  return fmt
+}
 
 export default {
+  components: {
+    UploadBtn,
+    fTemplate,
+    UploadIcon
+  },
+  props: {
+    baseObject: {
+      default: () => {},
+      type: Object
+    },
+    syncType: {
+      type: String
+    }
+  },
+  computed: {
+    isAdmin() {
+      if (sessionStorage.getItem("userInfo") && sessionStorage.getItem("userInfo") !== "") {
+        let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username
+        return loginName === "superadmin" || loginName === "basic"
+      }
+      return false
+    },
+    delText() {
+      switch (this.delType) {
+        case "base":
+          return ["鍒犻櫎搴曞簱", "纭畾鍒犻櫎璇ュ簳搴擄紵"]
+        case "single":
+          return ["鍒犻櫎浜哄憳", "纭畾鍒犻櫎璇ュ簳搴撲汉鍛橈紵"]
+        case "batch":
+          return ["鎵归噺鍒犻櫎", "纭畾鍒犻櫎璇ュ簳搴撻�変腑浜哄憳锛�"]
+        default:
+          return ["", ""]
+      }
+    }
+  },
   data() {
     return {
-      timeRange: [
-        new Date(2020, 7, 25, 8),
-        new Date(new Date().setHours(23, 59, 59)),
-      ],
+      timeRange: [new Date(2020, 7, 25, 8), new Date(new Date().setHours(23, 59, 59))],
       memberInfo: {
         personName: "",
         sex: "",
         idCard: "",
-        reserved: "",
+        reserved: ""
       },
       askDeleteShow: false,
       toDeleteId: "",
@@ -930,7 +670,7 @@
         startTime: new Date(2020, 7, 25, 8).Format("yyyy-MM-dd HH:mm:ss"),
         endTime: new Date().Format("yyyy-MM-dd HH:mm:ss"),
         thresholdTime: 10,
-        faceId: [],
+        faceId: []
       },
       cameraDetailData: [],
       cameraDetailVisible: false,
@@ -950,15 +690,11 @@
       selectedRowKeys: [],
       inputPersonForm: {},
       rules: {
-        picDesc: [
-          { required: true, message: "璇疯緭鍏ョ収鐗囨爣璇�", trigger: "change" },
-        ],
+        picDesc: [{ required: true, message: "璇疯緭鍏ョ収鐗囨爣璇�", trigger: "change" }],
         sex: [{ required: true, message: "璇峰嬀閫夋�у埆", trigger: "change" }],
         idCard: [{ validator: isIDCard, trigger: "blur" }],
         phoneNum: [{ validator: isPhone, trigger: "blur" }],
-        monitorLevel: [
-          { required: true, message: "璇烽�夋嫨浜哄憳绛夌骇", trigger: "change" },
-        ],
+        monitorLevel: [{ required: true, message: "璇烽�夋嫨浜哄憳绛夌骇", trigger: "change" }]
       },
       tableData: [],
       oldWidth: "",
@@ -972,71 +708,55 @@
         failList: [],
         successList: [],
         multiFaceList: [],
-        noFaceList: [],
+        noFaceList: []
       },
-    };
+      delBtnLoading: false
+    }
   },
-  computed: {
-    isAdmin() {
-      if (
-        sessionStorage.getItem("userInfo") &&
-        sessionStorage.getItem("userInfo") !== ""
-      ) {
-        let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username;
-        return loginName === "superadmin" || loginName === "basic";
-      }
-      return false;
+
+  watch: {
+    "BaseManageData.selectBlacks": function(value) {
+      this.blackAngWhite()
     },
-    delText() {
-      switch (this.delType) {
-        case "base":
-          return ["鍒犻櫎搴曞簱", "纭畾鍒犻櫎璇ュ簳搴擄紵"];
-        case "single":
-          return ["鍒犻櫎浜哄憳", "纭畾鍒犻櫎璇ュ簳搴撲汉鍛橈紵"];
-        case "batch":
-          return ["鎵归噺鍒犻櫎", "纭畾鍒犻櫎璇ュ簳搴撻�変腑浜哄憳锛�"];
-        default:
-          return ["", ""];
-      }
-    },
+    "BaseManageData.selectWhites": function(value) {
+      this.blackAngWhite()
+    }
   },
   methods: {
     postCameraData() {
       getCameraFaceData(this.reqCameraParams).then((res) => {
         if (res && res.rtnCode == 1) {
-          this.cameraDetailData = res.rtnData;
-          this.faceDataCount = res.rtnData.length;
+          this.cameraDetailData = res.rtnData
+          this.faceDataCount = res.rtnData.length
         }
-      });
+      })
     },
     timeChange(val) {
-      this.reqCameraParams.startTime = val[0];
-      this.reqCameraParams.endTime = val[1];
+      this.reqCameraParams.startTime = val[0]
+      this.reqCameraParams.endTime = val[1]
     },
     showDetail(row) {
-      this.cameraDetailData = [];
-      this.memberInfo.reserved = row.reserved;
-      this.memberInfo.idCard = row.idCard;
-      this.memberInfo.personName = row.personName;
-      this.memberInfo.sex = row.sex;
-      this.reqCameraParams.faceId = row.id;
-      this.cameraDetailVisible = true;
+      this.cameraDetailData = []
+      this.memberInfo.reserved = row.reserved
+      this.memberInfo.idCard = row.idCard
+      this.memberInfo.personName = row.personName
+      this.memberInfo.sex = row.sex
+      this.reqCameraParams.faceId = row.id
+      this.cameraDetailVisible = true
     },
     isShow(authority) {
-      return (
-        this.isAdmin || this.buttonAuthority.indexOf("," + authority + ",") > -1
-      );
+      return this.isAdmin || this.buttonAuthority.indexOf("," + authority + ",") > -1
     },
     pickRow(row, column, event) {
-      this.$refs.multipleTable.toggleRowSelection(row);
+      this.$refs.multipleTable.toggleRowSelection(row)
     },
     toggleSelection(rows) {
       if (rows) {
         rows.forEach((row) => {
-          this.$refs.multipleTable.toggleRowSelection(row);
-        });
+          this.$refs.multipleTable.toggleRowSelection(row)
+        })
       } else {
-        this.$refs.multipleTable.clearSelection();
+        this.$refs.multipleTable.clearSelection()
       }
     },
     askDelete(typ, id) {
@@ -1045,166 +765,155 @@
           this.$notify({
             type: "warning",
             message: "璇烽�夋嫨瑕佸垹闄ょ殑浜哄憳",
-            duration: 1000000,
-          });
-          return;
+            duration: 1000000
+          })
+          return
         }
       }
-      this.askDeleteShow = true;
-      this.delType = typ;
-      id && (this.toDeleteId = id);
+      this.askDeleteShow = true
+      this.delType = typ
+      id && (this.toDeleteId = id)
     },
-    deleteThis() {
-      let token =
-        sessionStorage.getItem("loginedInfo") &&
-        JSON.parse(sessionStorage.getItem("loginedInfo")).access_token;
-
-      fetch(`/data/api-v/dbperson/deleteDbPersonById?id=${this.toDeleteId}`, {
-        method: "GET",
-        headers: {
-          "Content-Type": "application/json",
-          Authorization: token,
-        },
-      })
-        .then((res) => {
-          return res.json();
-        })
-        .then((data) => {
-          if (data.success) {
-            this.$notify({
-              type: "success",
-              message: "璇ヤ汉鍛樺垹闄ゆ垚鍔燂紒",
-            });
-            this.askDeleteShow = false;
-          }
-          this.getPersonList();
-        })
-        .catch((err) => {});
-    },
-    sayHello() {},
     getUploadResult(result) {
-      this.uploadResult = result.data;
-      this.dialogVisible = true;
-      this.getPersonList();
+      this.uploadResult = result.data
+      this.dialogVisible = true
+      this.getPersonList()
     },
     async setEnable(item) {
       let res = await updateDbTableStatus({
         id: item.id,
-        enable: item.enable,
-      });
+        enable: item.enable
+      })
       if (res.success) {
         this.$notify({
           type: "success",
-          message: "搴曞簱鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒",
-        });
+          message: "搴曞簱鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒"
+        })
       } else {
         this.$notify({
           type: "error",
-          message: "搴曞簱鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒",
-        });
+          message: "搴曞簱鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒"
+        })
       }
     },
     isDisabled(item) {
-      var flag = true;
+      var flag = true
       if (this.isShow("library:set")) {
         if (item.endTime == "") {
-          flag = false;
+          flag = false
         } else {
-          flag = !this.$moment(new Date()).isBetween(
-            item.startTime,
-            item.endTime
-          );
+          flag = !this.$moment(new Date()).isBetween(item.startTime, item.endTime)
         }
       }
-      return flag;
+      return flag
     },
     edit() {
-      this.$emit("changeShow", this.baseObject, this.syncType);
+      this.$emit("changeShow", this.baseObject, this.syncType)
+    },
+
+    deleteThis() {
+      deleteDbPersonById({ id: this.toDeleteId })
+        .then((data) => {
+          if (data.success) {
+            this.$notify({
+              type: "success",
+              message: "璇ヤ汉鍛樺垹闄ゆ垚鍔燂紒"
+            })
+          }
+          this.getPersonList()
+        })
+        .catch((err) => {})
     },
     deleteBase() {
-      let token =
-        sessionStorage.getItem("loginedInfo") &&
-        JSON.parse(sessionStorage.getItem("loginedInfo")).access_token;
-      fetch(`/data/api-v/dbtable/deleteDBtablesById?id=${this.baseObject.id}`, {
-        method: "GET",
-        headers: {
-          "Content-Type": "application/json",
-          Authorization: token,
-        },
-      })
-        .then((res) => {
-          return res.json();
-        })
+      deleteDBtablesById({ id: this.baseObject.id })
         .then((res) => {
           if (res.success) {
             this.$notify({
               type: "success",
-              message: "搴曞簱鍒犻櫎鎴愬姛锛�",
-            });
+              message: "搴曞簱鍒犻櫎鎴愬姛锛�"
+            })
           }
-          this.askDeleteShow=false
 
-          this.$emit("onDelete");
+          this.$emit("onDelete")
         })
         .catch((err) => {
           this.$notify({
             type: "error",
-            message: err,
-          });
-        });
+            message: err
+          })
+        })
+    },
+    async deleteBatch() {
+      let ids = []
+      this.selectedRowKeys.map((item, index) => {
+        ids.push(item.id)
+      })
+      let res = await deleteBasePersons({ ids: ids })
+      if (res.success) {
+        this.$notify({
+          type: "success",
+          message: "鍒犻櫎鎴愬姛锛�"
+        })
+        this.getPersonList()
+      } else {
+        this.$notify({
+          type: "error",
+          message: "鍒犻櫎澶辫触锛�"
+        })
+      }
     },
     async getPersonList() {
       this.$nextTick(() => {
         if (this.baseObject.id && this.baseObject.id !== undefined) {
-          this.BaseManageData.tableId = this.baseObject.id;
-          this.setLoadSearch(this.BaseManageData.queryPersonList());
+          this.BaseManageData.tableId = this.baseObject.id
+          this.setLoadSearch(this.BaseManageData.queryPersonList())
         }
-      });
+      })
     },
     changeDialog(data) {
       data.erFileList.map((item, index) => {
         this.$notify({
           type: "error",
-          message: item.errorMsg.message,
-        });
-      });
+          message: item.errorMsg.message
+        })
+      })
     },
     handleClose() {
-      this.showInfoDrawer = false;
+      this.showInfoDrawer = false
     },
     handleSelectionChange(val) {
-      this.selectedRowKeys = val;
+      this.selectedRowKeys = val
     },
     refrash(current, pageSize) {
-      this.current = current;
-      this.BaseManageData.page = current;
-      this.getPersonList();
+      this.current = current
+      this.BaseManageData.page = current
+      this.getPersonList()
     },
     handleSizeChange(val) {
-      this.BaseManageData.size = val;
-      this.getPersonList();
+      this.BaseManageData.size = val
+      this.getPersonList()
     },
     editRow(row) {
-      this.inputPersonForm = { ...row };
-      this.showInfoDrawer = true;
+      this.inputPersonForm = { ...row }
+      this.showInfoDrawer = true
     },
     async submit() {
       this.$refs["formForEdit"].validate(async (valid) => {
         if (valid) {
-          let { ...json } = this.inputPersonForm;
-          delete json["compareScore"];
-          let res = await updateBasePerson(json);
+          let { ...json } = this.inputPersonForm
+          delete json["compareScore"]
+          let res = await updateBasePerson(json)
           if (res.success) {
             this.getPersonList()
-            this.$notify.success("浜哄憳淇敼鎴愬姛锛�");
-            this.showInfoDrawer = false;
+            this.$notify.success("浜哄憳淇敼鎴愬姛锛�")
+            this.showInfoDrawer = false
           } else {
-            this.$notify.error("浜哄憳淇敼澶辫触锛岃閲嶈瘯锛�");
+            this.$notify.error("浜哄憳淇敼澶辫触锛岃閲嶈瘯锛�")
           }
         } else {
-          return false;
+          return false
         }
-      });
+      })
     },
     async enable(item) {
       let res = await updateBasePerson({
@@ -1217,40 +926,44 @@
         phoneNum: item.phoneNum,
         monitorLevel: item.monitorLevel,
         personPicUrl: item.personPicUrl,
-        reserved: item.reserved,
-      });
+        reserved: item.reserved
+      })
       if (res.success === true) {
         this.$notify({
           type: "success",
-          message: "搴曞簱浜哄憳鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒",
-        });
+          message: "搴曞簱浜哄憳鎴愬姛鍙樻洿鐢熸晥鐘舵�侊紒"
+        })
       } else {
         this.$notify({
           type: "error",
-          message: "搴曞簱浜哄憳鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒",
-        });
+          message: "搴曞簱浜哄憳鍙樻洿鐢熸晥鐘舵�佸け璐ワ紒"
+        })
       }
     },
     handleSearch() {
-      this.getPersonList();
+      this.getPersonList()
     },
-    handleDel() {
+    async handleDel() {
+      this.delBtnLoading = true
       if (this.delType == "single") {
-        this.deleteThis();
+        await this.deleteThis()
       } else if (this.delType == "base") {
-        this.deleteBase();
+        await this.deleteBase()
       } else if (this.delType == "batch") {
-        this.deleteBatch();
+        await this.deleteBatch()
       }
+
+      this.delBtnLoading = false
+      this.askDeleteShow = false
     },
     searchImg() {
-      this.$refs.uploadDrag && this.$refs.uploadDrag.uploadStart();
+      this.$refs.uploadDrag && this.$refs.uploadDrag.uploadStart()
     },
     haveScore(row) {
       if (row.compareScore && row.compareScore !== "") {
-        return true;
+        return true
       } else {
-        return false;
+        return false
       }
     },
     async searchImgList(faceUrl, threshold) {
@@ -1261,262 +974,199 @@
         faceUrl: faceUrl,
         threshold: threshold,
         orderType: this.orderType,
-        orderName: this.orderName,
-      };
-      let res = await getPersonByPhoto(json);
-      this.tableData = res.data.datalist;
-      this.total = res.data.total;
-      this.compare = true;
+        orderName: this.orderName
+      }
+      let res = await getPersonByPhoto(json)
+      this.tableData = res.data.datalist
+      this.total = res.data.total
+      this.compare = true
     },
     updateThreshold() {},
     async updateFace(param) {
-      const fd = new FormData();
-      fd.append("file", param.file);
-      fd.append("id", this.inputPersonForm.id);
+      const fd = new FormData()
+      fd.append("file", param.file)
+      fd.append("id", this.inputPersonForm.id)
       let res = await axios({
         method: "post",
         url: `/data/api-v/dbperson/updateFace`,
         headers: {
           Authorization:
-            sessionStorage.getItem("loginedInfo") &&
-            JSON.parse(sessionStorage.getItem("loginedInfo")).access_token,
+            sessionStorage.getItem("loginedInfo") && JSON.parse(sessionStorage.getItem("loginedInfo")).access_token
         },
-        data: fd,
-      });
+        data: fd
+      })
       if (res.data.success) {
-        this.inputPersonForm.persoasyncnPicUrl = res.data.data.personPicUrl;
-        this.inputPersonForm.faceFeature = res.data.data.faceFeature;
+        this.inputPersonForm.persoasyncnPicUrl = res.data.data.personPicUrl
+        this.inputPersonForm.faceFeature = res.data.data.faceFeature
       }
     },
     uploadSuccess() {},
     uploadError() {},
-    async deleteBatch() {
-      let ids = [];
-      this.selectedRowKeys.map((item, index) => {
-        ids.push(item.id);
-      });
-      let res = await deleteBasePersons(ids);
-      if (res.success) {
-        this.$notify({
-          type: "success",
-          message: "鍒犻櫎鎴愬姛锛�",
-        });
-        this.getPersonList();
-      } else {
-        this.$notify({
-          type: "error",
-          message: "鍒犻櫎澶辫触锛�",
-        });
-      }
-    },
     async init() {
-      await this.BaseManageData.querySyncTables();
-      await this.BaseManageData.queryLocalTables();
+      await this.BaseManageData.querySyncTables()
+      await this.BaseManageData.queryLocalTables()
       if (this.baseObject.id && this.baseObject.id !== undefined) {
-      } else if (
-        this.BaseManageData.syncTables[0].id &&
-        this.BaseManageData.syncTables[0].id !== undefined
-      ) {
-        this.BaseManageData.tableId = this.BaseManageData.syncTables[0].id;
-        this.BaseManageData.queryPersonList();
+      } else if (this.BaseManageData.syncTables[0].id && this.BaseManageData.syncTables[0].id !== undefined) {
+        this.BaseManageData.tableId = this.BaseManageData.syncTables[0].id
+        this.BaseManageData.queryPersonList()
       } else {
-        this.BaseManageData.tableId = this.BaseManageData.localTables[0].id;
-        this.BaseManageData.queryPersonList();
+        this.BaseManageData.tableId = this.BaseManageData.localTables[0].id
+        this.BaseManageData.queryPersonList()
       }
     },
     blackAngWhite() {
       if (this.BaseManageData.selectBlacks.length > 0) {
         for (let i = 0; i < this.BaseManageData.whiteList.length; i++) {
           //this.VideoPhotoData.whiteList[i].disabled = true
-          this.$set(this.BaseManageData.whiteList[i], "disabled", true);
+          this.$set(this.BaseManageData.whiteList[i], "disabled", true)
         }
       }
       if (this.BaseManageData.selectBlacks.length == 0) {
         for (let i = 0; i < this.BaseManageData.whiteList.length; i++) {
           //this.VideoPhotoData.whiteList[i].disabled = false
-          this.$set(this.BaseManageData.whiteList[i], "disabled", false);
+          this.$set(this.BaseManageData.whiteList[i], "disabled", false)
         }
       }
       if (this.BaseManageData.selectWhites.length > 0) {
         for (let i = 0; i < this.BaseManageData.blackList.length; i++) {
           // this.VideoPhotoData.blackList[i].disabled = true
-          this.$set(this.BaseManageData.blackList[i], "disabled", true);
+          this.$set(this.BaseManageData.blackList[i], "disabled", true)
         }
       }
       if (this.BaseManageData.selectWhites.length == 0) {
         for (let i = 0; i < this.BaseManageData.blackList.length; i++) {
           //this.VideoPhotoData.blackList[i].disabled = false
-          this.$set(this.BaseManageData.blackList[i], "disabled", false);
+          this.$set(this.BaseManageData.blackList[i], "disabled", false)
         }
       }
     },
     tosearch(item) {
       //let captureId = item.id == "" ? item.baseInfo[0].targetId : item.id
-      let captureId = item.id == "" ? item.personId : item.id;
-      let imgUrl = item.personPicUrl ? item.personPicUrl : item.personPicUrl;
-      let compType = 0;
+      let captureId = item.id == "" ? item.personId : item.id
+      let imgUrl = item.personPicUrl ? item.personPicUrl : item.personPicUrl
+      let compType = 0
 
       let message =
-        "toSearch?showType=findByPic&targetId=" +
-        captureId +
-        "&picSmUrl=" +
-        imgUrl +
-        "&compType=" +
-        compType;
+        "toSearch?showType=findByPic&targetId=" + captureId + "&picSmUrl=" + imgUrl + "&compType=" + compType
       window.parent.postMessage(
         {
-          msg: message,
+          msg: message
         },
         "*"
-      );
+      )
     },
     copyClick(row) {
-      this.BaseManageData.personId = row.id;
-      this.copyVisiabled = true;
+      this.BaseManageData.personId = row.id
+      this.copyVisiabled = true
     },
     moveClick(row) {
-      this.BaseManageData.personId = row.id;
-      this.moveVisiabled = true;
+      this.BaseManageData.personId = row.id
+      this.moveVisiabled = true
     },
     copyClose() {
-      this.copyVisiabled = false;
-      this.BaseManageData.personId = "";
-      this.BaseManageData.selectBlacks = [];
-      this.BaseManageData.selectWhites = [];
+      this.copyVisiabled = false
+      this.BaseManageData.personId = ""
+      this.BaseManageData.selectBlacks = []
+      this.BaseManageData.selectWhites = []
     },
     moveClose() {
-      this.moveVisiabled = false;
-      this.BaseManageData.personId = "";
-      this.BaseManageData.selectBlacks = [];
-      this.BaseManageData.selectWhites = [];
+      this.moveVisiabled = false
+      this.BaseManageData.personId = ""
+      this.BaseManageData.selectBlacks = []
+      this.BaseManageData.selectWhites = []
     },
     copySubmit() {
-      if (
-        this.BaseManageData.selectBlacks.length === 0 &&
-        this.BaseManageData.selectWhites.length === 0
-      ) {
+      if (this.BaseManageData.selectBlacks.length === 0 && this.BaseManageData.selectWhites.length === 0) {
         this.$notify({
           title: "娉ㄦ剰",
           message: "璇烽�夋嫨瑕佸鍒跺埌鐨勫簱",
-          type: "warning",
-        });
-        return;
+          type: "warning"
+        })
+        return
       }
-      var resp = this.BaseManageData.copyTo();
+      var resp = this.BaseManageData.copyTo()
       resp.then((data) => {
         if (data.success) {
           this.$notify({
             title: "鎴愬姛",
             message: data.data,
-            type: "success",
-          });
+            type: "success"
+          })
         } else {
           this.$notify({
             title: "澶辫触",
             message: data.data,
-            type: "error",
-          });
+            type: "error"
+          })
         }
-      });
-      this.copyVisiabled = false;
-      this.BaseManageData.personId = "";
-      this.BaseManageData.selectBlacks = [];
-      this.BaseManageData.selectWhites = [];
+      })
+      this.copyVisiabled = false
+      this.BaseManageData.personId = ""
+      this.BaseManageData.selectBlacks = []
+      this.BaseManageData.selectWhites = []
     },
     moveSubmit() {
-      if (
-        this.BaseManageData.selectBlacks.length === 0 &&
-        this.BaseManageData.selectWhites.length === 0
-      ) {
+      if (this.BaseManageData.selectBlacks.length === 0 && this.BaseManageData.selectWhites.length === 0) {
         this.$notify({
           title: "娉ㄦ剰",
           message: "璇烽�夋嫨瑕佺Щ鍔ㄥ埌鐨勫簱",
-          type: "warning",
-        });
-        return;
+          type: "warning"
+        })
+        return
       }
-      var resp = this.BaseManageData.moveTo();
+      var resp = this.BaseManageData.moveTo()
       resp.then((data) => {
         if (data.success) {
           this.$notify({
             title: "鎴愬姛",
             message: data.data,
-            type: "success",
-          });
+            type: "success"
+          })
         } else {
           this.$notify({
             title: "澶辫触",
             message: data.data,
-            type: "error",
-          });
+            type: "error"
+          })
         }
-        this.moveVisiabled = false;
-        this.BaseManageData.personId = "";
-        this.BaseManageData.selectBlacks = [];
-        this.BaseManageData.selectWhites = [];
-        this.BaseManageData.queryPersonList();
-      });
+        this.moveVisiabled = false
+        this.BaseManageData.personId = ""
+        this.BaseManageData.selectBlacks = []
+        this.BaseManageData.selectWhites = []
+        this.BaseManageData.queryPersonList()
+      })
     },
     setLoadSearch(fn) {
-      this.AuthData.setLoading("multipleTable", this);
+      this.AuthData.setLoading("multipleTable", this)
       fn.then((_) => {
-        this.AuthData.closeLoad();
-      });
-    },
+        this.AuthData.closeLoad()
+      })
+    }
   },
   mounted() {
-    this.getPersonList();
-    this.VideoPhotoData.queryDictionary();
-    this.BaseManageData.queryTagList();
-    this.oldWidth = document.body.clientWidth;
-    this.oldHeight = document.body.clientHeight;
-    this.blackAngWhite();
+    this.getPersonList()
+    this.VideoPhotoData.queryDictionary()
+    this.BaseManageData.queryTagList()
+    this.oldWidth = document.body.clientWidth
+    this.oldHeight = document.body.clientHeight
+    this.blackAngWhite()
     window.onresize = () => {
-      let width = document.body.clientWidth;
-      let height = document.body.clientHeight;
+      let width = document.body.clientWidth
+      let height = document.body.clientHeight
       if (width !== this.oldWidth && width < 1750) {
       }
       this.$nextTick(() => {
-        this.$refs.multipleTable.doLayout();
-      });
-    };
+        this.$refs.multipleTable.doLayout()
+      })
+    }
     this.$nextTick(() => {
-      this.$refs.multipleTable.doLayout();
-    });
+      this.$refs.multipleTable.doLayout()
+    })
   },
   beforeDestroy() {
-    window.onresize = null;
-  },
-  watch: {
-    baseObject: {
-      handler(newVal, oldVal) {
-        this.BaseManageData.cleanData();
-        this.getPersonList();
-      },
-      deep: true,
-    },
-    "BaseManageData.selectBlacks": function (value) {
-      this.blackAngWhite();
-    },
-    "BaseManageData.selectWhites": function (value) {
-      this.blackAngWhite();
-    },
-  },
-  components: {
-    UploadBtn,
-    fTemplate,
-    UploadIcon,
-  },
-  props: {
-    baseObject: {
-      default: () => {},
-      type: Object,
-    },
-    syncType: {
-      type: String,
-    },
-  },
-};
+    window.onresize = null
+  }
+}
 </script>
 <style lang="scss">
 .activeRow {
@@ -1763,8 +1413,7 @@
         padding-top: 2px;
         left: 15px;
       }
-      .el-form-item.is-required:not(.is-no-asterisk)
-        > .el-form-item__label:before {
+      .el-form-item.is-required:not(.is-no-asterisk) > .el-form-item__label:before {
         color: #fe6d68;
       }
       .el-col-20 {
@@ -1815,9 +1464,7 @@
       display: none;
     }
     .el-table--border .el-table__cell,
-    .el-table__body-wrapper
-      .el-table--border.is-scrolling-left
-      ~ .el-table__fixed {
+    .el-table__body-wrapper .el-table--border.is-scrolling-left ~ .el-table__fixed {
       border-right: none;
     }
     td {
diff --git a/src/pages/library/index/App.vue b/src/pages/library/index/App.vue
index 29a1271..a56c999 100644
--- a/src/pages/library/index/App.vue
+++ b/src/pages/library/index/App.vue
@@ -47,30 +47,30 @@
   </div>
 </template>
 <script>
-import baseList from "../components/baseList";
-import addBase from "../components/addBase";
-import personList from "../components/personList";
-import carList from "../components/carList";
-const colorRgb = function (s) {
-  var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
-  var color = s.toLowerCase();
+import baseList from "../components/baseList"
+import addBase from "../components/addBase"
+import personList from "../components/personList"
+import carList from "../components/carList"
+const colorRgb = function(s) {
+  var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/
+  var color = s.toLowerCase()
   if (reg.test(color)) {
     if (color.length === 4) {
-      var colorNew = "#";
+      var colorNew = "#"
       for (var i = 1; i < 4; i += 1) {
-        colorNew += color.slice(i, i + 1).concat(color.slice(i, i + 1));
+        colorNew += color.slice(i, i + 1).concat(color.slice(i, i + 1))
       }
-      color = colorNew;
+      color = colorNew
     }
-    var colorChange = [];
+    var colorChange = []
     for (var i = 1; i < 7; i += 2) {
-      colorChange.push(parseInt("0x" + color.slice(i, i + 2)));
+      colorChange.push(parseInt("0x" + color.slice(i, i + 2)))
     }
-    return "" + colorChange.join(",") + "";
+    return "" + colorChange.join(",") + ""
   } else {
-    return color;
+    return color
   }
-};
+}
 export default {
   data() {
     return {
@@ -86,94 +86,92 @@
         {
           name: "搴曞簱绠$悊",
           path: "/baseManage",
-          params: {},
+          params: {}
         },
         {
           name: "搴曞簱璇︽儏",
           path: "/baseManage",
-          params: {},
-        },
-      ],
-    };
+          params: {}
+        }
+      ]
+    }
   },
   methods: {
     getPersonList(item, type) {
-      this.baseObject = item;
-      this.baseForEdit = item;
-      this.syncType = type;
+      this.baseObject = item
+      this.baseForEdit = item
+      this.syncType = type
+
       // 鐩存帴璋冪敤瀛愮粍浠跺埛鏂板垪琛ㄧ殑鏂规硶
       // 鍒ゆ柇杩欐槸浜哄憳搴撹繕鏄溅杈嗗簱锛屽喅瀹歴howList鐨勫��
-      if (item.tableType == "person") {
-        this.showType = "person";
-        this.$refs.personList.getPersonList();
-      } else if (item.tableType == "car") {
-        this.showType = "car";
-        this.$refs.carList.getCarList();
-      }
-      this.breeadCrumb[1].name = "搴曞簱璇︽儏";
+      this.$nextTick(() => {
+        if (item.tableType == "person") {
+          this.showType = "person"
+          this.$refs.personList.getPersonList()
+        } else if (item.tableType == "car") {
+          this.showType = "car"
+          this.$refs.carList.getCarList()
+        }
+      })
+      this.breeadCrumb[1].name = "搴曞簱璇︽儏"
     },
     changeToAdd(item, type) {
       if (item !== null) {
-        this.baseForEdit = item;
-        this.breeadCrumb[1].name = "搴曞簱淇℃伅";
+        this.baseForEdit = item
+        this.breeadCrumb[1].name = "搴曞簱淇℃伅"
       } else {
-        this.baseForEdit = {};
-        this.breeadCrumb[1].name = "娣诲姞搴曞簱";
+        this.baseForEdit = {}
+        this.breeadCrumb[1].name = "娣诲姞搴曞簱"
       }
-      this.syncType = type;
-      this.showList = false;
+      this.syncType = type
+      this.showList = false
     },
     initBaseList() {
-      this.$refs.baseSync.init();
+      this.$refs.baseSync.init()
     },
     // 鏌ヨ鍚屾搴撳垪琛ㄦ暟鎹甛鏌ヨ鏈湴搴撳垪琛ㄦ暟鎹�
     findBaseSync() {
-      this.BaseManageData.querySyncTables();
-      this.BaseManageData.queryLocalTables();
+      this.BaseManageData.querySyncTables()
+      this.BaseManageData.queryLocalTables()
     },
     closeAdd() {
-      this.showList = true;
-      this.$refs.baseSync.init(this.syncType);
-    },
+      this.showList = true
+      this.$refs.baseSync.init(this.syncType)
+    }
   },
   props: {
     cameraId: {
       default: "",
-      type: String,
-    },
+      type: String
+    }
   },
   components: {
     baseList,
     addBase,
     personList,
-    carList,
+    carList
   },
   mounted() {
     window.addEventListener("message", (e) => {
       if (e.data.msg === "changeColor") {
-        const res = colorRgb(e.data.color);
-        document.documentElement.style.setProperty(
-          "--colorCard",
-          `${e.data.color}`
-        );
+        const res = colorRgb(e.data.color)
+        document.documentElement.style.setProperty("--colorCard", `${e.data.color}`)
       }
-    });
+    })
   },
   created() {
-    let color = localStorage.getItem("--colorCard");
+    let color = localStorage.getItem("--colorCard")
     if (color) {
-      document.documentElement.style.setProperty("--colorCard", `${color}`);
+      document.documentElement.style.setProperty("--colorCard", `${color}`)
     } else {
-      color = getComputedStyle(document.documentElement).getPropertyValue(
-        "--colorCard"
-      );
-      const res = colorRgb(color);
-      document.documentElement.style.setProperty("--colorCard-rgb", `${res}`);
+      color = getComputedStyle(document.documentElement).getPropertyValue("--colorCard")
+      const res = colorRgb(color)
+      document.documentElement.style.setProperty("--colorCard-rgb", `${res}`)
     }
-  },
-};
+  }
+}
 </script>
-<style lang="scss" >
+<style lang="scss">
 .s-base-manage {
   box-sizing: border-box;
   background-color: #eff1f5;

--
Gitblit v1.8.0