| | |
| | | import { getLayers } from '/@/api/layer' |
| | | import { LayerType } from '/@/types/mapLayer' |
| | | import { WaylineFile } from '/@/types/wayline' |
| | | import getter from './getters' |
| | | import { DevicesCmdExecuteInfo } from '/@/types/device-cmd' |
| | | import map from './map' |
| | | import common from '/@/store/common' |
| | | |
| | | const initStateFunc = () => ({ |
| | | Layers: [ |
| | | { |
| | | name: 'default', |
| | | name: '默认', |
| | | id: '', |
| | | is_distributed: true, |
| | | elements: [], |
| | |
| | | type: 1 |
| | | }, |
| | | { |
| | | name: 'share', |
| | | name: '共享', |
| | | id: '', |
| | | is_distributed: true, |
| | | elements: [], |
| | |
| | | [sn: string]: DockOsd |
| | | }, |
| | | currentSn: '', |
| | | currentType: '' |
| | | currentType: -1 |
| | | }, |
| | | osdVisible: { |
| | | osdVisible: { // osd 显示设备相关信息 |
| | | sn: '', |
| | | callsign: '', |
| | | model: '', |
| | | visible: false, |
| | | gateway_sn: '', |
| | | is_dock: false, |
| | | payloads: null |
| | | } as OSDVisible, |
| | | waylineInfo: { |
| | | |
| | |
| | | }, |
| | | // 机场指令执行状态信息 |
| | | devicesCmdExecuteInfo: { |
| | | } as DevicesCmdExecuteInfo |
| | | } as DevicesCmdExecuteInfo, |
| | | mqttState: null as any, // mqtt 实例 |
| | | clientId: '', // mqtt 连接 唯一客户端id |
| | | }) |
| | | |
| | | export type RootStateType = ReturnType<typeof initStateFunc> |
| | |
| | | return |
| | | } |
| | | if (!state.deviceState.dockInfo[info.sn]) { |
| | | state.deviceState.dockInfo[info.sn] = info.host |
| | | return |
| | | state.deviceState.dockInfo[info.sn] = { } as DockOsd |
| | | } |
| | | 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 |
| | | return |
| | | } |
| | | if (info.host.sdr) { |
| | | dock.sdr = info.host.sdr |
| | | dock.media_file_detail = info.host.media_file_detail |
| | | dock.wireless_link = info.host.wireless_link |
| | | dock.link_osd = info.host |
| | | return |
| | | } |
| | | if (info.host.job_number) { |
| | | if (info.host.drone_battery_maintenance_info) { |
| | | dock.drone_battery_maintenance_info = info.host.drone_battery_maintenance_info |
| | | } |
| | | return |
| | | if (info.host.job_number !== undefined) { |
| | | dock.work_osd = info.host |
| | | } |
| | | const sdr = dock.sdr |
| | | const mediaFileDetail = dock.media_file_detail |
| | | const wireless = dock.wireless_link |
| | | state.deviceState.dockInfo[info.sn] = info.host |
| | | state.deviceState.dockInfo[info.sn].sdr = sdr |
| | | state.deviceState.dockInfo[info.sn].media_file_detail = mediaFileDetail |
| | | state.deviceState.dockInfo[info.sn].wireless_link = wireless |
| | | }, |
| | | SET_DRAW_VISIBLE_INFO (state, bool) { |
| | | state.drawVisible = bool |
| | |
| | | } else { |
| | | state.devicesCmdExecuteInfo[info.sn] = [info] |
| | | } |
| | | } |
| | | }, |
| | | SET_MQTT_STATE (state, mqttState) { |
| | | state.mqttState = mqttState |
| | | }, |
| | | SET_CLIENT_ID (state, clientId) { |
| | | state.clientId = clientId |
| | | }, |
| | | } |
| | | |
| | | const actions: ActionTree<RootStateType, RootStateType> = { |
| | |
| | | state: initStateFunc, |
| | | getters, |
| | | mutations, |
| | | actions |
| | | actions, |
| | | modules: { |
| | | getter, |
| | | map, |
| | | common |
| | | }, |
| | | } |
| | | |
| | | const rootStore = createStore(storeOptions) |