Browse Source

正在检测

main
maochaoying 2 years ago
parent
commit
fbc7429688
  1. 2
      src/main/java/com/iflytop/nuclear/controller/TaskController.java
  2. 24
      src/main/java/com/iflytop/nuclear/service/impl/CheckServiceImpl.java
  3. 1
      src/main/java/com/iflytop/nuclear/service/impl/TaskServiceImpl.java
  4. 2
      src/main/java/com/iflytop/nuclear/vo/TaskVO.java
  5. 4
      src/main/java/com/iflytop/nuclear/websocket/WebSocketServer.java
  6. BIN
      uploadfiles/xlsx/20230706/堆芯模版.xlsx

2
src/main/java/com/iflytop/nuclear/controller/TaskController.java

@ -87,7 +87,7 @@ public class TaskController {
nuclearCoreConfigQueryWrapper.eq("task_id", id);
boolean remove = nuclearCoreConfigService.remove(nuclearCoreConfigQueryWrapper);
// 将当前任务状态修改为0
checkServiceImpl.updateCoordAndStatus(id, null, 0);
checkServiceImpl.updateCoordAndStatus(id, null, 0, false, false);
JSONObject jo = new JSONObject();
jo.put("result", remove);
return ResponseData.success(jo);

24
src/main/java/com/iflytop/nuclear/service/impl/CheckServiceImpl.java

@ -55,13 +55,19 @@ public class CheckServiceImpl implements CheckService {
return checkInfo;
}
public boolean updateCoordAndStatus(int taskId, String currentCoord, int status) throws IOException {
public boolean updateCoordAndStatus(int taskId, String currentCoord, int status, boolean updateStartTime, boolean updateEndTime) throws IOException {
UpdateWrapper<Task> taskUpdateWrapper = new UpdateWrapper<>();
taskUpdateWrapper.eq("id",taskId);
Task task = new Task();
if (currentCoord != null){
task.setCurrentCoord(currentCoord);
}
if (updateStartTime) {
task.setStartTime(new Date());
}
if (updateEndTime) {
task.setEndTime(new Date());
}
task.setStatus(status);
boolean update = taskService.update(task, taskUpdateWrapper);
this.sendMessageToPage();
@ -88,7 +94,7 @@ public class CheckServiceImpl implements CheckService {
public void initCheck(String initNextCoord,int order, int taskId) throws IOException {
// 指定初始化index为1-6
String nextCoord = initNextCoord;
this.updateCoordAndStatus(taskId, nextCoord, 1);
this.updateCoordAndStatus(taskId, nextCoord, 1, true, false);
// 开始检测
this.sendMessageToDevice(nextCoord, taskId);
// 如果中间终止 则退出返回 与messagehandler 处理逻辑相同 外部控制while的终止
@ -100,7 +106,7 @@ public class CheckServiceImpl implements CheckService {
while (true) {
if (this.breakOff) {
breakFirst = true;
this.updateCoordAndStatus(taskId, nextCoord, 2);
this.updateCoordAndStatus(taskId, nextCoord, 2, false, false);
break;
}
if (this.isMessageReceived()) {
@ -113,10 +119,10 @@ public class CheckServiceImpl implements CheckService {
}
// 检测完毕后获取下一个坐标
nextCoord = this.getNextCoord(nextCoord, order);
this.updateCoordAndStatus(taskId, nextCoord, 1);
this.updateCoordAndStatus(taskId, nextCoord, 1, false, false);
this.sendMessageToDevice(nextCoord, taskId);
if ("finish".equals(nextCoord)) {
this.updateCoordAndStatus(taskId, nextCoord, 3);
this.updateCoordAndStatus(taskId, nextCoord, 3, false, true);
}
}
}
@ -135,7 +141,7 @@ public class CheckServiceImpl implements CheckService {
while (true) {
if (this.breakOff) {
breakFirst = true;
this.updateCoordAndStatus(taskId, nextCoord, 2);
this.updateCoordAndStatus(taskId, nextCoord, 2, false, false);
break;
}
if (this.isMessageReceived()) {
@ -148,10 +154,10 @@ public class CheckServiceImpl implements CheckService {
}
// 检测完毕后获取下一个坐标
nextCoord = this.getNextCoord(nextCoord, order);
this.updateCoordAndStatus(taskId, nextCoord, 1);
this.updateCoordAndStatus(taskId, nextCoord, 1, false, false);
this.sendMessageToDevice(nextCoord, taskId);
if ("finish".equals(nextCoord)) {
this.updateCoordAndStatus(taskId, nextCoord, 3);
this.updateCoordAndStatus(taskId, nextCoord, 3, false, true);
}
}
}
@ -159,7 +165,7 @@ public class CheckServiceImpl implements CheckService {
@Override
public CheckResult autoCheck(int order, String startIndex, int taskId) throws IOException {
this.changeBreakOff(false);
this.updateCoordAndStatus(taskId, null, 1);
this.updateCoordAndStatus(taskId, null, 1, false, false);
currentTaskId = taskId;
if (order == 0) {
if (startIndex == null || "".equals(startIndex)) {

1
src/main/java/com/iflytop/nuclear/service/impl/TaskServiceImpl.java

@ -59,6 +59,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
.taskName(task.getTaskName())
.checkOrder(task.getCheckOrder())
.id(task.getId())
.currentCoord(task.getCurrentCoord())
.status(task.getStatus())
.nuclearCoreName(nuclearCore.getName())
.nuclearStationName(nuclearStation.getName())

2
src/main/java/com/iflytop/nuclear/vo/TaskVO.java

@ -38,4 +38,6 @@ public class TaskVO {
private boolean canUpload;
private Date endTime;
private String currentCoord;
}

4
src/main/java/com/iflytop/nuclear/websocket/WebSocketServer.java

@ -106,8 +106,8 @@ public class WebSocketServer {
log.info("用户消息:" + userId + ",报文:" + message);
if (!StringUtils.isEmpty(message)) {
try {
JSONObject jsonObject = JSON.parseObject(message);
String command = jsonObject.getString("command");
// JSONObject jsonObject = JSON.parseObject(message);
// String command = jsonObject.getString("command");
// 根据command类型分发给不同的handler和detection
// if (!command.isEmpty()) {
// messageHandler.dispatcher(command, jsonObject, session);

BIN
uploadfiles/xlsx/20230706/堆芯模版.xlsx

Loading…
Cancel
Save