From 04c6f23da7b6ba42bd3866cc27cfe866ebb97f2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E5=B0=8F=E4=BA=91?= Date: Wed, 21 Jan 2026 17:43:10 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E4=BD=9C=E4=B8=9A=E6=9E=B6?= =?UTF-8?q?=E6=AC=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../device/service/impl/BufferDeviceImpl.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/ruoyi/device/service/impl/BufferDeviceImpl.java b/src/main/java/com/ruoyi/device/service/impl/BufferDeviceImpl.java index 7ff04cb..84ab6a5 100644 --- a/src/main/java/com/ruoyi/device/service/impl/BufferDeviceImpl.java +++ b/src/main/java/com/ruoyi/device/service/impl/BufferDeviceImpl.java @@ -91,6 +91,8 @@ public class BufferDeviceImpl implements IBufferDeviceService Device airDevice = deviceDomain.selectDeviceByDeviceId(aircraft.getDeviceId()); dto.setAircraftIotId(airDevice.getIotDeviceId()); + + List aircraftPayloads = aircraftPayloadDomain.selectAircraftPayloadByAircraftId(aircraft.getAircraftId()); @@ -115,6 +117,10 @@ public class BufferDeviceImpl implements IBufferDeviceService * 设置无人机状态 */ dto.setAircraftStatus(aircraftDetailDTO.getAircraftStatus()); + /** + * 设置作业架次 + */ + dto.setMissionCount(aircraftDetailDTO.getMissionCount()); } @@ -134,11 +140,11 @@ public class BufferDeviceImpl implements IBufferDeviceService - private DockDetailDTO getChangeAbleDockDetailDTO(String deviceIotId) + private DockDetailDTO getChangeAbleDockDetailDTO(String dockerDeviceIotId) { DockDetailDTO dto = new DockDetailDTO(); - AttributeMap attributeMap = thingsBoardDomain.getPredefinedDeviceAttributes(deviceIotId); - TelemetryMap telemetryMap = thingsBoardDomain.getPredefinedDeviceTelemetry(deviceIotId); + AttributeMap attributeMap = thingsBoardDomain.getPredefinedDeviceAttributes(dockerDeviceIotId); + TelemetryMap telemetryMap = thingsBoardDomain.getPredefinedDeviceTelemetry(dockerDeviceIotId); // 根据 MODE_CODE 设置机场状态 // MODE_CODE 定义: {"0":"空闲中","1":"现场调试","2":"远程调试","3":"固件升级中","4":"作业中","5":"待标定"} @@ -168,6 +174,8 @@ public class BufferDeviceImpl implements IBufferDeviceService } }); + + return dto; } @@ -210,7 +218,9 @@ public class BufferDeviceImpl implements IBufferDeviceService String aircraftStatus = determineAircraftStatus(attributeMap, telemetryMap); dto.setAircraftStatus(aircraftStatus); - + // 从 TelemetryMap 中获取 total_flight_sorties 赋予 missionCount + telemetryMap.get(DeviceTelemetry.Total_Flight_Sorties) + .ifPresent(telemetryValue -> dto.setMissionCount(telemetryValue.getValue())); return dto; }