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); nuclearCoreConfigQueryWrapper.eq("task_id", id);
boolean remove = nuclearCoreConfigService.remove(nuclearCoreConfigQueryWrapper); boolean remove = nuclearCoreConfigService.remove(nuclearCoreConfigQueryWrapper);
// 将当前任务状态修改为0 // 将当前任务状态修改为0
checkServiceImpl.updateCoordAndStatus(id, null, 0);
checkServiceImpl.updateCoordAndStatus(id, null, 0, false, false);
JSONObject jo = new JSONObject(); JSONObject jo = new JSONObject();
jo.put("result", remove); jo.put("result", remove);
return ResponseData.success(jo); 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; 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<>(); UpdateWrapper<Task> taskUpdateWrapper = new UpdateWrapper<>();
taskUpdateWrapper.eq("id",taskId); taskUpdateWrapper.eq("id",taskId);
Task task = new Task(); Task task = new Task();
if (currentCoord != null){ if (currentCoord != null){
task.setCurrentCoord(currentCoord); task.setCurrentCoord(currentCoord);
} }
if (updateStartTime) {
task.setStartTime(new Date());
}
if (updateEndTime) {
task.setEndTime(new Date());
}
task.setStatus(status); task.setStatus(status);
boolean update = taskService.update(task, taskUpdateWrapper); boolean update = taskService.update(task, taskUpdateWrapper);
this.sendMessageToPage(); this.sendMessageToPage();
@ -88,7 +94,7 @@ public class CheckServiceImpl implements CheckService {
public void initCheck(String initNextCoord,int order, int taskId) throws IOException { public void initCheck(String initNextCoord,int order, int taskId) throws IOException {
// 指定初始化index为1-6 // 指定初始化index为1-6
String nextCoord = initNextCoord; String nextCoord = initNextCoord;
this.updateCoordAndStatus(taskId, nextCoord, 1);
this.updateCoordAndStatus(taskId, nextCoord, 1, true, false);
// 开始检测 // 开始检测
this.sendMessageToDevice(nextCoord, taskId); this.sendMessageToDevice(nextCoord, taskId);
// 如果中间终止 则退出返回 与messagehandler 处理逻辑相同 外部控制while的终止 // 如果中间终止 则退出返回 与messagehandler 处理逻辑相同 外部控制while的终止
@ -100,7 +106,7 @@ public class CheckServiceImpl implements CheckService {
while (true) { while (true) {
if (this.breakOff) { if (this.breakOff) {
breakFirst = true; breakFirst = true;
this.updateCoordAndStatus(taskId, nextCoord, 2);
this.updateCoordAndStatus(taskId, nextCoord, 2, false, false);
break; break;
} }
if (this.isMessageReceived()) { if (this.isMessageReceived()) {
@ -113,10 +119,10 @@ public class CheckServiceImpl implements CheckService {
} }
// 检测完毕后获取下一个坐标 // 检测完毕后获取下一个坐标
nextCoord = this.getNextCoord(nextCoord, order); nextCoord = this.getNextCoord(nextCoord, order);
this.updateCoordAndStatus(taskId, nextCoord, 1);
this.updateCoordAndStatus(taskId, nextCoord, 1, false, false);
this.sendMessageToDevice(nextCoord, taskId); this.sendMessageToDevice(nextCoord, taskId);
if ("finish".equals(nextCoord)) { 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) { while (true) {
if (this.breakOff) { if (this.breakOff) {
breakFirst = true; breakFirst = true;
this.updateCoordAndStatus(taskId, nextCoord, 2);
this.updateCoordAndStatus(taskId, nextCoord, 2, false, false);
break; break;
} }
if (this.isMessageReceived()) { if (this.isMessageReceived()) {
@ -148,10 +154,10 @@ public class CheckServiceImpl implements CheckService {
} }
// 检测完毕后获取下一个坐标 // 检测完毕后获取下一个坐标
nextCoord = this.getNextCoord(nextCoord, order); nextCoord = this.getNextCoord(nextCoord, order);
this.updateCoordAndStatus(taskId, nextCoord, 1);
this.updateCoordAndStatus(taskId, nextCoord, 1, false, false);
this.sendMessageToDevice(nextCoord, taskId); this.sendMessageToDevice(nextCoord, taskId);
if ("finish".equals(nextCoord)) { 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 @Override
public CheckResult autoCheck(int order, String startIndex, int taskId) throws IOException { public CheckResult autoCheck(int order, String startIndex, int taskId) throws IOException {
this.changeBreakOff(false); this.changeBreakOff(false);
this.updateCoordAndStatus(taskId, null, 1);
this.updateCoordAndStatus(taskId, null, 1, false, false);
currentTaskId = taskId; currentTaskId = taskId;
if (order == 0) { if (order == 0) {
if (startIndex == null || "".equals(startIndex)) { 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()) .taskName(task.getTaskName())
.checkOrder(task.getCheckOrder()) .checkOrder(task.getCheckOrder())
.id(task.getId()) .id(task.getId())
.currentCoord(task.getCurrentCoord())
.status(task.getStatus()) .status(task.getStatus())
.nuclearCoreName(nuclearCore.getName()) .nuclearCoreName(nuclearCore.getName())
.nuclearStationName(nuclearStation.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 boolean canUpload;
private Date endTime; 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); log.info("用户消息:" + userId + ",报文:" + message);
if (!StringUtils.isEmpty(message)) { if (!StringUtils.isEmpty(message)) {
try { try {
JSONObject jsonObject = JSON.parseObject(message);
String command = jsonObject.getString("command");
// JSONObject jsonObject = JSON.parseObject(message);
// String command = jsonObject.getString("command");
// 根据command类型分发给不同的handler和detection // 根据command类型分发给不同的handler和detection
// if (!command.isEmpty()) { // if (!command.isEmpty()) {
// messageHandler.dispatcher(command, jsonObject, session); // messageHandler.dispatcher(command, jsonObject, session);

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

Loading…
Cancel
Save