From 32e51ed4e7a1ca073efb46eb1af8e1b167802d5b Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Sat, 14 Jun 2025 14:16:38 +0800
Subject: [PATCH] feat:智飞工单已审核通过的工单详情,地图航线显示处理
---
src/hooks/useRouteLine/useRouteLine.js | 15 +++++++++++----
src/views/tickets/orderLog.vue | 7 ++++---
src/components/map-container/mapContainer.vue | 2 +-
3 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/src/components/map-container/mapContainer.vue b/src/components/map-container/mapContainer.vue
index ac4e60b..839228b 100644
--- a/src/components/map-container/mapContainer.vue
+++ b/src/components/map-container/mapContainer.vue
@@ -113,7 +113,7 @@
* @param data 数据 数据格式 [[lng, lat], [lng, lat], [lng, lat]]
*/
async function addPolyline (data) {
- await renderPreviewLine(data.url, data.type, data.cb)
+ await renderPreviewLine(data.url, data.type, data.cb, data.infos)
}
onMounted(() => {
diff --git a/src/hooks/useRouteLine/useRouteLine.js b/src/hooks/useRouteLine/useRouteLine.js
index 3397ee7..296846d 100644
--- a/src/hooks/useRouteLine/useRouteLine.js
+++ b/src/hooks/useRouteLine/useRouteLine.js
@@ -33,6 +33,7 @@
execute_height_mode: '',
auto_flight_speed: '',
wayline_type: '',
+ infos: {}
})
const routeLineListClick = async data => {
@@ -42,7 +43,7 @@
await renderRouteLine(data.data)
}
- async function renderPreviewLine (kmzUrl, wayline_type, cb = () => { }) {
+ async function renderPreviewLine (kmzUrl, wayline_type, cb = () => { }, infos = {}) {
resetCurRouteLineData()
const { pointPlacemark, polygonList, templateType, startPoint, execute_height_mode, auto_flight_speed } =
@@ -55,6 +56,7 @@
execute_height_mode,
auto_flight_speed,
wayline_type,
+ infos: infos
}
cb(curRouteLineData.value.polygonList.map(item => [Number(item[0]), Number(item[1])]))
@@ -130,8 +132,6 @@
})
}
-
-
let pointList = handlePointListForKmz({
placemark: data,
startPoint: curRouteLineData.value.startPoint,
@@ -141,7 +141,14 @@
pointList.shift()
- const routePositions = pointList.map(i => Cesium.Cartesian3.fromDegrees(Number(i.longitude), Number(i.latitude), Number(i.height)))
+ let dronePosition = {}
+ if (JSON.stringify(curRouteLineData.value.infos) != '{}') dronePosition = {
+ longitude: curRouteLineData.value.infos[0].longitude,
+ latitude: curRouteLineData.value.infos[0].latitude,
+ height: curRouteLineData.value.infos[0].height || 0,
+ }
+
+ const routePositions = [dronePosition, ...pointList].map(i => Cesium.Cartesian3.fromDegrees(Number(i.longitude), Number(i.latitude), Number(i.height)))
previewDataSource.entities.add({
polyline: {
diff --git a/src/views/tickets/orderLog.vue b/src/views/tickets/orderLog.vue
index 782f5e5..fab04ab 100644
--- a/src/views/tickets/orderLog.vue
+++ b/src/views/tickets/orderLog.vue
@@ -1055,7 +1055,7 @@
this.initMapLine()
},
- initMapLine (cb = () => { }) {
+ initMapLine (infos = {}, cb = () => { }) {
let currentLine = this.wayLineList.find(item => item.wayline_id == this.form.file_id)
if (!currentLine) return
@@ -1065,7 +1065,8 @@
this.$refs.MapContainer.initAddEntity('polyline', {
url: `${import.meta.env.VITE_APP_AIRLINE_URL + currentLine.object_key}?_t=${new Date().getTime()}`,
type: currentLine.wayline_type,
- cb
+ cb,
+ infos
})
}
})
@@ -1077,7 +1078,7 @@
that.device_sns = []
- this.initMapLine(async (polygon) => {
+ this.initMapLine({}, async (polygon) => {
const currentLine = that.wayLineList.find(item => item.wayline_id === waylineId)
//按照航线来
--
Gitblit v1.9.3