From d5e65bafff7cfe6d4c01abc6aacfd6dd2c9285f6 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Sat, 19 Apr 2025 10:09:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/components/CurrentTaskDetails/CurrentTaskDetails.vue |   28 ++++++++++++++++------------
 1 files changed, 16 insertions(+), 12 deletions(-)

diff --git a/src/components/CurrentTaskDetails/CurrentTaskDetails.vue b/src/components/CurrentTaskDetails/CurrentTaskDetails.vue
index 1ec6661..7cdda60 100644
--- a/src/components/CurrentTaskDetails/CurrentTaskDetails.vue
+++ b/src/components/CurrentTaskDetails/CurrentTaskDetails.vue
@@ -36,9 +36,6 @@
 import { getJobDetails } from '@/api/home/task'
 
 import RealTimeMap from '@/components/CurrentTaskDetails/RealTimeMap.vue'
-import { getWebsocketUrl } from '@/websocket/util/config'
-import { useConnectWebSocket } from '@/utils/websocket/connect-websocket'
-import { EBizCode } from '@/utils/staticData/enums'
 import ControlPanel from '@/components/CurrentTaskDetails/ControlPanel/ControlPanel.vue'
 import TaskDetailsHead from '@/components/CurrentTaskDetails/TaskDetailsHead.vue'
 import TaskDetailsLeft from '@/components/CurrentTaskDetails/TaskDetailsLeft.vue'
@@ -49,7 +46,7 @@
 import { updateDroneQualityApi } from '@/api/drc'
 import { getLiveAiLinkApi } from '@/api/payload'
 import { CURRENT_CONFIG } from '@/utils/http/config'
-import { useDroneWS } from '@/components/CurrentTaskDetails/useDroneWS'
+import { useDroneWS } from '@/hooks/useDroneWS'
 
 const isAutoControl = ref(true) //是否自动控制
 const lineQuality = ref(1) //1流畅,2标清
@@ -61,12 +58,24 @@
 const trueAltitude = ref('') // 真实高度
 const isAiLive = ref(false) // 是ai直播
 const video_id = ref('') // 直播视频id
-const workspace_id = ref('')
+
 const isShow = defineModel('show') // 是否显示当前任务详情
 const props = defineProps(['id'])
 const currentLiveUrl = ref('') // 当前直播地址
 const isTakeOff = ref(false) // 是在飞行中
 const isMaxMap = ref(false) //是大地图
+
+const workspace_id = ref('')
+let { wsInfo,removeWS } = useDroneWS(workspace_id) //ws信息,是一个ref对象
+watch(
+	wsInfo,
+	() => {
+		// wsInfo 变化触发
+		setCurrentLiveUrl()
+	},
+	{ deep: true }
+)
+provide('wsInfo', wsInfo)
 
 provide('isAutoControl', isAutoControl)
 provide('lineQuality', lineQuality)
@@ -79,12 +88,6 @@
 provide('trueAltitude', trueAltitude)
 provide('isAiLive', isAiLive)
 provide('video_id', video_id)
-
-let wsInfo = useDroneWS(workspace_id)
-watch(wsInfo, () => {
-	setCurrentLiveUrl()
-}, { deep: true })
-provide('wsInfo', wsInfo)
 
 // 获取机巢直播
 const getDeviceLiveUrl = async () => {
@@ -119,7 +122,8 @@
 // 设置当前直播地址
 const setCurrentLiveUrl = async () => {
 	const deviceInfo = deviceOsdInfo.value?.data?.host
-	const currentIsTakeOff = ![14, 0].includes(deviceInfo.mode_code)
+	if (!deviceInfo) return
+	const currentIsTakeOff = ![14, 0].includes(deviceInfo?.mode_code)
 	// 如果还是之前的状态,不切换
 	if (isTakeOff.value === currentIsTakeOff) return
 	isTakeOff.value = currentIsTakeOff

--
Gitblit v1.9.3