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
|