From ec3c634630d4fc44c01bf4e5902c7f9fee67adab Mon Sep 17 00:00:00 2001
From: chenyao <1219716595@qq.com>
Date: Wed, 02 Apr 2025 18:11:13 +0800
Subject: [PATCH] feat:对接机巢状态和直播功能以及ws
---
src/store/modules/home.js | 79 +++++++++++++++++++++++++++++++++++++++
1 files changed, 78 insertions(+), 1 deletions(-)
diff --git a/src/store/modules/home.js b/src/store/modules/home.js
index fd72d30..cc572bd 100644
--- a/src/store/modules/home.js
+++ b/src/store/modules/home.js
@@ -1,12 +1,89 @@
+import { set } from "lodash";
+import { EDeviceTypeName } from '@/utils/staticData/enums'
+
const home = {
state: {
- singleUavHome: null,
+ singleUavHome: {},
+ // 项目id
+ selectedWorkSpaceId: window.localStorage.getItem('bs_workspace_id'),
+ wsMessage: {},
+ deviceState: {
+ gatewayInfo: {},
+ deviceInfo: {},
+ timestamp: '',
+ dockInfo: {},
+ currentSn: '',
+ currentType: -1,
+ drone_charge_state_new: {},
+ psdk_widget_values: {},
+ speakerAudioPlayStartProgress: {},
+ },
+ osdVisible: {
+ // osd 显示设备相关信息
+ sn: '',
+ callsign: '',
+ model: '',
+ visible: false,
+ gateway_sn: '',
+ is_dock: false,
+ payloads: null,
+ device_domain: '',
+ device_sub_type: '',
+ device_type: '',
+ },
},
actions: {},
mutations: {
setSingleUavHome: (state, data) => {
state.singleUavHome = data;
},
+ setSelectedWorkSpaceId: (state, id) => {
+ state.selectedWorkSpaceId = id
+ window.localStorage.setItem('bs_workspace_id', id)
+ },
+ setOsdVisibleInfo: (state, info) => {
+ console.log(info, '哒哒哒')
+ state.osdVisible = Object.assign({}, info)
+ window.localStorage.setItem('bs_osd', JSON.stringify(info))
+ },
+ setWsMessage: (state, data) => {
+ state.wsMessage = data.host;
+ },
+ setDeviceInfo: (state, data) => {
+ const info = data.data
+ state.deviceState.timestamp = data.timestamp
+ state.deviceState.deviceInfo[info.sn] = info.host
+ state.deviceState.currentSn = info.sn
+ state.deviceState.currentType = EDeviceTypeName.Aircraft
+ },
+ setGatewayInfo: (state, info) => {
+ state.deviceState.gatewayInfo[info.sn] = info.host
+ state.deviceState.currentSn = info.sn
+ state.deviceState.currentType = EDeviceTypeName.Gateway
+ },
+ setDockOnfo: (state, info) => {
+ if (Object.keys(info.host).length === 0) return
+
+ if (!state.deviceState.dockInfo[info.sn]) {
+ state.deviceState.dockInfo[info.sn] = {}
+ }
+ state.deviceState.currentSn = info.sn
+ state.deviceState.currentType = EDeviceTypeName.Dock
+ const dock = state.deviceState.dockInfo[info.sn]
+ if (info.host.mode_code !== undefined) {
+ dock.basic_osd = info.host
+ state.deviceState.drone_charge_state_new =
+ dock.basic_osd.drone_charge_state
+ return
+ }
+ if (info.host.sdr) {
+ dock.link_osd = info.host
+ return
+ }
+ if (info.host.job_number !== undefined) {
+ dock.work_osd = info.host
+ }
+ },
},
getters:{
test(state) {
--
Gitblit v1.9.3