Browse Source

fix:修复设备状态500错误

tags/1.0
白凤吉 5 months ago
parent
commit
6a79849033
  1. 5
      src/main/java/com/qyft/ms/app/controller/DeviceStatusController.java
  2. 2
      src/main/java/com/qyft/ms/app/device/status/DeviceStatus.java
  3. 12
      src/main/java/com/qyft/ms/system/controller/FrontCmdController.java
  4. 8
      src/main/java/com/qyft/ms/system/service/device/DeviceCommandService.java

5
src/main/java/com/qyft/ms/app/controller/DeviceStatusController.java

@ -1,5 +1,6 @@
package com.qyft.ms.app.controller;
import cn.hutool.json.JSONObject;
import com.qyft.ms.app.device.status.DeviceStatus;
import com.qyft.ms.app.model.vo.SelfTestVO;
import com.qyft.ms.app.service.SelfTestService;
@ -22,8 +23,8 @@ public class DeviceStatusController {
@Operation(summary = "获取设备状态")
@GetMapping("/")
public Result<DeviceStatus> getDeviceStatus() {
return Result.success(deviceStatus);
public Result<JSONObject> getDeviceStatus() {
return Result.success(deviceStatus.toJSON());
}
}

2
src/main/java/com/qyft/ms/app/device/status/DeviceStatus.java

@ -1,6 +1,7 @@
package com.qyft.ms.app.device.status;
import cn.hutool.json.JSONObject;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;
import org.springframework.stereotype.Component;
@ -9,6 +10,7 @@ import org.springframework.stereotype.Component;
*/
@Data
@Component
@JsonIgnoreProperties({"advisors", "declaredPointcut", "classFilter"})
public class DeviceStatus {
/**

12
src/main/java/com/qyft/ms/system/controller/FrontCmdController.java

@ -36,12 +36,12 @@ public class FrontCmdController {
String cmdId = form.getCmdId();
String cmdCode = form.getCmdCode();
try {
if(!"motor_xyz_origin".equals(cmdCode)){
if (!deviceStatus.isSelfTestCompleted()) {
log.error("未进行自检,无法执行业务指令");
return Result.failed("未进行自检,无法执行业务指令");
}
}
// if(!"motor_xyz_origin".equals(cmdCode)){
// if (!deviceStatus.isSelfTestCompleted()) {
// log.error("未进行自检,无法执行业务指令");
// return Result.failed("未进行自检,无法执行业务指令");
// }
// }
webSocketService.pushDebugMsg(FrontResponseGenerator.generateJson(cmdId, cmdCode, CommandStatus.RECEIVE, "已收到业务指令请求,开始处理"));
CommandHandler commandHandler = registry.getHandler(cmdCode);
if (commandHandler == null) {

8
src/main/java/com/qyft/ms/system/service/device/DeviceCommandService.java

@ -96,18 +96,18 @@ public class DeviceCommandService {
public void handleDeviceResult(JSONObject deviceResult) {
String tag = deviceResult.getStr("tag");
if ("ack".equals(tag)) {
if ("ACK".equals(tag)) {
completeCommandAck(deviceResult);
} else if ("response".equals(tag)) {
} else if ("RESPONSE".equals(tag)) {
completeCommandResponse(deviceResult);
} else if ("event".equals(tag)) {
} else if ("EVENT".equals(tag)) {
String eventType = deviceResult.getStr("event_type");
if ("system_e_stop_pressed".equals(eventType)) {//系统急停按钮被按下
deviceStatus.setStopPressed(true);
} else if ("system_e_stop_released".equals(eventType)) {//系统急停按钮被释放
deviceStatus.setStopPressed(false);
}
} else if ("status".equals(tag)) {
} else if ("STATUS".equals(tag)) {
}
}

Loading…
Cancel
Save