From 9bc4dcfe0928011e4e986014a2bb5bf3b897e292 Mon Sep 17 00:00:00 2001
From: guanqb <18720758508@163.com>
Date: Mon, 30 Jan 2023 08:46:47 +0800
Subject: [PATCH] 活动监控
---
src/views/activity/index.vue | 76 +++++++++++++++++++++++++++++++++++++
1 files changed, 75 insertions(+), 1 deletions(-)
diff --git a/src/views/activity/index.vue b/src/views/activity/index.vue
index 6cf5b4f..0f8aca3 100644
--- a/src/views/activity/index.vue
+++ b/src/views/activity/index.vue
@@ -466,6 +466,7 @@
<script>
import { getSecurityList, getPoliceList, getCarList, addCarAndRange, addActivityPolice, getSecurityPoliceList, getSecurityCarList, updateActivityPolice, updateActivityCar, getServiceDictionary, getActivityType, addSecurityPlot, getSecurityPlotList, updateSecurityPlot } from '@/api/activity/index.js'
import { getSearchExtensively } from '@/api/dept/index.js'
+import { getRegionList, getDevices } from '@/api/video/index.js'
import flvjs from 'flv.js'
let analyseLayer = null
@@ -677,6 +678,16 @@
video7: true,
video8: true,
},
+ flvListPlayer: {
+ flvPlayer1: null,
+ flvPlayer2: null,
+ flvPlayer3: null,
+ flvPlayer4: null,
+ flvPlayer5: null,
+ flvPlayer6: null,
+ flvPlayer7: null,
+ flvPlayer8: null,
+ },
}
},
created () {
@@ -694,6 +705,9 @@
this.getCarList()
this.getSecurityList(this.currentPage, this.pagesize)
+
+
+
},
mounted () {
this.$parent.$parent.resize('400px', true)
@@ -866,6 +880,7 @@
layerName: 'newCarDrawLayers',
type: 'VectorLayer'
})
+ polylineAreaLayer.clear()
getSecurityCarList(securityId).then(res => {
this.isHavePoliceCar = res.data.data.some(item => {
return item.type == 3
@@ -892,10 +907,14 @@
let polygon = new global.DC.Polygon(coords)
polygon.setStyle({
material: global.DC.Color.RED.withAlpha(0.4)
-
})
polylineAreaLayer.addOverlay(polygon)
// polylineAreaLayer.show = false
+ let positionStr = ''
+ coords.forEach(item => {
+ positionStr += item[0] + ',' + item[1] + ';'
+ })
+ this.getRegionList(positionStr)
}
this.$EventBus.$emit('layerPolylineAdd', {
layerName: 'newCarDrawLayers',
@@ -1530,6 +1549,61 @@
this.searchExtensivelyValue = ''
this.searchExtensivelyChange()
},
+
+ getRegionList (positionNewStr) {
+ getRegionList(1, 15, positionNewStr).then(res => {
+ console.log(11, res.data.data.list)
+ let monitorData = res.data.data.list
+ this.monitorOption = []
+ monitorData.forEach((item, index) => {
+ let flvAddress = ''
+ getDevices(item.channelId).then(res => {
+ if ('data' in res.data) {
+ flvAddress = res.data.data.flv
+ console.log(1111, flvAddress)
+ } else {
+ flvAddress = 'nodata'
+ console.log(222, flvAddress)
+ }
+ this.monitorOption.push({ value: `${index}`, label: `${item.name}`, flvUrl: `${flvAddress}` })
+ if (index == monitorData.length - 1) {
+ this.monitorOption.forEach((itemm, indexx) => {
+ if (indexx < 4) {
+ this.monitor[`type${indexx + 5}`] = itemm.label
+ this.playVideoList(`flvPlayer${indexx + 5}`, `${itemm.flvUrl}`, `videoElement${indexx + 5}`)
+ }
+ })
+ }
+ })
+
+ })
+ })
+ },
+
+ playVideoList (flvItemPlayer, flvUrl, videoEleName) {
+ if (this.flvListPlayer[flvItemPlayer] != null) {
+ this.flvListPlayer[flvItemPlayer].pause()
+ this.flvListPlayer[flvItemPlayer].unload()
+ this.flvListPlayer[flvItemPlayer].detachMediaElement()
+ this.flvListPlayer[flvItemPlayer].destroy()
+ this.flvListPlayer[flvItemPlayer] = null
+ }
+
+ if (flvjs.isSupported() && flvUrl != 'nodata') {
+ let videoElement = document.getElementById(videoEleName)
+ this.flvListPlayer[flvItemPlayer] = flvjs.createPlayer({
+ type: 'flv',
+ isLive: true,
+ hasAudio: false,
+ url: flvUrl
+ })
+ this.flvListPlayer[flvItemPlayer].attachMediaElement(videoElement)
+ this.flvListPlayer[flvItemPlayer].load()
+ this.flvListPlayer[flvItemPlayer].play()
+ }
+ },
+
+
},
computed: {
--
Gitblit v1.9.3