diff --git a/src/main/java/com/ruoyi/device/controller/AircraftFlyController.java b/src/main/java/com/ruoyi/device/controller/AircraftFlyController.java index f128a00..e0768f6 100644 --- a/src/main/java/com/ruoyi/device/controller/AircraftFlyController.java +++ b/src/main/java/com/ruoyi/device/controller/AircraftFlyController.java @@ -454,17 +454,19 @@ public class AircraftFlyController extends BaseController @PostMapping("/return-home") public R returnHome(@RequestBody DroneReturnHomeRequest request) { - log.info("收到无人机返航请求: sn={}, messageID={}, taskId={}", request.getSn(), request.getMessageID(), request.getTaskId()); + log.info("收到无人机返航请求: sn={} ", request.getSn()); try { + + Long currentTaskId = flightService.currentRunningTask(request.getSn()); java.util.Map params = new java.util.HashMap<>(); - if(Objects.isNull(request.getMessageID())){ + if(Objects.isNull(currentTaskId)){ params.put("messageID", UUID.randomUUID().toString()); }else { - params.put("messageID", request.getMessageID()); + params.put("messageID",currentTaskId); } params.put("taskId", 9074); - params.put("zhilin", request.getZhilin()); + params.put("zhilin", "03"); CompletableFuture future = machineCommandManager.executeCommand(request.getSn(), CommandType.RETURN_HOME, params); CommandResult result = future.get(); diff --git a/src/main/java/com/ruoyi/device/service/FlightService.java b/src/main/java/com/ruoyi/device/service/FlightService.java index a979ae0..4d98ad2 100644 --- a/src/main/java/com/ruoyi/device/service/FlightService.java +++ b/src/main/java/com/ruoyi/device/service/FlightService.java @@ -14,6 +14,8 @@ import java.util.Map; public interface FlightService { + public Long currentRunningTask(String sn); + public Long createClickTakeOffTask(String sn, String url); /** diff --git a/src/main/java/com/ruoyi/device/service/impl/FlightServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/FlightServiceImpl.java index 99f8967..252c2c5 100644 --- a/src/main/java/com/ruoyi/device/service/impl/FlightServiceImpl.java +++ b/src/main/java/com/ruoyi/device/service/impl/FlightServiceImpl.java @@ -44,6 +44,12 @@ public class FlightServiceImpl implements FlightService @Autowired private RemoteTaskService remoteTaskService; + + public Long currentRunningTask(String sn){ + R taskDTOR = remoteTaskService.getCurrentTaskByUavId(sn,SecurityConstants.INNER); + return taskDTOR.getData().getId(); + } + public Long createClickTakeOffTask(String sn, String routeUrl){ TaskDTO taskDTO = new TaskDTO(); taskDTO.setTaskName("一键起飞");