This commit is contained in:
parent
20f11d581b
commit
2de46a69c3
|
|
@ -6,6 +6,7 @@ import com.ruoyi.device.api.domain.DroneCurrentStatusVO;
|
||||||
import com.ruoyi.device.api.domain.DroneFlightControlRequest;
|
import com.ruoyi.device.api.domain.DroneFlightControlRequest;
|
||||||
import com.ruoyi.device.api.domain.DroneRealtimeInfoVO;
|
import com.ruoyi.device.api.domain.DroneRealtimeInfoVO;
|
||||||
import com.ruoyi.device.api.domain.DroneTakeoffResponseVO;
|
import com.ruoyi.device.api.domain.DroneTakeoffResponseVO;
|
||||||
|
import com.ruoyi.device.api.domain.MachineStateVO;
|
||||||
import com.ruoyi.device.api.enums.DroneCurrentStatusEnum;
|
import com.ruoyi.device.api.enums.DroneCurrentStatusEnum;
|
||||||
import com.ruoyi.device.api.enums.DroneMissionStatusEnum;
|
import com.ruoyi.device.api.enums.DroneMissionStatusEnum;
|
||||||
import com.ruoyi.device.domain.impl.machine.MachineCommandManager;
|
import com.ruoyi.device.domain.impl.machine.MachineCommandManager;
|
||||||
|
|
@ -34,6 +35,9 @@ public class AircraftFlyController extends BaseController
|
||||||
{
|
{
|
||||||
@Autowired
|
@Autowired
|
||||||
private MachineCommandManager machineCommandManager;
|
private MachineCommandManager machineCommandManager;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private com.ruoyi.device.domain.impl.machine.statemachine.MachineStateManager machineStateManager;
|
||||||
/**
|
/**
|
||||||
* 无人机飞控命令
|
* 无人机飞控命令
|
||||||
*
|
*
|
||||||
|
|
@ -145,4 +149,39 @@ public class AircraftFlyController extends BaseController
|
||||||
return R.fail("开机命令执行异常: " + e.getMessage());
|
return R.fail("开机命令执行异常: " + e.getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询无人机状态
|
||||||
|
*
|
||||||
|
* @param sn 设备SN号
|
||||||
|
* @return 状态信息
|
||||||
|
*/
|
||||||
|
@Operation(summary = "查询无人机状态", description = "根据设备SN号查询无人机的实时状态信息")
|
||||||
|
@GetMapping("/machine-state/{sn}")
|
||||||
|
public R<MachineStateVO> getMachineState(
|
||||||
|
@Parameter(description = "设备SN号", required = true, example = "TH001")
|
||||||
|
@PathVariable("sn") String sn)
|
||||||
|
{
|
||||||
|
log.info("查询无人机状态: sn={}", sn);
|
||||||
|
|
||||||
|
try {
|
||||||
|
// 从 MachineStateManager 获取状态
|
||||||
|
com.ruoyi.device.domain.impl.machine.state.MachineStates states = machineStateManager.getStates(sn);
|
||||||
|
|
||||||
|
// 转换为 VO 对象
|
||||||
|
MachineStateVO vo = new MachineStateVO();
|
||||||
|
vo.setSn(sn);
|
||||||
|
vo.setDroneState(states.getDroneState().name());
|
||||||
|
vo.setAirportState(states.getAirportState().name());
|
||||||
|
vo.setCoverState(states.getCoverState().name());
|
||||||
|
vo.setDrcState(states.getDrcState().name());
|
||||||
|
vo.setDebugModeState(states.getDebugModeState().name());
|
||||||
|
|
||||||
|
log.info("查询到状态: sn={}, vo={}", sn, vo);
|
||||||
|
return R.ok(vo);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("查询无人机状态异常: sn={}", sn, e);
|
||||||
|
return R.fail("查询状态失败: " + e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue