From dd57e0e9a989e7ee8b3e3473a7ee6a1dff06a4ae Mon Sep 17 00:00:00 2001
From: 张含笑 <zhx18749296735@163.com>
Date: Tue, 27 Jan 2026 17:19:04 +0800
Subject: [PATCH] feat:调整加载

---
 applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue |   48 +++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 41 insertions(+), 7 deletions(-)

diff --git a/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue b/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
index 7c38fd5..869bdae 100644
--- a/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
+++ b/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
@@ -12,8 +12,13 @@
 				<div class="leftMap command-cesium" id="leftMapContainer"></div>
 			</div>
 			<div class="right-container">
-				<div class="header">{{ dialogTitle }}</div>
-				<div class="dialog-container">
+				<div class="header">
+					<span>{{ dialogTitle }}</span>
+
+					<el-icon class="close-btn" @click.stop="visible = false"><Close /></el-icon>
+				</div>
+
+				<div class="content">
 					<div class="detail-title">轨迹信息</div>
 					<el-row>
 						<el-col :span="24">
@@ -40,7 +45,7 @@
 					<div class="detail-title">轨迹点</div>
 					<div class="command-table-container">
 						<div class="command-table-content">
-							<el-table class="command-table" :data="list">
+							<el-table class="command-table" :data="list" :row-class-name="getRowClassName">
 								<el-table-column type="index" width="60" label="序号" />
 								<el-table-column label="经纬度">
 									<template #default="{ row }">{{ row.longitude }},{{ row.latitude }}</template>
@@ -51,7 +56,7 @@
 					</div>
 				</div>
 				<div class="footer">
-					<el-button color="#2B2B4C" @click="handleCancel">{{ dialogReadonly ? '关闭' : '取消' }}</el-button>
+					<el-button v-if="dialogMode != 'view'" color="#2B2B4C" @click="handleCancel">{{ dialogReadonly ? '关闭' : '取消' }}</el-button>
 				</div>
 			</div>
 		</div>
@@ -59,13 +64,16 @@
 </template>
 
 <script setup>
+import { Close } from '@element-plus/icons-vue'
+
 import { computed, nextTick, ref } from 'vue'
 import { fwDroneFlightRecordDetailApi } from '@/views/recordManage/historyTracks/fwDroneFlightRecord'
 import { fwDroneFlightRecordDetailPageApi } from '@/views/recordManage/historyTracks/flyTrajectory'
 import { PublicCesium } from '@/utils/cesium/publicCesium'
 import * as Cesium from 'cesium'
-import { flyVisual } from '@/utils/cesium/mapUtil'
+import { flyVisual } from '@ztzf/utils'
 import { ArrowLineMaterialProperty } from '@/utils/cesium/Material'
+import droneIcon from '@/assets/images/dataCockpit/map/drone.png'
 
 const initForm = () => ({
 	droneName: '',
@@ -120,6 +128,7 @@
 // 渲染航线
 function drawFlightPath() {
 	const positions = list.value.map(p => degreesToC3(p))
+	if (!positions.length) return
 	droneLineEntity && geometricSource.entities.remove(droneLineEntity)
 	droneLineEntity = geometricSource.entities.add({
 		polyline: {
@@ -127,6 +136,16 @@
 			positions: positions,
 			material: arrowLineMaterialProperty,
 			clampToGround: false,
+		},
+	})
+	startDroneEntity && geometricSource.entities.remove(startDroneEntity)
+	startDroneEntity = geometricSource.entities.add({
+		position: positions[0],
+		billboard: {
+			image: droneIcon,
+			width: 40,
+			height: 40,
+			verticalOrigin: Cesium.VerticalOrigin.CENTER,
 		},
 	})
 	viewer.flyTo(droneLineEntity, { duration: 0 })
@@ -139,9 +158,16 @@
 	viewer = null
 	geometricSource = null
 	droneLineEntity = null
+	startDroneEntity = null
 }
 
-let viewer, geometricSource, droneLineEntity
+function getRowClassName({ row }) {
+	console.log(row.isAlarm, 11111111111)
+
+	return row?.isAlarm === 1 ? 'alarm-row' : ''
+}
+
+let viewer, geometricSource, droneLineEntity, startDroneEntity
 function initMap() {
 	if (viewer) return
 	const publicCesiumInstance = new PublicCesium({
@@ -173,4 +199,12 @@
 defineExpose({ open })
 </script>
 
-<style scoped lang="scss"></style>
+<style scoped lang="scss">
+:deep(.alarm-row) {
+	background: #2B2B4C !important;
+
+	td {
+		background-color: transparent !important;
+	}
+}
+</style>

--
Gitblit v1.9.3