|
|
@ -192,10 +192,6 @@ public class SprayTaskExecutor { |
|
|
|
CommandFuture motorZOriginCommandFuture = deviceCommandService.sendCommandSprayTask(sprayTask.getCmdId(), sprayTask.getCmdCode(), motorZOriginCommand); |
|
|
|
commandWait(motorXOriginCommandFuture, motorYOriginCommandFuture, motorZOriginCommandFuture); |
|
|
|
|
|
|
|
sprayTask.clear(); |
|
|
|
deviceStatus.setSpraying(false);//是否正在进行喷涂 |
|
|
|
deviceStatus.setPaused(false);//是否暂停 |
|
|
|
|
|
|
|
OperationLog operationLog = operationLogService.getById(sprayTask.getOperationLogId()); |
|
|
|
operationLog.setStatus(1); |
|
|
|
operationLogService.updateById(operationLog); |
|
|
@ -208,11 +204,13 @@ public class SprayTaskExecutor { |
|
|
|
log.info("喷涂任务失败", e); |
|
|
|
webSocketService.pushCMDResponseMsg(FrontResponseGenerator.generateJson(sprayTask.getCmdId(), sprayTask.getCmdCode(), CommandStatus.FAIL, "喷涂任务执行失败")); |
|
|
|
webSocketService.pushCMDResponseMsg(FrontResponseGenerator.generateJson(sprayTask.getCmdId(), sprayTask.getCmdCode(), CommandStatus.SPRAY_TASK_FINISH, "喷涂任务结束")); |
|
|
|
} finally { |
|
|
|
webSocketService.pushDebugMsg(FrontResponseGenerator.generateJson(sprayTask.getCmdId(), sprayTask.getCmdCode(), CommandStatus.SEND, "喷涂任务线程退出")); |
|
|
|
if(sprayTask.isPaused()){//如果不是暂停状态的话则清空数据 |
|
|
|
sprayTask.clear(); |
|
|
|
deviceStatus.setSpraying(false);//是否正在进行喷涂 |
|
|
|
deviceStatus.setPaused(false);//是否暂停 |
|
|
|
} finally { |
|
|
|
webSocketService.pushDebugMsg(FrontResponseGenerator.generateJson(sprayTask.getCmdId(), sprayTask.getCmdCode(), CommandStatus.SEND, "喷涂任务线程退出")); |
|
|
|
} |
|
|
|
// 在线程结束后将 taskThread 设置为 null,保证状态一致和资源释放 |
|
|
|
synchronized (this) { |
|
|
|
taskThread = null; |
|
|
|