import { set } from 'lodash' import { EDeviceTypeName } from '@/utils/staticData/enums' const home = { state: { singleUavHome: {}, singleTotal: {}, // 统计单个机巢数据 // 项目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; }, setSingleTotal: (state, data) => { state.singleTotal = data; }, setSelectedWorkSpaceId: (state, id) => { state.selectedWorkSpaceId = id window.localStorage.setItem('bs_workspace_id', id) }, setOsdVisibleInfo: (state, 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) { return state.singleUavHome.id.toString() + '65' }, }, } export default home