zhaowenyu
2025-12-01 ffb4f5dce1f4d7275b0945e435068b2a86316fb0
ard-sample/src/main/java/com/ard/sample/manage/service/impl/DockOSDServiceImpl.java
@@ -76,13 +76,14 @@
                } else if (dockOsdData.contains("network_state")) {
                    JsonNode jsonNode = mapper.readTree(dockOsdData);
                    if (jsonNode.has("drone_in_dock") && jsonNode.get("sub_device").has("device_online_status")) {
                        String childDeviceSn=jsonNode.get("sub_device").get("device_sn").asText();
                        Long inDock=jsonNode.get("drone_in_dock").asLong();
                        Long deviceOnlineStatus=jsonNode.get("sub_device").get("device_online_status").asLong();
                        if(inDock.equals(1L) && deviceOnlineStatus.equals(0L))
                        {// 飞行器在舱内且关机状态为6
                            _deviceService.updateWorkType(childDeviceSn,6L);
                            RedisOpsUtils.setWithExpire(RedisConst.OSD_STATUS_PREFIX + device.getChildDeviceSn(), 6, RedisConst.DEVICE_ALIVE_SECOND);
                        if(jsonNode.get("sub_device").has("device_sn")) {
                            String childDeviceSn = jsonNode.get("sub_device").get("device_sn").asText();
                            Long inDock = jsonNode.get("drone_in_dock").asLong();
                            Long deviceOnlineStatus = jsonNode.get("sub_device").get("device_online_status").asLong();
                            if (inDock.equals(1L) && deviceOnlineStatus.equals(0L)) {// 飞行器在舱内且关机状态为6
                                _deviceService.updateWorkType(childDeviceSn, 6L);
                                RedisOpsUtils.setWithExpire(RedisConst.OSD_STATUS_PREFIX + device.getChildDeviceSn(), 6, RedisConst.DEVICE_ALIVE_SECOND);
                            }
                        }
                    }
                    receiver.setType(MessageType.STATUS.getType()+"-network");