| | |
| | | import { EDeviceTypeName } from '@/types'; |
| | | import { EDeviceTypeName } from '@/types' |
| | | |
| | | const initStateFunc = () => ({ |
| | | Layers: [ |
| | |
| | | currentSn: '', |
| | | currentType: -1, |
| | | }, |
| | | videoSurveillance: {}, // 视频监控相关信息 |
| | | osdVisible: { |
| | | // osd 显示设备相关信息 |
| | | sn: '', |
| | |
| | | selectedAction: undefined, |
| | | kmzPath: '', |
| | | }, |
| | | }); |
| | | }) |
| | | |
| | | const mutations = { |
| | | SET_LAYER_INFO(state, info) { |
| | | state.Layers = info; |
| | | // 获取视频相关信息 |
| | | SAVE_VIDEO_SURVEILLANCE_INFO (state, info) { |
| | | console.log('videoSurveillanceInfo', info) |
| | | state.videoSurveillance = info |
| | | }, |
| | | SET_DEVICE_INFO(state, info) { |
| | | state.deviceState.deviceInfo[info.sn] = info.host; |
| | | state.deviceState.currentSn = info.sn; |
| | | state.deviceState.currentType = EDeviceTypeName.Aircraft; |
| | | SET_LAYER_INFO (state, info) { |
| | | state.Layers = info |
| | | }, |
| | | SET_GATEWAY_INFO(state, info) { |
| | | state.deviceState.gatewayInfo[info.sn] = info.host; |
| | | state.deviceState.currentSn = info.sn; |
| | | state.deviceState.currentType = EDeviceTypeName.Gateway; |
| | | SET_DEVICE_INFO (state, info) { |
| | | state.deviceState.deviceInfo[info.sn] = info.host |
| | | state.deviceState.currentSn = info.sn |
| | | state.deviceState.currentType = EDeviceTypeName.Aircraft |
| | | }, |
| | | SET_DOCK_INFO(state, info) { |
| | | SET_GATEWAY_INFO (state, info) { |
| | | state.deviceState.gatewayInfo[info.sn] = info.host |
| | | state.deviceState.currentSn = info.sn |
| | | state.deviceState.currentType = EDeviceTypeName.Gateway |
| | | }, |
| | | SET_DOCK_INFO (state, info) { |
| | | if (Object.keys(info.host).length === 0) { |
| | | return; |
| | | return |
| | | } |
| | | if (!state.deviceState.dockInfo[info.sn]) { |
| | | 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]; |
| | | 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; |
| | | dock.basic_osd = info.host |
| | | return |
| | | } |
| | | if (info.host.sdr) { |
| | | dock.link_osd = info.host; |
| | | return; |
| | | dock.link_osd = info.host |
| | | return |
| | | } |
| | | if (info.host.job_number !== undefined) { |
| | | dock.work_osd = info.host; |
| | | dock.work_osd = info.host |
| | | } |
| | | }, |
| | | SET_HMSInfo_DetailSn(state, data) { |
| | | state.hmsInfoDetailSn = data; |
| | | SET_HMSInfo_DetailSn (state, data) { |
| | | state.hmsInfoDetailSn = data |
| | | }, |
| | | SET_DRAW_VISIBLE_INFO(state, bool) { |
| | | state.drawVisible = bool; |
| | | SET_DRAW_VISIBLE_INFO (state, bool) { |
| | | state.drawVisible = bool |
| | | }, |
| | | SET_MAP_ELEMENT_CREATE(state, info) { |
| | | state.wsEvent.mapElementCreat = info; |
| | | SET_MAP_ELEMENT_CREATE (state, info) { |
| | | state.wsEvent.mapElementCreat = info |
| | | }, |
| | | SET_MAP_ELEMENT_UPDATE(state, info) { |
| | | state.wsEvent.mapElementUpdate = info; |
| | | SET_MAP_ELEMENT_UPDATE (state, info) { |
| | | state.wsEvent.mapElementUpdate = info |
| | | }, |
| | | SET_MAP_ELEMENT_DELETE(state, info) { |
| | | state.wsEvent.mapElementDelete = info; |
| | | SET_MAP_ELEMENT_DELETE (state, info) { |
| | | state.wsEvent.mapElementDelete = info |
| | | }, |
| | | SET_DEVICE_ONLINE(state, info) { |
| | | state.deviceStatusEvent.deviceOnline = info; |
| | | SET_DEVICE_ONLINE (state, info) { |
| | | state.deviceStatusEvent.deviceOnline = info |
| | | }, |
| | | SET_DEVICE_OFFLINE(state, info) { |
| | | state.deviceStatusEvent.deviceOffline = info; |
| | | delete state.deviceState.gatewayInfo[info.sn]; |
| | | delete state.deviceState.deviceInfo[info.sn]; |
| | | delete state.deviceState.dockInfo[info.sn]; |
| | | delete state.hmsInfo[info.sn]; |
| | | SET_DEVICE_OFFLINE (state, info) { |
| | | state.deviceStatusEvent.deviceOffline = info |
| | | delete state.deviceState.gatewayInfo[info.sn] |
| | | delete state.deviceState.deviceInfo[info.sn] |
| | | delete state.deviceState.dockInfo[info.sn] |
| | | delete state.hmsInfo[info.sn] |
| | | // delete state.markerInfo.coverMap[info.sn] |
| | | // delete state.markerInfo.pathMap[info.sn] |
| | | }, |
| | | SET_OSD_VISIBLE_INFO(state, info) { |
| | | state.osdVisible = info; |
| | | SET_OSD_VISIBLE_INFO (state, info) { |
| | | state.osdVisible = info |
| | | }, |
| | | SET_SELECT_WAYLINE_INFO(state, info) { |
| | | state.waylineInfo = info; |
| | | SET_SELECT_WAYLINE_INFO (state, info) { |
| | | state.waylineInfo = info |
| | | }, |
| | | SET_SELECT_DOCK_INFO(state, info) { |
| | | state.dockInfo = info; |
| | | SET_SELECT_DOCK_INFO (state, info) { |
| | | state.dockInfo = info |
| | | }, |
| | | SET_DEVICE_HMS_INFO(state, info) { |
| | | const hmsList = state.hmsInfo[info.sn]; |
| | | state.hmsInfo[info.sn] = info.host.concat(hmsList ?? []); |
| | | SET_DEVICE_HMS_INFO (state, info) { |
| | | const hmsList = state.hmsInfo[info.sn] |
| | | state.hmsInfo[info.sn] = info.host.concat(hmsList ?? []) |
| | | }, |
| | | SET_DEVICES_CMD_EXECUTE_INFO(state, info) { |
| | | SET_DEVICES_CMD_EXECUTE_INFO (state, info) { |
| | | // 保存设备指令ws消息推送 |
| | | if (!info.sn) { |
| | | return; |
| | | return |
| | | } |
| | | if (state.devicesCmdExecuteInfo[info.sn]) { |
| | | const index = state.devicesCmdExecuteInfo[info.sn].findIndex( |
| | | cmdExecuteInfo => cmdExecuteInfo.biz_code === info.biz_code |
| | | ); |
| | | ) |
| | | if (index >= 0) { |
| | | // 丢弃前面的消息 |
| | | if (state.devicesCmdExecuteInfo[info.sn][index].timestamp > info.timestamp) { |
| | | return; |
| | | return |
| | | } |
| | | state.devicesCmdExecuteInfo[info.sn][index] = info; |
| | | state.devicesCmdExecuteInfo[info.sn][index] = info |
| | | } else { |
| | | state.devicesCmdExecuteInfo[info.sn].push(info); |
| | | state.devicesCmdExecuteInfo[info.sn].push(info) |
| | | } |
| | | } else { |
| | | state.devicesCmdExecuteInfo[info.sn] = [info]; |
| | | state.devicesCmdExecuteInfo[info.sn] = [info] |
| | | } |
| | | }, |
| | | SET_MQTT_STATE(state, mqttState) { |
| | | state.mqttState = mqttState; |
| | | SET_MQTT_STATE (state, mqttState) { |
| | | state.mqttState = mqttState |
| | | }, |
| | | SET_CLIENT_ID(state, clientId) { |
| | | state.clientId = clientId; |
| | | SET_CLIENT_ID (state, clientId) { |
| | | state.clientId = clientId |
| | | }, |
| | | // 设置wayline中的信息 |
| | | SET_WAYLINE_INFO(state, { isShow, selectedPoint, selectedAction }) { |
| | | isShow !== undefined && (state.waylineTool.isShow = isShow); |
| | | state.waylineTool.selectedPoint = selectedPoint; |
| | | selectedAction !== undefined && (state.waylineTool.selectedAction = selectedAction); |
| | | SET_WAYLINE_INFO (state, { isShow, selectedPoint, selectedAction }) { |
| | | isShow !== undefined && (state.waylineTool.isShow = isShow) |
| | | state.waylineTool.selectedPoint = selectedPoint |
| | | selectedAction !== undefined && (state.waylineTool.selectedAction = selectedAction) |
| | | }, |
| | | SET_WAYLINE_KMZPATH(state, kmzPath) { |
| | | state.waylineTool.kmzPath = kmzPath; |
| | | SET_WAYLINE_KMZPATH (state, kmzPath) { |
| | | state.waylineTool.kmzPath = kmzPath |
| | | }, |
| | | }; |
| | | } |
| | | |
| | | const actions = { |
| | | updateElement({ state }, content) { |
| | | const key = content.id.replaceAll('resource__', ''); |
| | | const type = content.type; |
| | | const layers = state.Layers; |
| | | const layer = layers.find(item => item.id === key); |
| | | updateElement ({ state }, content) { |
| | | const key = content.id.replaceAll('resource__', '') |
| | | const type = content.type |
| | | const layers = state.Layers |
| | | const layer = layers.find(item => item.id === key) |
| | | if (layer) { |
| | | layer[type] = content.bool; |
| | | layer[type] = content.bool |
| | | } |
| | | }, |
| | | |
| | | getLayerInfo({ state }, id) { |
| | | return state.layerBaseInfo[id]; |
| | | getLayerInfo ({ state }, id) { |
| | | return state.layerBaseInfo[id] |
| | | }, |
| | | }; |
| | | } |
| | | |
| | | const device = { |
| | | state: initStateFunc, |
| | | mutations, |
| | | actions, |
| | | }; |
| | | } |
| | | |
| | | export default device; |
| | | export default device |