From d365829b14ca4256d39694b9cdcd43bad0ad8595 Mon Sep 17 00:00:00 2001
From: ZZJ <zzjdsg2300@163.com>
Date: 星期五, 11 二月 2022 18:18:39 +0800
Subject: [PATCH] bug修复

---
 src/pages/library/components/personList.vue |  108 +++++++++++++++++++++++++-----------------------------
 1 files changed, 50 insertions(+), 58 deletions(-)

diff --git a/src/pages/library/components/personList.vue b/src/pages/library/components/personList.vue
index 09726bb..5fbd37e 100644
--- a/src/pages/library/components/personList.vue
+++ b/src/pages/library/components/personList.vue
@@ -202,7 +202,7 @@
                 <span
                   class="iconfont iconbianjixinxi-09"
                   style="font-size: 24px; cursor: pointer"
-                  @click="handleClick(scope.row)"
+                  @click="editRow(scope.row)"
                 ></span>
               </el-tooltip>
             </fTemplate>
@@ -424,7 +424,7 @@
     <el-drawer title="淇敼淇℃伅" :modal="false" :visible.sync="showInfoDrawer">
       <el-form
         ref="formForEdit"
-        :model="form"
+        :model="inputPersonForm"
         label-width="100px"
         :rules="rules"
       >
@@ -459,8 +459,8 @@
               </div>
             </div>
             <img
-              v-if="`httpImage/` + form.personPicUrl"
-              :src="`/httpImage/` + form.personPicUrl"
+              v-if="`httpImage/` + inputPersonForm.personPicUrl"
+              :src="`/httpImage/` + inputPersonForm.personPicUrl"
               style="
                 max-height: 100px;
                 width: 100px;
@@ -476,7 +476,7 @@
             <el-form-item label="ID" style="width: 100%; margin-bottom: 20px">
               <el-input
                 size="small"
-                v-model="form.id"
+                v-model="inputPersonForm.id"
                 disabled
                 placeholder="璇疯緭鍏�"
               ></el-input>
@@ -492,7 +492,7 @@
             >
               <el-input
                 size="small"
-                v-model="form.picDesc"
+                v-model="inputPersonForm.picDesc"
                 placeholder="璇疯緭鍏�"
               ></el-input>
             </el-form-item>
@@ -503,7 +503,7 @@
             <el-form-item label="濮撳悕" style="width: 100%; margin-bottom: 20px">
               <el-input
                 size="small"
-                v-model="form.personName"
+                v-model="inputPersonForm.personName"
                 placeholder="璇疯緭鍏�"
               ></el-input>
             </el-form-item>
@@ -516,7 +516,7 @@
               prop="sex"
               style="width: 100%; margin-bottom: 20px; text-align: left"
             >
-              <el-radio-group v-model="form.sex" class="mt10">
+              <el-radio-group v-model="inputPersonForm.sex" class="mt10">
                 <el-radio label="鐢�"></el-radio>
                 <el-radio label="濂�"></el-radio>
               </el-radio-group>
@@ -527,11 +527,12 @@
           <el-col :span="20">
             <el-form-item
               label="韬唤璇佸彿"
+              prop="idCard"
               style="width: 100%; margin-bottom: 20px"
             >
               <el-input
                 size="small"
-                v-model="form.idCard"
+                v-model="inputPersonForm.idCard"
                 placeholder="璇疯緭鍏�"
               ></el-input>
             </el-form-item>
@@ -541,11 +542,12 @@
           <el-col :span="20">
             <el-form-item
               label="鎵嬫満鍙�"
+              prop="phoneNum"
               style="width: 100%; margin-bottom: 20px"
             >
               <el-input
                 size="small"
-                v-model="form.phoneNum"
+                v-model="inputPersonForm.phoneNum"
                 placeholder="璇疯緭鍏�"
               ></el-input>
             </el-form-item>
@@ -560,7 +562,7 @@
             >
               <el-select
                 size="small"
-                v-model="form.monitorLevel"
+                v-model="inputPersonForm.monitorLevel"
                 placeholder="璇烽�夋嫨"
                 style="width: 100%"
               >
@@ -582,7 +584,7 @@
             >
               <el-input
                 size="small"
-                v-model="form.fromServerId"
+                v-model="inputPersonForm.fromServerId"
                 disabled
               ></el-input>
             </el-form-item>
@@ -596,7 +598,7 @@
             >
               <el-input
                 size="small"
-                v-model="form.createTime"
+                v-model="inputPersonForm.createTime"
                 disabled
               ></el-input>
             </el-form-item>
@@ -607,7 +609,7 @@
             <el-form-item label="鍏朵粬" style="width: 100%; margin-bottom: 20px">
               <el-input
                 size="small"
-                v-model="form.reserved"
+                v-model="inputPersonForm.reserved"
                 placeholder="璇疯緭鍏�"
               ></el-input>
             </el-form-item>
@@ -615,19 +617,20 @@
         </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
         >
         <el-button
           size="small"
           class="sure-btn"
           type="primary"
-          @click="submit()"
-          >纭� 瀹�</el-button
+          @click="submit"
+          >纭畾</el-button
         >
       </div>
     </el-drawer>
@@ -866,11 +869,24 @@
   updateDbTableStatus,
 } from "@/api/baseLibrary";
 import { getCameraFaceData } from "@/api/es";
+// import { checkIDCard } from "@/api/utils";
+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";
-
+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("杈撳叆鐨勬墜鏈哄彿閿欒"));
+      }
+    }
 Date.prototype.Format = function (fmt) {
   var o = {
     "M+": this.getMonth() + 1, //鏈堜唤
@@ -918,7 +934,6 @@
       },
       cameraDetailData: [],
       cameraDetailVisible: false,
-      dialogFormVisible: false,
       copyVisiabled: false,
       moveVisiabled: false,
       buttonAuthority: sessionStorage.getItem("buttonAuthoritys") || [],
@@ -933,24 +948,14 @@
       visible: false,
       showInfoDrawer: false,
       selectedRowKeys: [],
-      form: {
-        id: "",
-        sex: "鐢�",
-        personName: "鍛靛懙鍛�",
-        tableId: "",
-        picDesc: "",
-        idCard: "12312938102143253",
-        phoneNum: "18712766787",
-        monitorLevel: "one",
-        faceUrl: "group2/M00/0A/D7/wKgBnFyjH0-AUE5eAAC8hSMP2Yw110.jpg",
-        enable: 0,
-        reserved: "",
-      },
+      inputPersonForm: {},
       rules: {
         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" },
         ],
@@ -1149,10 +1154,10 @@
     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) => {
@@ -1177,39 +1182,26 @@
       this.BaseManageData.size = val;
       this.getPersonList();
     },
-    handleClick(row) {
-      this.form = row;
+    editRow(row) {
+      this.inputPersonForm = { ...row };
       this.showInfoDrawer = true;
     },
     async submit() {
       this.$refs["formForEdit"].validate(async (valid) => {
         if (valid) {
-          let { ...json } = this.form;
+          let { ...json } = this.inputPersonForm;
           delete json["compareScore"];
           let res = await updateBasePerson(json);
           if (res.success) {
-            this.$notify({
-              type: "success",
-              message: "浜哄憳淇敼鎴愬姛锛�",
-            });
+            this.getPersonList()
+            this.$notify.success("浜哄憳淇敼鎴愬姛锛�");
             this.showInfoDrawer = false;
           } else {
-            this.$notify({
-              type: "error",
-              message: "浜哄憳淇敼澶辫触锛岃閲嶈瘯锛侊紒",
-            });
+            this.$notify.error("浜哄憳淇敼澶辫触锛岃閲嶈瘯锛�");
           }
         } else {
           return false;
         }
-      });
-    },
-    confirm() {
-      this.$confirm({
-        title: "Confirm",
-        content: "Bla bla ...",
-        okText: "纭",
-        cancelText: "鍙栨秷",
       });
     },
     async enable(item) {
@@ -1278,7 +1270,7 @@
     async updateFace(param) {
       const fd = new FormData();
       fd.append("file", param.file);
-      fd.append("id", this.form.id);
+      fd.append("id", this.inputPersonForm.id);
       let res = await axios({
         method: "post",
         url: `/data/api-v/dbperson/updateFace`,
@@ -1290,8 +1282,8 @@
         data: fd,
       });
       if (res.data.success) {
-        this.form.persoasyncnPicUrl = res.data.data.personPicUrl;
-        this.form.faceFeature = res.data.data.faceFeature;
+        this.inputPersonForm.persoasyncnPicUrl = res.data.data.personPicUrl;
+        this.inputPersonForm.faceFeature = res.data.data.faceFeature;
       }
     },
     uploadSuccess() {},

--
Gitblit v1.8.0