|
|
@ -3,11 +3,14 @@ package com.iflytop.sgs.app.cmd.debug; |
|
|
|
import cn.hutool.core.lang.Assert; |
|
|
|
import com.iflytop.sgs.app.core.BaseCommandHandler; |
|
|
|
import com.iflytop.sgs.app.model.dto.CmdDTO; |
|
|
|
import com.iflytop.sgs.app.model.entity.SystemConfig; |
|
|
|
import com.iflytop.sgs.app.service.api.SystemConfigService; |
|
|
|
import com.iflytop.sgs.app.service.device.DeviceCommandService; |
|
|
|
import com.iflytop.sgs.common.annotation.CommandDebugMapping; |
|
|
|
import com.iflytop.sgs.common.cmd.CommandFuture; |
|
|
|
import com.iflytop.sgs.common.cmd.DeviceCommandBundle; |
|
|
|
import com.iflytop.sgs.common.cmd.DeviceCommandGenerator; |
|
|
|
import com.iflytop.sgs.common.enums.SystemConfigCode; |
|
|
|
import com.iflytop.sgs.common.enums.cmd.CmdDirection; |
|
|
|
import com.iflytop.sgs.common.exception.AppException; |
|
|
|
import com.iflytop.sgs.common.result.ResultCode; |
|
|
@ -27,6 +30,7 @@ import java.util.concurrent.CompletableFuture; |
|
|
|
@CommandDebugMapping("liquid_pump_start") |
|
|
|
public class DebugLiquidPumpStartCommand extends BaseCommandHandler { |
|
|
|
private final DeviceCommandService deviceCommandService; |
|
|
|
private final SystemConfigService systemConfigService; |
|
|
|
|
|
|
|
@Override |
|
|
|
public CompletableFuture<Void> handle(CmdDTO cmdDTO) { |
|
|
@ -36,6 +40,8 @@ public class DebugLiquidPumpStartCommand extends BaseCommandHandler { |
|
|
|
CmdDirection cmdDirection = CmdDirection.valueOf(direction); |
|
|
|
return runAsync(() -> { |
|
|
|
if (speed != null) { |
|
|
|
double max_speed = Double.parseDouble(systemConfigService.getSystemConfigValueByCode(SystemConfigCode.liquid_max_speed)); |
|
|
|
Assert.isTrue(speed < max_speed, () -> new AppException(ResultCode.INVALID_PARAMETER)); |
|
|
|
DeviceCommandBundle liquidPumpSetCommand = DeviceCommandGenerator.liquidPumpSet(speed); |
|
|
|
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), liquidPumpSetCommand); |
|
|
|
CommandUtil.wait(deviceCommandFuture); |
|
|
|