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

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" :type="type"
:gangkou="gangkou" :gangkou="gangkou"
:corp-id="corpInfoId" :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-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"/> <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"/> <zhong_da_info v-if="type === 'majordangersource'" :id="id" :type="type" :gangkou="gangkou"/>
@ -223,6 +226,14 @@ export default {
GATE_VIDEO_ID: { GATE_VIDEO_ID: {
type: String, type: String,
default: '' default: ''
},
videoType: {
type: String,
default: ''
},
code: {
type: String,
default: ''
} }
}, },
methods: { methods: {

View File

@ -1,5 +1,5 @@
<template> <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"> <div v-if= "type !== 'CAMERA'" class="level-title">
<h1>区域名称{{ info.GATE_AREA_NAME }}</h1> <h1>区域名称{{ info.GATE_AREA_NAME }}</h1>
</div> </div>
@ -42,24 +42,12 @@
</td> </td>
</tr> </tr>
</table> </table>
<div v-if= "type == 'CAMERA'" class="level-title">
<h1>摄像头名称{{ info.VIDEONAME }}</h1>
</div> </div>
<table v-if= "type == 'CAMERA'" class="table-ui"> <div v-else class="app-container print-work">
<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-if= "type !== 'CAMERA'" class="level-title"> <div v-if= "type !== 'CAMERA'" class="level-title">
<h1>区域名称{{ info.GATE_AREA_NAME }}</h1> <h1>区域名称{{ info.GATE_AREA_NAME }}</h1>
</div> </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> <tr>
<td class="bbg-transparent">闸机名称</td> <td class="bbg-transparent">闸机名称</td>
<td colspan="5">{{ item.GATE_NAME }}</td> <td colspan="5">{{ item.GATE_NAME }}</td>
@ -73,7 +61,7 @@
<td width="80px">{{ item.CAR_IN - item.CAR_OUT }}</td> <td width="80px">{{ item.CAR_IN - item.CAR_OUT }}</td>
</tr> </tr>
</table> </table>
<table class="table-ui" v-if= "type != 'CAMERA'"> <table v-if= "type != 'CAMERA'" class="table-ui">
<tr v-if="carRecordAllList != null && carRecordAllList.length > 0"> <tr v-if="carRecordAllList != null && carRecordAllList.length > 0">
<td colspan="6"> <td colspan="6">
<table class="table-ui"> <table class="table-ui">
@ -117,16 +105,16 @@
</tr> </tr>
</table> </table>
<div v-if= "type == 'CAMERA'" class="level-title"> <div v-if= "type == 'CAMERA'" class="level-title">
<h1>摄像头名称{{ info.VIDEONAME }}</h1> <h1>摄像头名称{{ name }}</h1>
</div> </div>
<table v-if= "type == 'CAMERA'" class="table-ui"> <table v-if= "type == 'CAMERA'" class="table-ui">
<tr> <tr>
<td class="bbg-transparent">编码</td> <td class="bbg-transparent">编码</td>
<td >{{ info.CODE }}</td> <td >{{ code }}</td>
</tr> </tr>
</table> </table>
<div class="video"> <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>
</div> </div>
</template> </template>
@ -166,6 +154,24 @@ export default {
default() { default() {
return '' return ''
} }
},
code: {
type: String,
default() {
return ''
}
},
videoType: {
type: String,
default() {
return ''
}
},
name: {
type: String,
default() {
return ''
}
} }
}, },
data() { data() {
@ -179,8 +185,12 @@ export default {
}, },
created() { created() {
if (this.type !== 'CAMERA') {
this.getData() this.getData()
this.getListData() this.getListData()
} else {
}
}, },
methods: { methods: {
formatDate(date, format) { formatDate(date, format) {

View File

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

View File

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