Browse Source

feat:增加获取自检状态接口,设备自检业务指令

tags/1.0
白凤吉 5 months ago
parent
commit
8364c3d8b2
  1. 6
      src/main/java/com/qyft/ms/app/controller/SelfTestController.java
  2. 14
      src/main/java/com/qyft/ms/app/front/cmd/business/MotorXTZOrigin.java
  3. 26
      src/main/java/com/qyft/ms/app/model/vo/SelfTestVO.java
  4. 12
      src/main/java/com/qyft/ms/app/service/SelfTestService.java
  5. 4
      src/main/resources/application.yml

6
src/main/java/com/qyft/ms/app/controller/SelfTestController.java

@ -19,10 +19,10 @@ import org.springframework.web.bind.annotation.RestController;
public class SelfTestController {
private final SelfTestService selfTestService;
@Operation(summary = "开始自检")
@Operation(summary = "获取自检状态")
@GetMapping("/")
public Result<SelfTestVO> startTest() {
return Result.success(selfTestService.startTest());
public Result<SelfTestVO> getSelfTestStatus() {
return Result.success(selfTestService.getSelfTestStatus());
}
}

14
src/main/java/com/qyft/ms/app/front/cmd/business/MotorXTZOrigin.java

@ -1,5 +1,7 @@
package com.qyft.ms.app.front.cmd.business;
import com.qyft.ms.app.device.status.DeviceStatus;
import com.qyft.ms.app.service.SelfTestService;
import com.qyft.ms.system.common.annotation.CommandMapping;
import com.qyft.ms.system.common.device.command.CommandFuture;
import com.qyft.ms.system.common.device.command.DeviceCommandGenerator;
@ -14,14 +16,16 @@ import org.springframework.stereotype.Component;
import java.util.concurrent.CompletableFuture;
/**
* xyz轴回原点方法
* 设备自检指令
*/
@Slf4j
@Component
@RequiredArgsConstructor
@CommandMapping("motor_xyz_origin")
@CommandMapping("device_self_test")
public class MotorXTZOrigin extends BaseCommandHandler {
private final DeviceCommandService deviceCommandService;
private final SelfTestService selfTestService;
private final DeviceStatus deviceStatus;
@Override
public CompletableFuture<Void> handle(FrontCmdControlForm form) {
@ -35,6 +39,12 @@ public class MotorXTZOrigin extends BaseCommandHandler {
DeviceCommand motorZOriginCommand = DeviceCommandGenerator.motorZOrigin();//z轴回原点
CommandFuture motorZOriginCommandFuture = deviceCommandService.sendCommand(form.getCmdId(), form.getCmdCode(), motorZOriginCommand);
commandWait(motorXOriginCommandFuture, motorYOriginCommandFuture, motorZOriginCommandFuture);
selfTestService.getSelfTestStatus().setXAxisAtOrigin(true);
selfTestService.getSelfTestStatus().setYAxisAtOrigin(true);
selfTestService.getSelfTestStatus().setZAxisAtOrigin(true);
deviceStatus.setSelfTestCompleted(true);
});
}
}

26
src/main/java/com/qyft/ms/app/model/vo/SelfTestVO.java

@ -13,77 +13,77 @@ public class SelfTestVO {
* X 轴是否正常
*/
@Schema(description = "X 轴是否正常")
private boolean xAxisNormal;
private boolean xAxisNormal = false;
/**
* Y 轴是否正常
*/
@Schema(description = "Y 轴是否正常")
private boolean yAxisNormal;
private boolean yAxisNormal = false;
/**
* Z 轴是否正常
*/
@Schema(description = "Z 轴是否正常")
private boolean zAxisNormal;
private boolean zAxisNormal = false;
/**
* 注射泵是否正常
*/
@Schema(description = "注射泵是否正常")
private boolean syringePumpNormal;
private boolean syringePumpNormal = false;
/**
* 三通阀是否正常
*/
@Schema(description = "三通阀是否正常")
private boolean threeWayValveNormal;
private boolean threeWayValveNormal = false;
/**
* 清洗阀是否正常
*/
@Schema(description = "清洗阀是否正常")
private boolean washValveNormal;
private boolean washValveNormal = false;
/**
* 喷嘴阀是否正常
*/
@Schema(description = "喷嘴阀是否正常")
private boolean nozzleValveNormal;
private boolean nozzleValveNormal = false;
/**
* 除湿阀是否正常
*/
@Schema(description = "除湿阀是否正常")
private boolean dehumidifierValveNormal;
private boolean dehumidifierValveNormal = false;
/**
* 照明灯是否正常
*/
@Schema(description = "照明灯是否正常")
private boolean lightingPanelNormal;
private boolean lightingPanelNormal = false;
/**
* 电压控制器是否正常
*/
@Schema(description = "电压控制器是否正常")
private boolean highVoltageNormal;
private boolean highVoltageNormal = false;
/**
* X 轴是否在原点
*/
@Schema(description = "X 轴是否在原点")
private boolean xAxisAtOrigin;
private boolean xAxisAtOrigin = false;
/**
* Y 轴是否在原点
*/
@Schema(description = "Y 轴是否在原点")
private boolean yAxisAtOrigin;
private boolean yAxisAtOrigin = false;
/**
* Z 轴是否在原点
*/
@Schema(description = "Z 轴是否在原点")
private boolean zAxisAtOrigin;
private boolean zAxisAtOrigin = false;
}

12
src/main/java/com/qyft/ms/app/service/SelfTestService.java

@ -1,6 +1,5 @@
package com.qyft.ms.app.service;
import com.qyft.ms.app.device.status.DeviceStatus;
import com.qyft.ms.app.model.vo.SelfTestVO;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -10,14 +9,13 @@ import org.springframework.stereotype.Service;
@Service
@RequiredArgsConstructor
public class SelfTestService {
private final DeviceStatus deviceStatus;
public final SelfTestVO selfTestVO = new SelfTestVO();
/**
* 开始自检
* 获取自检状态
*/
public SelfTestVO startTest() {
SelfTestVO selfTestBO = new SelfTestVO();
deviceStatus.setSelfTestCompleted(true);
return selfTestBO;
public SelfTestVO getSelfTestStatus() {
return selfTestVO;
}
}

4
src/main/resources/application.yml

@ -38,9 +38,9 @@ jwt:
tcp:
enable: true # 是否开启 TCP 连接
server-enable: true # 是否开启 TCP 连接
host: 127.0.0.1
# host: 192.168.1.168
# host: 127.0.0.1
# host: 192.168.1.168
host: 192.168.1.168
port: 9080
reconnect: 5000 # 断线重连间隔(单位:毫秒)
timeout: 10000 # 连接超时时间(单位:毫秒)

Loading…
Cancel
Save