Browse Source

add:测试发现的一些问题

master
王梦远 2 months ago
parent
commit
9dd6a6af33
  1. 4
      src/main/java/com/iflytop/sgs/app/cmd/debug/DebugBeeOpenCommand.java
  2. 4
      src/main/java/com/iflytop/sgs/app/cmd/debug/DebugDoorOpenCommand.java
  3. 5
      src/main/java/com/iflytop/sgs/app/cmd/debug/DebugHeaterStartCommand.java
  4. 6
      src/main/java/com/iflytop/sgs/app/cmd/debug/DebugLiquidPumpAddCommand.java
  5. 10
      src/main/java/com/iflytop/sgs/app/cmd/debug/DebugLiquidPumpReduceCommand.java
  6. 12
      src/main/java/com/iflytop/sgs/app/cmd/debug/DebugLiquidPumpStartCommand.java
  7. 4
      src/main/java/com/iflytop/sgs/app/cmd/debug/DebugMotorXMoveToCommand.java
  8. 4
      src/main/java/com/iflytop/sgs/app/cmd/debug/DebugMotorZMoveToCommand.java
  9. 3
      src/main/java/com/iflytop/sgs/common/cmd/DeviceCommandGenerator.java

4
src/main/java/com/iflytop/sgs/app/cmd/debug/DebugBeeOpenCommand.java

@ -1,5 +1,6 @@
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.service.device.DeviceCommandService;
@ -7,6 +8,8 @@ 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.exception.AppException;
import com.iflytop.sgs.common.result.ResultCode;
import com.iflytop.sgs.common.utils.CommandUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -27,6 +30,7 @@ public class DebugBeeOpenCommand extends BaseCommandHandler {
@Override
public CompletableFuture<Void> handle(CmdDTO cmdDTO) {
String mode = cmdDTO.getStringParam("mode");
Assert.notNull(mode, ()->new AppException(ResultCode.INVALID_PARAMETER));
return runAsync(() -> {
DeviceCommandBundle beeOpenDeviceCommand = DeviceCommandGenerator.beepOpen(mode);
CommandFuture doorMoveDeviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), beeOpenDeviceCommand);

4
src/main/java/com/iflytop/sgs/app/cmd/debug/DebugDoorOpenCommand.java

@ -38,8 +38,8 @@ public class DebugDoorOpenCommand extends BaseCommandHandler {
CommandFuture doorSetDeviceCommandSetFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), doorSetDeviceCommandBundle);
CommandUtil.wait(doorSetDeviceCommandSetFuture);
}
CommandFuture deviceCommandOpenFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), DeviceCommandGenerator.doorMove(devicePosition.getDistance()));
DeviceCommandBundle doorMoveDeviceCommand =DeviceCommandGenerator.doorMove(devicePosition.getDistance());
CommandFuture deviceCommandOpenFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), doorMoveDeviceCommand);
CommandUtil.wait(deviceCommandOpenFuture);
});
}

5
src/main/java/com/iflytop/sgs/app/cmd/debug/DebugHeaterStartCommand.java

@ -1,5 +1,6 @@
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.service.device.DeviceCommandService;
@ -8,6 +9,8 @@ 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.HeatModuleCode;
import com.iflytop.sgs.common.exception.AppException;
import com.iflytop.sgs.common.result.ResultCode;
import com.iflytop.sgs.common.utils.CommandUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -30,6 +33,8 @@ public class DebugHeaterStartCommand extends BaseCommandHandler {
String heatModuleCodeStr = cmdDTO.getStringParam("heatModuleCode");
Double temperature = cmdDTO.getDoubleParam("temperature");
HeatModuleCode heatModuleCode = HeatModuleCode.valueOf(heatModuleCodeStr);
Assert.notNull(temperature,()->new AppException(ResultCode.INVALID_PARAMETER));
Assert.checkBetween(temperature,0,200,()->new AppException(ResultCode.INVALID_PARAMETER));
return runAsync(() -> {
DeviceCommandBundle deviceCommand=switch (heatModuleCode) {
case heat_module_01 -> DeviceCommandGenerator.heatRod1Open(temperature);

6
src/main/java/com/iflytop/sgs/app/cmd/debug/DebugLiquidPumpAddCommand.java

@ -36,12 +36,14 @@ public class DebugLiquidPumpAddCommand extends BaseCommandHandler {
Double speed = cmdDTO.getDoubleParam("speed");
return runAsync(() -> {
DeviceCommandBundle deviceCommand;
if (speed != null) {
deviceCommand = DeviceCommandGenerator.liquidPumpMoveBy(position);
DeviceCommandBundle deviceCommand = DeviceCommandGenerator.liquidPumpSet(speed);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), deviceCommand);
CommandUtil.wait(deviceCommandFuture);
}
DeviceCommandBundle deviceCommand = DeviceCommandGenerator.liquidPumpMoveBy(position);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), deviceCommand);
CommandUtil.wait(deviceCommandFuture);
});
}
}

10
src/main/java/com/iflytop/sgs/app/cmd/debug/DebugLiquidPumpReduceCommand.java

@ -34,15 +34,15 @@ public class DebugLiquidPumpReduceCommand extends BaseCommandHandler {
double scale = Double.parseDouble(systemConfigService.getSystemConfigValueByCode(SystemConfigCode.scale_water));
double position = volume * scale;
Double speed = cmdDTO.getDoubleParam("speed");
return runAsync(() -> {
CmdDirection cmdDirection = CmdDirection.forward;
DeviceCommandBundle deviceCommand;
if (speed != null) {
deviceCommand = DeviceCommandGenerator.liquidPumpMoveBy(-position);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), deviceCommand);
DeviceCommandBundle liquidPumpSetCommand = DeviceCommandGenerator.liquidPumpSet(speed);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), liquidPumpSetCommand);
CommandUtil.wait(deviceCommandFuture);
}
DeviceCommandBundle liquidPumpMoveByCommand = DeviceCommandGenerator.liquidPumpMoveBy(-position);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), liquidPumpMoveByCommand);
CommandUtil.wait(deviceCommandFuture);
});
}
}

12
src/main/java/com/iflytop/sgs/app/cmd/debug/DebugLiquidPumpStartCommand.java

@ -1,5 +1,6 @@
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.service.device.DeviceCommandService;
@ -8,6 +9,8 @@ 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.cmd.CmdDirection;
import com.iflytop.sgs.common.exception.AppException;
import com.iflytop.sgs.common.result.ResultCode;
import com.iflytop.sgs.common.utils.CommandUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -29,14 +32,17 @@ public class DebugLiquidPumpStartCommand extends BaseCommandHandler {
public CompletableFuture<Void> handle(CmdDTO cmdDTO) {
Double speed = cmdDTO.getDoubleParam("speed");
String direction = cmdDTO.getStringParam("direction");//front back 正转倒转
Assert.notNull(direction, ()->new AppException(ResultCode.INVALID_PARAMETER));
CmdDirection cmdDirection = CmdDirection.valueOf(direction);
return runAsync(() -> {
DeviceCommandBundle deviceCommand;
if (speed != null) {
deviceCommand = DeviceCommandGenerator.liquidPumpStart(cmdDirection);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), deviceCommand);
DeviceCommandBundle liquidPumpSetCommand = DeviceCommandGenerator.liquidPumpSet(speed);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), liquidPumpSetCommand);
CommandUtil.wait(deviceCommandFuture);
}
DeviceCommandBundle deviceCommand = DeviceCommandGenerator.liquidPumpStart(cmdDirection);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), deviceCommand);
CommandUtil.wait(deviceCommandFuture);
});
}
}

4
src/main/java/com/iflytop/sgs/app/cmd/debug/DebugMotorXMoveToCommand.java

@ -1,5 +1,6 @@
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.service.device.DeviceCommandService;
@ -7,6 +8,8 @@ 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.exception.AppException;
import com.iflytop.sgs.common.result.ResultCode;
import com.iflytop.sgs.common.utils.CommandUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -27,6 +30,7 @@ public class DebugMotorXMoveToCommand extends BaseCommandHandler {
@Override
public CompletableFuture<Void> handle(CmdDTO cmdDTO) {
Double position = cmdDTO.getDoubleParam("position");
Assert.notNull(position, ()->new AppException(ResultCode.INVALID_PARAMETER));
return runAsync(() -> {
DeviceCommandBundle deviceCommand = DeviceCommandGenerator.transferXMove(position);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), deviceCommand);

4
src/main/java/com/iflytop/sgs/app/cmd/debug/DebugMotorZMoveToCommand.java

@ -1,5 +1,6 @@
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.service.device.DeviceCommandService;
@ -7,6 +8,8 @@ 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.exception.AppException;
import com.iflytop.sgs.common.result.ResultCode;
import com.iflytop.sgs.common.utils.CommandUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -28,6 +31,7 @@ public class DebugMotorZMoveToCommand extends BaseCommandHandler {
@Override
public CompletableFuture<Void> handle(CmdDTO cmdDTO) throws Exception {
Double position = cmdDTO.getDoubleParam("position");
Assert.notNull(position, ()->new AppException(ResultCode.INVALID_PARAMETER));
return runAsync(() -> {
DeviceCommandBundle deviceCommand = DeviceCommandGenerator.transferZMove(position);
CommandFuture deviceCommandFuture = deviceCommandService.sendCommand(cmdDTO.getCommandId(), cmdDTO.getCommand(), deviceCommand);

3
src/main/java/com/iflytop/sgs/common/cmd/DeviceCommandGenerator.java

@ -344,8 +344,7 @@ public class DeviceCommandGenerator {
* 加液泵 停止
*/
public static DeviceCommandBundle liquidPumpStop() {
DeviceCommandParams params = new DeviceCommandParams();
return controlCmd(CmdDevice.liquid_pump, CmdAction.stop, params, "加液泵 停止");
return controlCmd(CmdDevice.liquid_pump, CmdAction.stop, null, "加液泵 停止");
}
/**
* 加液泵 失能

Loading…
Cancel
Save