diff --git a/src/main/java/com/ruoyi/device/service/impl/DjiService.java b/src/main/java/com/ruoyi/device/service/impl/DjiService.java index e9be97d..ef636b9 100644 --- a/src/main/java/com/ruoyi/device/service/impl/DjiService.java +++ b/src/main/java/com/ruoyi/device/service/impl/DjiService.java @@ -26,6 +26,7 @@ import org.springframework.util.CollectionUtils; import java.util.Date; import java.util.List; +import java.util.Objects; @Service @Slf4j @@ -78,8 +79,25 @@ public class DjiService { @Override public void onDroneData(DroneData droneData) { // 更新 Dock 表的 lastActiveTime - // updateDockLastActiveTime(droneData.getDeviceSn()); -// log.info("droneData:{}", droneData); + Device device = deviceDomain.selectDeviceByDeviceSn(droneData.getDeviceSn()); + if(Objects.nonNull(device)) { + Aircraft aircraft = aircraftDomain.selectAircraftByDeviceId(device.getDeviceId()); + if(Objects.nonNull(aircraft)) { + List aircrafts = dockAircraftDomain.selectDockAircraftByAircraftId(aircraft.getAircraftId()); + if(!aircrafts.isEmpty()) { + for(DockAircraft dockAircraft : aircrafts) { + Dock dock = dockDomain.selectDockByDockId(dockAircraft.getDockId()); + if(Objects.nonNull(dock)) { + dock.setLastActiveTime(new Date()); + dockDomain.updateDock(dock); + } + } + } + } + + } + + log.info("droneData:{}", droneData); } });