From 21f203a1f24ab2a869ba942a1f1f7c24e80a2b77 Mon Sep 17 00:00:00 2001
From: hanbaoshan <hanbaoshan@aiotlink.com>
Date: 星期三, 26 八月 2020 15:01:15 +0800
Subject: [PATCH] 底库新增图表结果展示

---
 src/pages/library/components/personList.vue |  130 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 129 insertions(+), 1 deletions(-)

diff --git a/src/pages/library/components/personList.vue b/src/pages/library/components/personList.vue
index 6ade657..22891c7 100644
--- a/src/pages/library/components/personList.vue
+++ b/src/pages/library/components/personList.vue
@@ -155,6 +155,9 @@
             <el-tooltip content="鏌ユ壘姝や汉" placement="top" popper-class="atooltip">
               <span class="iconfont iconsousuoren iconStyle1" @click="tosearch(scope.row)"></span>
             </el-tooltip>
+            <el-tooltip content="鏌ョ湅璇︽儏" placement="top" popper-class="atooltip">
+              <span class="iconfont iconsousuoren iconStyle1" @click="showDetail(scope.row)"></span>
+            </el-tooltip>
             <fTemplate authority="videoTable:edit">
               <el-tooltip content="澶嶅埗" placement="top" popper-class="atooltip">
                 <span
@@ -197,6 +200,46 @@
         :total="BaseManageData.total"
       ></el-pagination>
     </div>
+    <el-dialog title="鎶撴媿璇︽儏" :visible.sync="cameraDetailVisible" okText="纭畾" >
+      <div class="top-bar">
+        <el-date-picker size="mini" @change="timeChange" v-model="timeRange" value-format="yyyy-MM-dd HH:mm:ss"
+            type="datetimerange" range-separator="鑷�" start-placeholder="寮�濮嬫椂闂�" end-placeholder="缁撴潫鏃堕棿"></el-date-picker>
+        <div style="margin:0 10px;display:flex;"><span style="width:68px;">鍋滅暀鏃堕暱:</span><el-input size="mini" style="width: 80px;"  v-model.number="reqCameraParams.thresholdTime"></el-input>s</div> 
+          <el-button size="mini" type="primary" @click="postCameraData">鏌ヨ</el-button>
+      </div>
+      <p class="member-info">
+        <label class="">浜哄憳淇℃伅:</label>
+        <ul>
+          <li><span>濮撳悕:</span><span>{{memberInfo.personName}}</span></li>
+          <li><span>鎬у埆:</span><span>{{memberInfo.sex}}</span></li>
+          <li><span>韬唤璇佸彿:</span><span>{{memberInfo.idCard}}</span></li>
+          <li><span>鎰忓浘:</span><span>{{memberInfo.reserved}}</span></li>
+        </ul>
+      </p>
+      <el-table :data="cameraDetailData" border>
+        <el-table-column prop="startFacePicUrl" label="鎶撴媿瀹炴櫙" width="160" align="center">
+          <template slot-scope="scope">
+            <div>
+              <img
+                v-if="scope.row.startFacePicUrl"
+                :src="`/httpImage/`+scope.row.startFacePicUrl"
+                style="max-height:84px;width:84px;object-fit:contain;background:rgba(0,0,0,0.35);"
+                class="avatar"
+              />
+            </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">
+		<template slot-scope="scope">
+			<span>{{scope.row.stayTime}} 绉� </span>
+		</template>
+	</el-table-column>
+      </el-table>
+      <p style="text-align:right; font-size: 14px;">鍏眥{faceDataCount}}鏉℃暟鎹�</p>
+    </el-dialog>
     <el-dialog
       title="淇敼淇℃伅"
       :visible.sync="dialogFormVisible"
@@ -449,14 +492,49 @@
 </template>
 <script>
 import { updateBasePerson, deleteBasePersons } from "@/api/baseLibrary";
+import { getCameraFaceData } from "@/api/es";
 import axios from "axios";
 // import { findByType } from '@/server/video.js'
 import Upload from "./upload";
 import fTemplate from "@/components/fTemplate";
 import UploadIcon from "@/components/searching/UploadIcon.vue";
+
+Date.prototype.Format = function (fmt) {
+  var o = {
+    "M+": this.getMonth() + 1, //鏈堜唤 
+    "d+": this.getDate(), //鏃� 
+    "H+": this.getHours(), //灏忔椂 
+    "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));
+  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;
+}
+
 export default {
   data() {
     return {
+      timeRange: [new Date(2020, 7, 25, 8), new Date()],
+      memberInfo: {
+        personName: '',
+        sex: '',
+        idCard: '',
+        reserved: ''
+      },
+      reqCameraParams: {
+        cameraIds: [],
+        startDate: new Date(2020, 7, 25, 8).Format("yyyy-MM-dd HH:mm:ss"),
+        endDate: new Date().Format("yyyy-MM-dd HH:mm:ss"),
+        thresholdTime: 10,
+        personIds: []
+      },
+      cameraDetailData: [],
+      cameraDetailVisible: false,
+
       dialogFormVisible: false,
       copyVisiabled: false,
       moveVisiabled: false,
@@ -499,6 +577,7 @@
       peoperLevel: [],
       oldWidth: "",
       oldHeight: "",
+      faceDataCount: 0,
       // 涓婁紶鍚庣殑寮规鏄剧ず
       dialogVisible: false,
       // 鎵归噺涓婁紶鍚庣殑杩斿洖缁撴灉
@@ -520,6 +599,31 @@
     }
   },
   methods: {
+    postCameraData(){
+      getCameraFaceData(this.reqCameraParams).then(res=>{
+        if(res && res.code == 200){
+          this.cameraDetailData = res.data.allSource
+	  this.faceDataCount = res.data.count
+        }
+      })
+    },
+    timeChange(val) {
+      console.log(val);
+      this.reqCameraParams.startDate = val[0];
+      this.reqCameraParams.endDate = 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.personIds = [];
+      this.reqCameraParams.personIds.push(row.id)
+      console.log(this.reqCameraParams)
+      this.cameraDetailVisible = true;
+    },
     isShow(authority) {
       if (this.isAdmin) {
         return true
@@ -1097,7 +1201,10 @@
   color: #222222;
   text-align: center;
 }
-
+.el-table th{
+  color: #222;
+  background: #ececec;
+}
 .el-table .cell {
   padding-left: 8px !important;
   padding-right: 0px !important;
@@ -1170,4 +1277,25 @@
   min-height: 152px;
   border: 1px solid #eee;
 }
+.top-bar{
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  line-height: 30px;
+}
+.member-info{
+  font-size: 13px;
+  margin: 10px 0;
+  display: flex;
+  label{
+    color: #999;
+    margin-right: 6px;
+  }
+  ul{
+    display: flex;
+    li{
+      margin-right: 8px;
+    }
+  }
+}
 </style>

--
Gitblit v1.8.0