Commit 42b252d8 authored by ninglx's avatar ninglx

1

parent 631e3a2e
<template> <template>
<div class="main situation" v-loading.fullscreen.lock="loading" element-loading-text="数据加载中..." <div class="main situation" v-loading.fullscreen.lock="loading" element-loading-text="数据加载中..."
element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0.8)"> element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0.8)">
<track-switcher :detetors="detetorsArray" :boxShow="boxesShow" @timeChange="timeChange" v-show="trackSwitcherVis" <track-switcher :detetors="detetorsArray" :boxShow="boxesShow" @timeChange="timeChange" v-show="trackSwitcherVis"
@closeRealTime="closeRealTime" @openRealTime="openRealTime"></track-switcher> @closeRealTime="closeRealTime" @openRealTime="openRealTime"></track-switcher>
<situation-time v-show="currentCheck === 'first' && timeState" class="situationTime" :time="situationTimeVal"/> <situation-time v-show="currentCheck === 'first' && timeState" class="situationTime" :time="situationTimeVal" />
<wMap :mapId="'situation-map'" ref="wMap"/> <wMap :mapId="'situation-map'" ref="wMap" />
<!--左右图表组件--> <!--左右图表组件-->
<message-boxes @playOverHistoryTrace="playOverHistoryTrace" @delWarningPopup="delWarningPopup" <message-boxes @playOverHistoryTrace="playOverHistoryTrace" @delWarningPopup="delWarningPopup"
@addWarningPopup="addWarningPopup" :show="boxesShow"/> @addWarningPopup="addWarningPopup" :show="boxesShow" />
<!--图层切换按钮--> <!--图层切换按钮-->
<layers-switch ref="switch" :show="boxesShow" @changeCheck="changeCheck" @visibleChange="visibleChange" <layers-switch ref="switch" :show="boxesShow" @changeCheck="changeCheck" @visibleChange="visibleChange"
:class="boxesShow ? 'generalSwitch' : 'rightSwitch'"/> :class="boxesShow ? 'generalSwitch' : 'rightSwitch'" />
<!--视频播放组件--> <!--视频播放组件-->
<video-list ref="videoList" v-if="showCameras.length" @updateCamera="updateCameraCPB" @resetCamera="resetCamera" <video-list ref="videoList" v-if="showCameras.length" @updateCamera="updateCameraCPB" @resetCamera="resetCamera"
@delVideo="deleteVideo" :showCameras="showCameras"/> @delVideo="deleteVideo" :showCameras="showCameras" />
<!--路口详情--> <!--路口详情-->
<cross-detail v-if="dialogVisible.crossDetail" @actionFinished="actionFinished" dialogId="crossDetail" <cross-detail v-if="dialogVisible.crossDetail" @actionFinished="actionFinished" dialogId="crossDetail"
:crossDetailData="crossDetailData"/> :crossDetailData="crossDetailData" />
<!--底部交通事件趋势分析--> <!--底部交通事件趋势分析-->
<traffic-events-tend @updateHeatMap="refreshEventLayer" v-if="currentCheck === 'third'"/> <traffic-events-tend @updateHeatMap="refreshEventLayer" v-if="currentCheck === 'third'" />
<!--设备图例控制--> <!--设备图例控制-->
<equipment-switch @equipmentChange="equipmentChange" v-if="currentCheck === 'fourth'"/> <equipment-switch @equipmentChange="equipmentChange" v-if="currentCheck === 'fourth'" />
<!--单车超限历史轨迹视频--> <!--单车超限历史轨迹视频-->
<sigalTraceVideos @isReady="singalHistoryVideoReady" :urls="hisUrls" :key="sigalKey" <sigalTraceVideos @isReady="singalHistoryVideoReady" :urls="hisUrls" :key="sigalKey" v-if="showHisVid">
v-if="showHisVid"></sigalTraceVideos> </sigalTraceVideos>
</div> </div>
</template> </template>
...@@ -35,7 +35,7 @@ import MessageBoxes from "./floatData/messageBoxes.vue"; ...@@ -35,7 +35,7 @@ import MessageBoxes from "./floatData/messageBoxes.vue";
import CrossDetail from "./crossDetail.vue"; import CrossDetail from "./crossDetail.vue";
import VideoList from "./floatData/videoList.vue"; import VideoList from "./floatData/videoList.vue";
import TrafficEventsTend from "./floatData/trafficEventsTend.vue"; import TrafficEventsTend from "./floatData/trafficEventsTend.vue";
import {initWs} from "../../config/holo/websocket"; import { initWs } from "../../config/holo/websocket";
import dict from "../../config/holo/dictionary"; import dict from "../../config/holo/dictionary";
import mapAssets from "../../config/holo/mapAssets"; import mapAssets from "../../config/holo/mapAssets";
import * as mapTools from "../../utils/mapboxTools"; import * as mapTools from "../../utils/mapboxTools";
...@@ -60,7 +60,7 @@ import { ...@@ -60,7 +60,7 @@ import {
equip_radar, equip_radar,
getDetetors, getDetetors,
} from "../../dao/situation"; } from "../../dao/situation";
import {convertPointsToGeo, convertPointsWktToGeo, convertToLineWithWkt} from "../../utils/mapboxTools"; import { convertPointsToGeo, convertPointsWktToGeo, convertToLineWithWkt } from "../../utils/mapboxTools";
const VehiclePopup = Vue.extend(vehicleDetail); const VehiclePopup = Vue.extend(vehicleDetail);
const EquipmentPopup = Vue.extend(equipmentPopup); const EquipmentPopup = Vue.extend(equipmentPopup);
...@@ -69,7 +69,7 @@ const AlarmPopup = Vue.extend(alarmPopup) ...@@ -69,7 +69,7 @@ const AlarmPopup = Vue.extend(alarmPopup)
let pulsingDots = []; let pulsingDots = [];
const canvasImages = [ const canvasImages = [
{size: 250, color: "252, 1, 26"}, { size: 250, color: "252, 1, 26" },
// {size: 400, color: "255,235,59"}, // {size: 400, color: "255,235,59"},
// {size: 400, color: "255, 141, 26"}, // {size: 400, color: "255, 141, 26"},
// {size: 400, color: "227, 5, 5"}, // {size: 400, color: "227, 5, 5"},
...@@ -109,18 +109,18 @@ for (let i = 0; i < canvasImages.length; i++) { ...@@ -109,18 +109,18 @@ for (let i = 0; i < canvasImages.length; i++) {
pulsingDots.push(pulsingDot); pulsingDots.push(pulsingDot);
} }
let map, let map,
equipPopup = null, // 设备弹窗 equipPopup = null, // 设备弹窗
popupInstance = null, // 设备弹窗组件实例 用来更新数据与销毁 popupInstance = null, // 设备弹窗组件实例 用来更新数据与销毁
vehiclePopups = {}, vehiclePopups = {},
popupVises = {}, popupVises = {},
vehiclePopupInstances = {}, vehiclePopupInstances = {},
licenseLabel = {}, // 车牌号label licenseLabel = {}, // 车牌号label
vehicleModels = {}, // 车辆model vehicleModels = {}, // 车辆model
vehicleModelTypes = {}, vehicleModelTypes = {},
lastFrameTime = null, lastFrameTime = null,
noTrackMsg = null, noTrackMsg = null,
AlarmPopupIns = {}, AlarmPopupIns = {},
trackTimer = null; // 轨迹心跳检测 trackTimer = null; // 轨迹心跳检测
export default { export default {
mixins: [ mixins: [
...@@ -216,19 +216,19 @@ export default { ...@@ -216,19 +216,19 @@ export default {
boxesShow(val) { boxesShow(val) {
if (val) { if (val) {
document document
.getElementsByClassName("mapboxgl-ctrl-bottom-right")[0] .getElementsByClassName("mapboxgl-ctrl-bottom-right")[0]
.classList.remove("mapboxgl-ctrl-bottom-right-hide-box"); .classList.remove("mapboxgl-ctrl-bottom-right-hide-box");
} else { } else {
document document
.getElementsByClassName("mapboxgl-ctrl-bottom-right")[0] .getElementsByClassName("mapboxgl-ctrl-bottom-right")[0]
.classList.add("mapboxgl-ctrl-bottom-right-hide-box"); .classList.add("mapboxgl-ctrl-bottom-right-hide-box");
} }
}, },
}, },
created() { created() {
}, },
mounted() { mounted() {
this.$EventBus.$on("emitPopupClose", ({id, overRun}) => { this.$EventBus.$on("emitPopupClose", ({ id, overRun }) => {
console.log('eventbus event received...', id) console.log('eventbus event received...', id)
vehiclePopups[`popup${id}`]?.remove(); vehiclePopups[`popup${id}`]?.remove();
delete vehiclePopups[`popup${id}`]; delete vehiclePopups[`popup${id}`];
...@@ -261,9 +261,9 @@ export default { ...@@ -261,9 +261,9 @@ export default {
]; ];
for (let item of needDicts) { for (let item of needDicts) {
queue.push( queue.push(
this.$store.dispatch("QUERY_DICT", { this.$store.dispatch("QUERY_DICT", {
type: item, type: item,
}) })
); );
} }
Promise.all(queue).then(() => { Promise.all(queue).then(() => {
...@@ -296,7 +296,7 @@ export default { ...@@ -296,7 +296,7 @@ export default {
// 重度拥堵: 3, // 重度拥堵: 3,
// 疑似事故: 4, // 疑似事故: 4,
// }; // };
let resItem = Object.assign({}, item, {longitude: item.lng, latitude: item.lat, type: 3}) let resItem = Object.assign({}, item, { longitude: item.lng, latitude: item.lat, type: 3 })
mapTools.addOrUpdateWarningWave(map, [resItem], item.eventSerialNumber); mapTools.addOrUpdateWarningWave(map, [resItem], item.eventSerialNumber);
// 上报产生的告警 弹窗提醒 定时销毁 // 上报产生的告警 弹窗提醒 定时销毁
let popup = new mapboxgl.Popup({ let popup = new mapboxgl.Popup({
...@@ -305,10 +305,10 @@ export default { ...@@ -305,10 +305,10 @@ export default {
offset: [0, 0], offset: [0, 0],
}); });
popup popup
.setLngLat([item.lng, item.lat]) .setLngLat([item.lng, item.lat])
.setHTML('<div id="alarm_popup"></div>') .setHTML('<div id="alarm_popup"></div>')
.addTo(map) .addTo(map)
.addClassName("alarmPopup"); .addClassName("alarmPopup");
new AlarmPopup({ new AlarmPopup({
propsData: { propsData: {
model: item, model: item,
...@@ -370,12 +370,12 @@ export default { ...@@ -370,12 +370,12 @@ export default {
this.closeWs('callCar1').then(() => { this.closeWs('callCar1').then(() => {
this.removeVehiclePopup() this.removeVehiclePopup()
this.overCarsPoints = {} this.overCarsPoints = {}
this.highLightCarTracks = {}
this.openRealTime() this.openRealTime()
}) })
this.backToRealTimer = null this.backToRealTimer = null
}, 1000 * 20) }, 1000 * 20)
if (socket.ws.readyState === 1) { if (socket.ws.readyState === 1) {
this.showHisVid = true
this.sockets.push(socket); this.sockets.push(socket);
delete this.historyWsToSend.urls delete this.historyWsToSend.urls
let msg = JSON.stringify(this.historyWsToSend) let msg = JSON.stringify(this.historyWsToSend)
...@@ -404,6 +404,8 @@ export default { ...@@ -404,6 +404,8 @@ export default {
// 开始请求视频 // 开始请求视频
this.sigalKey = sendMsg.globalId this.sigalKey = sendMsg.globalId
this.hisUrls = sendMsg.urls || [] this.hisUrls = sendMsg.urls || []
// this.hisUrls = ['videos/1.mp4']
this.showHisVid = true
this.$nextTick(() => { this.$nextTick(() => {
if (this.hisUrls.length) { if (this.hisUrls.length) {
this.loading = true this.loading = true
...@@ -425,9 +427,9 @@ export default { ...@@ -425,9 +427,9 @@ export default {
for (let item of equips) { for (let item of equips) {
if (map.getLayer(item.label)) { if (map.getLayer(item.label)) {
map.setLayoutProperty( map.setLayoutProperty(
item.label, item.label,
"visibility", "visibility",
item.check ? "visible" : "none" item.check ? "visible" : "none"
); );
} }
} }
...@@ -482,10 +484,10 @@ export default { ...@@ -482,10 +484,10 @@ export default {
offsetLength = offsetLength + Number(cameraItem.installHeight); offsetLength = offsetLength + Number(cameraItem.installHeight);
} }
let translatedPoint = turf.destination( let translatedPoint = turf.destination(
this.cLocation, this.cLocation,
offsetLength, // 相机向前偏移距离 offsetLength, // 相机向前偏移距离
this.cBearing, this.cBearing,
{units: "meters"} { units: "meters" }
).geometry.coordinates; ).geometry.coordinates;
map.flyTo({ map.flyTo({
center: translatedPoint, center: translatedPoint,
...@@ -537,14 +539,14 @@ export default { ...@@ -537,14 +539,14 @@ export default {
} }
for (let i = 0; i < pulsingDots.length; i++) { for (let i = 0; i < pulsingDots.length; i++) {
if (map && !map.hasImage(`pulsingDot${i}`)) if (map && !map.hasImage(`pulsingDot${i}`))
map.addImage(`pulsingDot${i}`, pulsingDots[i], {pixelRatio: 2}); map.addImage(`pulsingDot${i}`, pulsingDots[i], { pixelRatio: 2 });
} }
// 添加map icons图片资源 ---end // 添加map icons图片资源 ---end
this.loading = false; this.loading = false;
this.mixDraw(map); this.mixDraw(map);
map.addControl( map.addControl(
new mapboxgl.NavigationControl({showZoom: false}), new mapboxgl.NavigationControl({ showZoom: false }),
"bottom-right" "bottom-right"
); );
this.refreshBounds(); this.refreshBounds();
// 快捷键 // 快捷键
...@@ -554,24 +556,24 @@ export default { ...@@ -554,24 +556,24 @@ export default {
if (event.altKey && event.keyCode === 82) { if (event.altKey && event.keyCode === 82) {
this.rulerStatus = !this.rulerStatus; this.rulerStatus = !this.rulerStatus;
this.rulerStatus this.rulerStatus
? mapTools.addCalibrationTail(map) ? mapTools.addCalibrationTail(map)
: this.removeLayers("calibrationTailLine,chunkSymbol,chunkText"); : this.removeLayers("calibrationTailLine,chunkSymbol,chunkText");
} }
// alt + x 显示隐藏绘制工具 // alt + x 显示隐藏绘制工具
if (event.altKey && event.keyCode === 88) { if (event.altKey && event.keyCode === 88) {
this.boxesShow = false; this.boxesShow = false;
if ( if (
document.getElementsByClassName("mapboxgl-ctrl-top-right")[0] document.getElementsByClassName("mapboxgl-ctrl-top-right")[0]
.style.display === "none" || .style.display === "none" ||
document.getElementsByClassName("mapboxgl-ctrl-top-right")[0] document.getElementsByClassName("mapboxgl-ctrl-top-right")[0]
.style.display === "" .style.display === ""
) { ) {
document.getElementsByClassName( document.getElementsByClassName(
"mapboxgl-ctrl-top-right" "mapboxgl-ctrl-top-right"
)[0].style.display = "unset"; )[0].style.display = "unset";
} else { } else {
document.getElementsByClassName( document.getElementsByClassName(
"mapboxgl-ctrl-top-right" "mapboxgl-ctrl-top-right"
)[0].style.display = "none"; )[0].style.display = "none";
} }
} }
...@@ -654,7 +656,7 @@ export default { ...@@ -654,7 +656,7 @@ export default {
type: "gltf", type: "gltf",
units: "meters", units: "meters",
scale: 0.8, scale: 0.8,
adjustment: {x: 0.5, y: 1, z: -0.5}, adjustment: { x: 0.5, y: 1, z: -0.5 },
bbox: true, bbox: true,
}; };
window.tb.loadObj(options, (model) => { window.tb.loadObj(options, (model) => {
...@@ -751,7 +753,7 @@ export default { ...@@ -751,7 +753,7 @@ export default {
let centerP = turf.point([map.getCenter().lng, map.getCenter().lat]); let centerP = turf.point([map.getCenter().lng, map.getCenter().lat]);
// 取最近点的crossId // 取最近点的crossId
let nearest = turf.nearestPoint(centerP, this.crossGeo); let nearest = turf.nearestPoint(centerP, this.crossGeo);
this.firstCrossClick({features: [nearest]}) this.firstCrossClick({ features: [nearest] })
} }
//-------------------------------------------------------------------- //--------------------------------------------------------------------
// 注册车辆实时ws // 注册车辆实时ws
...@@ -782,10 +784,10 @@ export default { ...@@ -782,10 +784,10 @@ export default {
offset: [0, -30], offset: [0, -30],
}); });
eventPopup eventPopup
.setLngLat([data.lng, data.lat]) .setLngLat([data.lng, data.lat])
.setHTML('<div id="event_popup"></div>') .setHTML('<div id="event_popup"></div>')
.addTo(map) .addTo(map)
.addClassName("eventPopup"); .addClassName("eventPopup");
new EventPopup({ new EventPopup({
propsData: { propsData: {
model: data, model: data,
...@@ -794,7 +796,7 @@ export default { ...@@ -794,7 +796,7 @@ export default {
}, },
// 交通事件热力图 & 点 // 交通事件热力图 & 点
refreshEventLayer(type) { refreshEventLayer(type) {
eventInfo({dayType: type}).then((res) => { eventInfo({ dayType: type }).then((res) => {
// 热力图 - 如果还未创建 先创建图层 赋值 // 热力图 - 如果还未创建 先创建图层 赋值
if (this.currentCheck === "third") { if (this.currentCheck === "third") {
mapTools.addOrUpdateEventHeat(map, res.content); mapTools.addOrUpdateEventHeat(map, res.content);
...@@ -866,12 +868,12 @@ export default { ...@@ -866,12 +868,12 @@ export default {
distance = 80; distance = 80;
} }
let bearing = map.getBearing(); // 平移方向,0 表示正北方向 let bearing = map.getBearing(); // 平移方向,0 表示正北方向
let options = {units: "meters"}; let options = { units: "meters" };
let translatedPoint = turf.destination( let translatedPoint = turf.destination(
prop.wkt.split(","), prop.wkt.split(","),
distance, distance,
bearing, bearing,
options options
); );
// 将地图中心点设置为平移后的点 // 将地图中心点设置为平移后的点
map.flyTo({ map.flyTo({
...@@ -883,14 +885,14 @@ export default { ...@@ -883,14 +885,14 @@ export default {
offset: [0, -20], offset: [0, -20],
}); });
equipPopup equipPopup
.setLngLat(prop.wkt.split(",")) .setLngLat(prop.wkt.split(","))
.setHTML('<div id="equipment_popup"></div>') .setHTML('<div id="equipment_popup"></div>')
.addTo(map) .addTo(map)
.setMaxWidth("500") .setMaxWidth("500")
.addClassName("equipmentPopup"); .addClassName("equipmentPopup");
popupInstance = new EquipmentPopup({ popupInstance = new EquipmentPopup({
propsData: { propsData: {
model: {equip_type: type, ...prop}, model: { equip_type: type, ...prop },
}, },
}); });
popupInstance.$mount("#equipment_popup"); popupInstance.$mount("#equipment_popup");
...@@ -917,12 +919,12 @@ export default { ...@@ -917,12 +919,12 @@ export default {
this.$refs.videoList?.destroyAll(); this.$refs.videoList?.destroyAll();
this.hideTb(); this.hideTb();
this.closeAllWs() this.closeAllWs()
.then(() => { .then(() => {
this.hideTb(); this.hideTb();
this[`switch${checkItem.label}`](); this[`switch${checkItem.label}`]();
}) })
.catch(() => { .catch(() => {
}); });
} else { } else {
if (beforeLabel === "fourth") { if (beforeLabel === "fourth") {
equipPopup?.remove(); equipPopup?.remove();
...@@ -948,15 +950,15 @@ export default { ...@@ -948,15 +950,15 @@ export default {
return item.code == options.originalColor; return item.code == options.originalColor;
}); });
let realColor = colorDesc let realColor = colorDesc
? dict.colorMatch[colorDesc.name] ? dict.colorMatch[colorDesc.name]
: "#fff"; : "#fff";
child.material.color.set(realColor); child.material.color.set(realColor);
} }
}); });
} }
model.setCoords([options.longitude, options.latitude]); model.setCoords([options.longitude, options.latitude]);
model.userData.data = options; model.userData.data = options;
model.setRotation({x: 90, y: 360 - options.courseAngle - 90, z: 0}); model.setRotation({ x: 90, y: 360 - options.courseAngle - 90, z: 0 });
}, },
// 更新超限车辆高亮波纹底盘 // 更新超限车辆高亮波纹底盘
updateOverCarLnglat() { updateOverCarLnglat() {
...@@ -1000,14 +1002,13 @@ export default { ...@@ -1000,14 +1002,13 @@ export default {
// 车辆详情弹窗内容 // 车辆详情弹窗内容
addCheckDetail(data) { addCheckDetail(data) {
console.log('添加弹窗...'); console.log('添加弹窗...');
if (vehiclePopups[`popup${data.id}`]) { if (vehiclePopups[`popup${data.id}`]) {
if (popupVises[`popup${data.id}`]) { if (popupVises[`popup${data.id}`]) {
vehiclePopups[`popup${data.id}`].setLngLat([ vehiclePopups[`popup${data.id}`].setLngLat([
data.longitude, data.longitude,
data.latitude, data.latitude,
]); ]);
vehiclePopupInstances[`popup${data.id}`].$props.model = data; vehiclePopupInstances[`popup${data.id}`] && (vehiclePopupInstances[`popup${data.id}`].$props.model = data)
} }
// 更新选中车辆的轨迹数据 // 更新选中车辆的轨迹数据
if (this.highLightCarTracks[data.id]) { if (this.highLightCarTracks[data.id]) {
...@@ -1030,10 +1031,10 @@ export default { ...@@ -1030,10 +1031,10 @@ export default {
offset: [0, -20], offset: [0, -20],
}); });
vehiclePopups[`popup${data.id}`] vehiclePopups[`popup${data.id}`]
.setLngLat([data.longitude, data.latitude]) .setLngLat([data.longitude, data.latitude])
.setHTML(`<div id="vehicle_popup${data.id}"></div>`) .setHTML(`<div id="vehicle_popup${data.id}"></div>`)
.addTo(map) .addTo(map)
.addClassName("vehicleDetailPopup"); .addClassName("vehicleDetailPopup");
popupVises[`popup${data.id}`] = true; popupVises[`popup${data.id}`] = true;
vehiclePopupInstances[`popup${data.id}`] = new VehiclePopup({ vehiclePopupInstances[`popup${data.id}`] = new VehiclePopup({
propsData: { propsData: {
...@@ -1041,7 +1042,7 @@ export default { ...@@ -1041,7 +1042,7 @@ export default {
}, },
}); });
vehiclePopupInstances[`popup${data.id}`].$mount( vehiclePopupInstances[`popup${data.id}`].$mount(
`#vehicle_popup${data.id}` `#vehicle_popup${data.id}`
); );
} }
}, },
...@@ -1103,7 +1104,7 @@ export default { ...@@ -1103,7 +1104,7 @@ export default {
} else { } else {
this.clearLicense(); this.clearLicense();
this.removeLayers( this.removeLayers(
"lightLayer,lightLayerText,vehicleSelectWave,vehiclePic,waitingLayer" "lightLayer,lightLayerText,vehicleSelectWave,vehiclePic,waitingLayer"
); );
mapTools.addOrUpdateVehicle(map, msg); mapTools.addOrUpdateVehicle(map, msg);
map.on("click", "vehicle", this.vehicleCircleClick); map.on("click", "vehicle", this.vehicleCircleClick);
...@@ -1119,6 +1120,7 @@ export default { ...@@ -1119,6 +1120,7 @@ export default {
} }
} else { } else {
vehiclePopups[`popup${item.id}`]?.remove(); vehiclePopups[`popup${item.id}`]?.remove();
delete this.highLightCarTracks[item.id]
delete this.selectVehicles[item.id] delete this.selectVehicles[item.id]
} }
} }
...@@ -1168,8 +1170,8 @@ export default { ...@@ -1168,8 +1170,8 @@ export default {
if (zoom > 18) { if (zoom > 18) {
// 新增 // 新增
if ( if (
item.dill === "add" || item.dill === "add" ||
(item.dill === "com" && !vehicleModels[item.id]) (item.dill === "com" && !vehicleModels[item.id])
) { ) {
this.addVehicleModels(item); this.addVehicleModels(item);
if (this.licenseState) this.addVehicleLicenses(item); if (this.licenseState) this.addVehicleLicenses(item);
...@@ -1190,8 +1192,8 @@ export default { ...@@ -1190,8 +1192,8 @@ export default {
if (item.dill === "com") { if (item.dill === "com") {
// 车型中途变化 清除并重新创建 // 车型中途变化 清除并重新创建
if ( if (
vehicleModels[key].userData.data.originalType !== vehicleModels[key].userData.data.originalType !==
item.originalType item.originalType
) { ) {
if (vehicleModels[key]) { if (vehicleModels[key]) {
window.tb.clear(item.id, true); window.tb.clear(item.id, true);
...@@ -1207,8 +1209,8 @@ export default { ...@@ -1207,8 +1209,8 @@ export default {
if (licenseLabel[`license${item.id}`]) { if (licenseLabel[`license${item.id}`]) {
// 如果车牌model存在且未改变 则setCoords // 如果车牌model存在且未改变 则setCoords
if ( if (
licenseLabel[`license${item.id}`].userData.data licenseLabel[`license${item.id}`].userData.data
.picLicense == item.picLicense .picLicense == item.picLicense
) { ) {
licenseLabel[`license${item.id}`].setCoords([ licenseLabel[`license${item.id}`].setCoords([
item.longitude, item.longitude,
...@@ -1277,9 +1279,9 @@ export default { ...@@ -1277,9 +1279,9 @@ export default {
let model = vehicleModelTypes[`car${option.originalType}`].duplicate(); let model = vehicleModelTypes[`car${option.originalType}`].duplicate();
this.setModel(model, option, true); this.setModel(model, option, true);
model.addEventListener( model.addEventListener(
"SelectedChange", "SelectedChange",
this.onSelectedChangeVehicle, this.onSelectedChangeVehicle,
false false
); );
vehicleModels[option.id] = model; vehicleModels[option.id] = model;
window.tb.add(model, option.id); window.tb.add(model, option.id);
...@@ -1291,7 +1293,7 @@ export default { ...@@ -1291,7 +1293,7 @@ export default {
ele.style.color = "white"; ele.style.color = "white";
ele.innerText = option.picLicense; ele.innerText = option.picLicense;
ele.style.backgroundImage = `url('${mapAssets.mapIcons[`license${option.licenseColor}`] ele.style.backgroundImage = `url('${mapAssets.mapIcons[`license${option.licenseColor}`]
}')`; }')`;
ele.style.backgroundSize = "100% 100%"; ele.style.backgroundSize = "100% 100%";
ele.style.fontSize = "8px"; ele.style.fontSize = "8px";
ele.style.textAlign = "center"; ele.style.textAlign = "center";
...@@ -1302,7 +1304,7 @@ export default { ...@@ -1302,7 +1304,7 @@ export default {
topMargin: 2, topMargin: 2,
}); });
license.setCoords([option.longitude, option.latitude, 4]); license.setCoords([option.longitude, option.latitude, 4]);
license.userData.data = {picLicense: option.picLicense}; license.userData.data = { picLicense: option.picLicense };
window.tb.add(license, `license${option.id}`); window.tb.add(license, `license${option.id}`);
licenseLabel[`license${option.id}`] = license; licenseLabel[`license${option.id}`] = license;
} }
...@@ -1475,7 +1477,7 @@ export default { ...@@ -1475,7 +1477,7 @@ export default {
box-shadow: none !important; box-shadow: none !important;
} }
.mapboxgl-ctrl-group button + button { .mapboxgl-ctrl-group button+button {
border-top: unset !important; border-top: unset !important;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment