From 62f32758a170157eb792720c21e6964e2f813fc7 Mon Sep 17 00:00:00 2001
From: heyujie <516346543@qq.com>
Date: 星期一, 05 七月 2021 21:35:24 +0800
Subject: [PATCH] 应用中心和系统设置的修改
---
src/components/subComponents/ModelCard.vue | 221 ++++++++++++++++++++++++++++++++++--------------------
1 files changed, 139 insertions(+), 82 deletions(-)
diff --git a/src/components/subComponents/ModelCard.vue b/src/components/subComponents/ModelCard.vue
index febadaf..57c13f0 100644
--- a/src/components/subComponents/ModelCard.vue
+++ b/src/components/subComponents/ModelCard.vue
@@ -1,6 +1,6 @@
<template>
<div class="model-card-box" :style="`height:${height};width:${width};`">
- <el-tabs style="height: 100%;" @before-leave="changeTabs" v-model="VideoPhotoData.activeName">
+ <el-tabs style="height: 100%;" @before-leave="changeTabs" v-model="activeName">
<el-tab-pane label="澶у浘" name="pic">
<div
class="model-card-box-left"
@@ -12,16 +12,19 @@
<p class="img-box-title">
<b>鍏ㄦ櫙鍥�</b>
</p>
+ <!-- 浜鸿劯绫诲瀷 -->
<img-down
v-if="data.targetInfo !== null && data.targetInfo[0].picSmUrl !== ''"
:url="data.picMaxUrl[0]"
></img-down>
- <!-- 浜鸿劯绫诲瀷 -->
+
+ <!-- 鏅�歽olo绫� -->
<img-down
v-else-if="(data.targetInfo == null || data.targetInfo[0].picSmUrl == '') && data.picMaxUrl.length == 1"
:url="data.picMaxUrl[0]"
></img-down>
- <!-- 鏅�歽olo绫� -->
+
+ <!-- 鎸佺画鏃堕棿yolo绫� -->
<el-carousel
v-else-if="(data.targetInfo == null || data.targetInfo[0].picSmUrl == '') && data.picMaxUrl.length > 1"
trigger="click"
@@ -32,17 +35,26 @@
<img-down :url="item"></img-down>
</el-carousel-item>
</el-carousel>
- <!-- 鎸佺画鏃堕棿yolo绫� -->
+
+ <!-- yolo绫诲ぇ鍥� -->
<div
class="describe"
v-if="data.targetInfo == null || data.targetInfo[0].picSmUrl == ''"
>
<p>
- <span class="fontStyleForModel">{{ data.picDate }}</span>
+ <span
+ class="fontStyleForModel"
+ style="font-weight:normal"
+ >{{ data.picDate | formatTime }}</span>
</p>
<p>
<span class="fontStyleForModel">{{ data.cameraAddr }}</span>
+ <span
+ class="fontStyleForModel analyServer"
+ style="margin-left:20px;"
+ >{{ data.analyServerName }}</span>
</p>
+ <p></p>
<p style="width:100%">
<span v-for="(item,index) in data.alarmRules" :key="index+'rule'">
<span class="fontStyleForModel">{{data.taskName}}</span>
@@ -55,13 +67,22 @@
</span>
</p>
</div>
- <!-- yolo绫诲ぇ鍥� -->
+
+ <!-- 浜鸿劯绫诲ぇ鍥� -->
<div class="describeBigImage" v-else>
<p>
- <span class="fontStyleForModel">{{ data.picDate }}</span>
+ <span class="fontStyleForModel">{{ data.picDate | formatTime}}</span>
</p>
- <p>
- <span class="fontStyleForModel">{{ data.cameraAddr }}</span>
+ <p class="align-right">
+ <span
+ class="fontStyleForModel text-overflow"
+ :title="data.cameraAddr"
+ >{{ data.cameraAddr }}</span>
+ <span
+ class="fontStyleForModel text-overflow"
+ :title="data.cameraAddr"
+ style="margin-left:20px;"
+ >{{ data.analyServerName }}</span>
</p>
<p style="width:100%">
<span v-for="(item,index) in data.alarmRules" :key="index+'rule'">
@@ -75,12 +96,15 @@
</span>
</p>
<p style="width:100%">
- <span class="fontStyleForModel">{{data.showLabels}}</span>
+ <span
+ style="white-space: nowrap;font-weight: 600;font-size: 13px;"
+ >{{data.showLabels}}</span>
</p>
</div>
- <!-- 浜鸿劯绫诲ぇ鍥� -->
</div>
</div>
+
+ <!-- 寮规鍙充晶 -->
<div
v-if="data.targetInfo && data.targetInfo !== null && data.targetInfo[0].picSmUrl !== ''"
class="model-card-box-right"
@@ -131,61 +155,45 @@
</div>
</div>
<div class="baseInfo" v-if="data.baseInfo && data.baseInfo[0].targetPicUrl != ''">
- <div class="baseInfo_left">
+ <div class="baseInfo_list">
<p>
<span class="labelInfo">搴曞簱</span>
+ <span
+ class="val"
+ :title="data.baseInfo[initialIndex].tableName"
+ >{{data.baseInfo[initialIndex].tableName}}</span>
</p>
<p>
<span class="labelInfo">濮撳悕</span>
+ <span
+ class="val"
+ :title="data.baseInfo[initialIndex].targetName"
+ >{{data.baseInfo[initialIndex].targetName}}</span>
</p>
<p>
<span class="labelInfo">鎬у埆</span>
+ <span class="val">{{data.baseInfo[initialIndex].labels | sex}}</span>
</p>
<p>
<span class="labelInfo">韬唤璇佸彿</span>
+ <span class="val">{{data.baseInfo[initialIndex].labels | idCard}}</span>
</p>
<p>
<span class="labelInfo">鎵嬫満鍙�</span>
+ <span class="val">{{data.baseInfo[initialIndex].labels | phoneNum}}</span>
</p>
<p>
<span class="labelInfo">浜哄憳绛夌骇</span>
- </p>
- </div>
- <div class="baseInfo_right">
- <p class="valueInfo">
<span
- :title="data.baseInfo[initialIndex].tableName"
- >{{ data.baseInfo[initialIndex].tableName }}</span>
- </p>
- <p class="valueInfo">
- <span
- :title="data.baseInfo[initialIndex].targetName"
- >{{ data.baseInfo[initialIndex].targetName }}</span>
- </p>
- <p class="valueInfo">
- <span
- :title="data.baseInfo[initialIndex].labels.split('/')[1]"
- >{{ data.baseInfo[initialIndex].labels.split("/")[1] }}</span>
- </p>
- <p class="valueInfo">
- <span
- :title="data.baseInfo[initialIndex].labels.split('/')[2]"
- >{{ data.baseInfo[initialIndex].labels.split("/")[2] }}</span>
- </p>
- <p class="valueInfo">
- <span
- :title="data.baseInfo[initialIndex].labels.split('/')[0]"
- >{{ data.baseInfo[initialIndex].labels.split("/")[0] }}</span>
- </p>
- <p class="valueInfo">
- <span
+ class="val"
:title="data.baseInfo[initialIndex].monitorLevel"
- >{{ data.baseInfo[initialIndex].monitorLevel }}</span>
+ >{{data.baseInfo[initialIndex].monitorLevel}}</span>
</p>
</div>
</div>
</div>
</el-tab-pane>
+
<el-tab-pane label="瑙嗛" name="video" class="video-tabs">
<div
class="model-card-box-left"
@@ -200,11 +208,6 @@
style="margin-top: 12px;"
>鎮ㄧ殑娴忚鍣ㄤ笉鏀寔 video 鏍囩銆�</video>
</div>
- <!-- <div class="merge">
- <el-button type="primary" @click="mergeVideo">鍚堝苟瑙嗛</el-button>
- <a name="download" @click="downloadfile">涓嬭浇</a>
- <a href="/httpImage/192.168.20.112:6081/31,02c86c199cd9b1" download="panlei.mp4">涓嬭浇2</a>
- </div>-->
</div>
<div
v-if="data.targetInfo !== null && data.targetInfo[0].picSmUrl !== ''"
@@ -255,56 +258,39 @@
</div>
</div>
<div class="baseInfo" v-if="data.baseInfo && data.baseInfo[0].targetPicUrl != ''">
- <div class="baseInfo_left">
+ <div class="baseInfo_list">
<p>
<span class="labelInfo">搴曞簱</span>
+ <span
+ class="val"
+ :title="data.baseInfo[initialIndex].tableName"
+ >{{data.baseInfo[initialIndex].tableName}}</span>
</p>
<p>
<span class="labelInfo">濮撳悕</span>
+ <span
+ class="val"
+ :title="data.baseInfo[initialIndex].targetName"
+ >{{data.baseInfo[initialIndex].targetName}}</span>
</p>
<p>
<span class="labelInfo">鎬у埆</span>
+ <span class="val">{{data.baseInfo[initialIndex].labels | sex}}</span>
</p>
<p>
<span class="labelInfo">韬唤璇佸彿</span>
+ <span class="val">{{data.baseInfo[initialIndex].labels | idCard}}</span>
</p>
<p>
<span class="labelInfo">鎵嬫満鍙�</span>
+ <span class="val">{{data.baseInfo[initialIndex].labels | phoneNum}}</span>
</p>
<p>
<span class="labelInfo">浜哄憳绛夌骇</span>
- </p>
- </div>
- <div class="baseInfo_right">
- <p class="valueInfo">
<span
- :title="data.baseInfo[initialIndex].tableName"
- >{{ data.baseInfo[initialIndex].tableName }}</span>
- </p>
- <p class="valueInfo">
- <span
- :title="data.baseInfo[initialIndex].targetName"
- >{{ data.baseInfo[initialIndex].targetName }}</span>
- </p>
- <p class="valueInfo">
- <span
- :title="data.baseInfo[initialIndex].labels.split('/')[1]"
- >{{ data.baseInfo[initialIndex].labels.split("/")[1] }}</span>
- </p>
- <p class="valueInfo">
- <span
- :title="data.baseInfo[initialIndex].labels.split('/')[2]"
- >{{ data.baseInfo[initialIndex].labels.split("/")[2] }}</span>
- </p>
- <p class="valueInfo">
- <span
- :title="data.baseInfo[initialIndex].labels.split('/')[0]"
- >{{ data.baseInfo[initialIndex].labels.split("/")[0] }}</span>
- </p>
- <p class="valueInfo">
- <span
+ class="val"
:title="data.baseInfo[initialIndex].monitorLevel"
- >{{ data.baseInfo[initialIndex].monitorLevel }}</span>
+ >{{data.baseInfo[initialIndex].monitorLevel}}</span>
</p>
</div>
</div>
@@ -314,6 +300,22 @@
</div>
</template>
<script>
+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;
+}
+
/* eslint-disable */
import CameraPlayer from "@/components/player";
import imgDown from "@/components/subComponents/imgDown"
@@ -334,15 +336,46 @@
data: ""
},
filters: {
+ formatTime(t) {
+ return new Date(t).Format("yyyy-MM-dd HH:mm:ss")
+ },
percentage(score) {
return score.toFixed(2) + "%"
+ },
+ sex(v) {
+ try {
+ let obj = JSON.parse(v)
+ return obj.sex
+ } catch (error) {
+ return v.split("/")[0]
+ }
+ },
+ idCard(v) {
+ try {
+ let obj = JSON.parse(v)
+ return obj.idCard
+ } catch (error) {
+ return v.split("/")[1]
+ }
+ },
+ phoneNum(v) {
+ try {
+ let obj = JSON.parse(v)
+ return obj.phone
+ } catch (error) {
+ return v.split("/")[2]
+ }
}
},
mounted() {
- this.VideoPhotoData.activeName = "pic"
+ console.log('ModelCard data', this.data);
+ console.log(this.data.baseInfo)
+ console.log(this.initialIndex)
+ //this.VideoPhotoData.activeName = "pic"
},
data() {
return {
+ activeName: 'pic',
initialIndex: 0,
};
},
@@ -393,6 +426,21 @@
.baseInfo {
margin-top: 5px;
text-align: left;
+ .baseInfo_list {
+ p {
+ display: flex;
+ .labelInfo {
+ width: 80px;
+ color: #999;
+ }
+ .val {
+ font-size: 12px;
+ color: #101010;
+ letter-spacing: 0.28px;
+ line-height: 20px;
+ }
+ }
+ }
.baseInfo_left {
float: left;
width: 30%;
@@ -461,10 +509,8 @@
b {
//color: #e43933;
}
- width: 40%;
text-align: left;
- float: left;
- margin: 4px 0px;
+ margin: 4px 0;
}
}
.describeBigImage {
@@ -473,6 +519,17 @@
float: left;
margin-top: 5px;
p {
+ &.align-right {
+ text-align: right;
+ .text-overflow {
+ display: inline-block;
+ vertical-align: top;
+ width: 90px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+ }
b {
//color: #e43933;
}
--
Gitblit v1.8.0