海康口门门禁 摄像头地图显示

hyx_2024-9-29_tongbu
fangjiakai 2024-09-05 17:25:39 +08:00
parent e8f63e7d40
commit 8862295f29
4 changed files with 60 additions and 34 deletions

View File

@ -17,7 +17,10 @@
:type="type"
:gangkou="gangkou"
:corp-id="corpInfoId"
:gate-video-id="GATE_VIDEO_ID"/>
:gate-video-id="GATE_VIDEO_ID"
:code = "code"
:video-type="videoType"
:name = "name"/>
<mk-gate-machine-cfd v-if="type === 'CAR00004'||type ==='PERSON00004' " :id="id" :type="type" :gangkou="gangkou" :infoname="infoname"/>
<mk-gate-machine-cmt v-if="type === 'CAR00005'||type ==='PERSON00005' " :id="id" :type="type" :gangkou="gangkou" :infoname="infoname"/>
<zhong_da_info v-if="type === 'majordangersource'" :id="id" :type="type" :gangkou="gangkou"/>
@ -223,6 +226,14 @@ export default {
GATE_VIDEO_ID: {
type: String,
default: ''
},
videoType: {
type: String,
default: ''
},
code: {
type: String,
default: ''
}
},
methods: {

View File

@ -1,5 +1,5 @@
<template>
<div class="app-container print-work" v-if="corpId == '035958e685cf4850bc40151c5e0617a6' ">
<div v-if="corpId == '035958e685cf4850bc40151c5e0617a6' " class="app-container print-work">
<div v-if= "type !== 'CAMERA'" class="level-title">
<h1>区域名称{{ info.GATE_AREA_NAME }}</h1>
</div>
@ -42,39 +42,27 @@
</td>
</tr>
</table>
<div v-if= "type == 'CAMERA'" class="level-title">
<h1>摄像头名称{{ info.VIDEONAME }}</h1>
</div>
<table v-if= "type == 'CAMERA'" class="table-ui">
<tr>
<td class="bbg-transparent">编码</td>
<td >{{ info.CODE }}</td>
</tr>
</table>
<div class="video">
<video-play v-if="type === 'CAMERA' && info.GATEVIDEO_ID" :id="info.GATEVIDEO_ID" :type="type" :gangkou="gangkou"/>
</div>
</div>
<div class="app-container print-work" v-else>
<div v-else class="app-container print-work">
<div v-if= "type !== 'CAMERA'" class="level-title">
<h1>区域名称{{ info.GATE_AREA_NAME }}</h1>
</div>
<table v-for="(item,index) in varList" :key="index" v-if= "type !== 'CAMERA'" class="table-ui">
<table v-for="(item,index) in varList" v-if= "type !== 'CAMERA'" :key="index" class="table-ui">
<tr>
<td class="bbg-transparent">闸机名称</td>
<td colspan="5">{{ item.GATE_NAME }}</td>
</tr>
<tr>
<td class="bbg-transparent">今日进</td>
<td width="80px">{{ item.CAR_IN}}</td>
<td width="80px">{{ item.CAR_IN }}</td>
<td class="bbg-transparent">今日出</td>
<td width="80px">{{ item.CAR_OUT}}</td>
<td width="80px">{{ item.CAR_OUT }}</td>
<td class="bbg-transparent">当前滞留</td>
<td width="80px">{{ item.CAR_IN - item.CAR_OUT}}</td>
<td width="80px">{{ item.CAR_IN - item.CAR_OUT }}</td>
</tr>
</table>
<table class="table-ui" v-if= "type != 'CAMERA'">
<tr v-if="carRecordAllList != null && carRecordAllList.length > 0">
<table v-if= "type != 'CAMERA'" class="table-ui">
<tr v-if="carRecordAllList != null && carRecordAllList.length > 0">
<td colspan="6">
<table class="table-ui">
<tr>
@ -117,16 +105,16 @@
</tr>
</table>
<div v-if= "type == 'CAMERA'" class="level-title">
<h1>摄像头名称{{ info.VIDEONAME }}</h1>
<h1>摄像头名称{{ name }}</h1>
</div>
<table v-if= "type == 'CAMERA'" class="table-ui">
<tr>
<td class="bbg-transparent">编码</td>
<td >{{ info.CODE }}</td>
<td >{{ code }}</td>
</tr>
</table>
<div class="video">
<video-play-gate v-if="type === 'CAMERA' && GATE_VIDEO_ID" :id="GATE_VIDEO_ID" :type="type" :gangkou="gangkou"/>
<video-play-gate v-if="type === 'CAMERA' && code" :id="code" :type="videoType" :gangkou="gangkou"/>
</div>
</div>
</template>
@ -166,6 +154,24 @@ export default {
default() {
return ''
}
},
code: {
type: String,
default() {
return ''
}
},
videoType: {
type: String,
default() {
return ''
}
},
name: {
type: String,
default() {
return ''
}
}
},
data() {
@ -173,14 +179,18 @@ export default {
config: config,
info: {},
recordAllList: [],
varList:[],
carRecordAllList:[]
varList: [],
carRecordAllList: []
}
},
created() {
this.getData()
this.getListData()
if (this.type !== 'CAMERA') {
this.getData()
this.getListData()
} else {
}
},
methods: {
formatDate(date, format) {

View File

@ -46,11 +46,11 @@ export default {
methods: {
showVideo() {
requestFN(
this.requestUrl,
'/platform/door/video/getHlsPath',
{
GATE_VIDEO_ID: this.id
INDEXCODE: this.id
}
).then((data) => {
).then((res) => {
// for (let i = 0; i < data.videoList.length; i++) {
// if (data.videoList[0].HLSVIDEOURL) {
// this.url = data.videoList[0].GBSVIDEOURL
@ -61,7 +61,7 @@ export default {
// eslint-disable-next-line no-undef
this.player = new Aliplayer({
'id': 'aLiVideoPlayer',
'source': data.video.HLSVIDEOURL.data.url,
'source': res.data.url,
'width': '100%',
'height': '500px',
'autoplay': true,

View File

@ -262,6 +262,8 @@
:ry-post-name="dialog.RyPostName"
:ry-real-name="dialog.RyRealName"
:person-type-name="dialog.personTypeName"
:code="dialog.code"
:video-type="dialog.video_type"
/>
</div>
</template>
@ -1520,12 +1522,15 @@ export default {
return
}
if (point_type.indexOf('标记点') !== -1) {
const { label, point_type, data_id, corpInfoId, dialog_width, infoname } = pick.id._monitoItems.data
const { label, point_type, data_id, corpInfoId, dialog_width, infoname, code, video_type, name } = pick.id._monitoItems.data
this.dialog.visible = true
this.dialog.title = label
this.dialog.name = name
this.dialog.type = point_type.substring(3)
this.dialog.id = data_id
this.dialog.corpInfoId = corpInfoId
this.dialog.code = code
this.dialog.video_type = video_type
this.dialog.infoname = infoname
this.dialog.width = dialog_width || '50%'
}
@ -2223,7 +2228,6 @@ export default {
const points = []
const varList = this.filterNull(data.varList)
for (let i = 0; i < varList.length; i++) {
console.log(pindex + '_' + index)
const point = {}
point.id = pindex + '_' + index + '_' + i
point.data_id = varList[i].id
@ -2245,6 +2249,7 @@ export default {
point.gate_machine_name = varList[i].GATE_MACHINE_NAME
//
point.code = varList[i].INDEXCODE || '' //
point.video_type = varList[i].VIDEO_TYPE || '' //
//
if (urlType === 'peoplePosition') {
point.data_id = varList[i].empNo || ''