From 85fb13abbeadc1765d2c0056ba99c6c19aa35dfd Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Sun, 09 Apr 2023 03:44:49 +0800
Subject: [PATCH] 电子沙盘的调整
---
src/views/activity/components/publicIndex.vue | 53 ++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 38 insertions(+), 15 deletions(-)
diff --git a/src/views/activity/components/publicIndex.vue b/src/views/activity/components/publicIndex.vue
index 576c20d..8a3f6e1 100644
--- a/src/views/activity/components/publicIndex.vue
+++ b/src/views/activity/components/publicIndex.vue
@@ -321,6 +321,7 @@
this.$parent.normalPeopleList = res.data.data.filter(item => item.type == 6)
this.$parent.protectedPeopleList = res.data.data.filter(item => item.type == 7)
this.$parent.dangerousPeopleList = res.data.data.filter(item => item.type == 8)
+ this.$parent.customList = res.data.data.filter(item => item.type == 11)
// 作战标绘
this.$parent.attackArrowList = res.data.data.filter(item => item.type == 1)
@@ -331,11 +332,11 @@
this.$parent.borkenList = res.data.data.filter(item => item.type == 10)
this.isHaveArrow = res.data.data.some(item => {
- return item.type != 6 && item.type != 7 && item.type != 8
+ return item.type != 6 && item.type != 7 && item.type != 8 && item.type != 11
})
this.isHavePointDraw = res.data.data.some(item => {
- return item.type == 6 || item.type == 7 || item.type == 8
+ return item.type == 6 || item.type == 7 || item.type == 8 || item.type == 11
})
let allData = res.data.data
@@ -363,13 +364,20 @@
} else if (item.type == 5) {
this.initLayersCoverage('Polygon', color, item, position, altitude)
continue
- } else if (item.type == 6 || item.type == 7 || item.type == 8) {
+ } else if (item.type == 6 || item.type == 7 || item.type == 8 || item.type == 11) {
let iconImgName = item.type == 6 ? 'ptqz' : item.type == 7 ? 'bhdx' : 'wxrw'
+ let icon = ''
+
+ if (item.type == 11) {
+ icon = item.iconUrl
+ } else {
+ icon = `/img/icon/${iconImgName}.png`
+ }
const height = item.altitude.split(',')
position = position.split(';')[0].split(',')
- let chooseArrow = new global.DC.Billboard(new global.DC.Position(Number(position[0]), Number(position[1]), Number(height[0])), `/img/icon/${iconImgName}.png`)
+ let chooseArrow = new global.DC.Billboard(new global.DC.Position(Number(position[0]), Number(position[1]), Number(height[0])), icon)
chooseArrow.customType = 'billboard'
chooseArrow.setStyle({
color: color.curColor,
@@ -377,6 +385,8 @@
chooseArrow.attrParams = { id: item.id, color: item.color, item }
chooseArrow.size = [32, 32]
chooseArrow.on(global.DC.MouseEventType.CLICK, this.reeditArrowClick)
+ chooseArrow.on(global.DC.MouseEventType.MOUSE_OVER, this.pointMouseOver)
+ chooseArrow.on(global.DC.MouseEventType.MOUSE_OUT, this.pointMouseOut)
pointCircleCarLayer.addOverlay(chooseArrow)
} else if (item.type == 10) {
this.initLayersCoverage('Polyline', color, item, position, altitude)
@@ -406,7 +416,7 @@
},
initLayersCoverage (type, color, params, position, altitude) {
- if (altitude.length) position = position.split(';').map((item, index) => `${item},${altitude[index]}`).join(';')
+ if (altitude && altitude.length) position = position.split(';').map((item, index) => `${item},${altitude[index]}`).join(';')
let coverage = new global.DC[type](position)
if (type == 'Polygon') {
@@ -442,6 +452,7 @@
}
coverage.attrParams = { id: params.id, color: params.color, item: params }
coverage.on(global.DC.MouseEventType.CLICK, this.reeditArrowClick)
+
arrowsListLayer.addOverlay(coverage)
return coverage
@@ -533,17 +544,29 @@
pointMouseOver (e) {
this.$store.commit('SET_ACTIVITYPOLICEPOPUP', true)
let hoverData = {}
- if ('carId' in e.overlay.attrParams.data) {
- hoverData = policecarOption.filter(item => item.value == e.overlay.attrParams.data.carId)[0]
- hoverData.policeData = { 'name': 'none' }
- hoverData.policeStationName = 'none'
+
+ hoverData.billboard = false
+
+ if (e.overlay.attrParams.item.type == 6 || e.overlay.attrParams.item.type == 7 || e.overlay.attrParams.item.type == 8 || e.overlay.attrParams.item.type == 11) {
+ hoverData.billboard = true
} else {
- let policeArr = this.filterTree(this.policeTreeData)
- hoverData.policeData = policeArr.filter(item => item.id == e.overlay.attrParams.data.policemanId)[0]
- hoverData.policeStationName = policeArr.filter(item => item.id == policeArr.filter(item => item.id == e.overlay.attrParams.data.policemanId)[0].parentId)[0].name
- hoverData.carType = 'none'
- hoverData.label = 'none'
+ if ('carId' in e.overlay.attrParams.data) {
+ hoverData = policecarOption.filter(item => item.value == e.overlay.attrParams.data.carId)[0]
+ hoverData.policeData = { 'name': 'none' }
+ hoverData.policeStationName = 'none'
+ } else {
+ let policeArr = this.filterTree(this.policeTreeData)
+ hoverData.policeData = policeArr.filter(item => item.id == e.overlay.attrParams.data.policemanId)[0]
+ hoverData.policeStationName = policeArr.filter(item => item.id == policeArr.filter(item => item.id == e.overlay.attrParams.data.policemanId)[0].parentId)[0].name
+ hoverData.carType = 'none'
+ hoverData.label = 'none'
+ }
}
+
+ hoverData.Data = e.overlay.attrParams
+
+ console.log(hoverData, 95999)
+
this.$store.commit('SET_ACTIVITYPOLICEPOPUPDATA', hoverData)
var popup = new global.DC.DivForms(global.viewer, {
@@ -760,7 +783,7 @@
let positionArr = positionStr.split(" ")
let positionObj = {}
if (iconName == 'activity') {
- positionObj = { lng: `${positionArr[0]}`, lat: `${positionArr[1]}`, alt: data.altitude, url: '/img/icon/activity.png' }
+ positionObj = { lng: `${positionArr[0]}`, lat: `${positionArr[1]}`, alt: data.altitude, url: '/img/icon/activity.png', data: data }
} else if (iconName == 'policeman') {
positionObj = { lng: `${positionArr[0]}`, lat: `${positionArr[1]}`, alt: data.altitude, url: '/img/icon/police-people.png', data: data }
} else if (iconName == 'policecar') {
--
Gitblit v1.9.3