|
@ -99,20 +99,21 @@ public class CraftsStepService { |
|
|
this.pushMsg(heatId, status, null); |
|
|
this.pushMsg(heatId, status, null); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private void pushMsg(String heatId, Integer status, String method) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void pushMsg(String heatId, Integer status, Integer methodNum) { |
|
|
CraftsStepResult craftsStepResult = new CraftsStepResult(); |
|
|
CraftsStepResult craftsStepResult = new CraftsStepResult(); |
|
|
craftsStepResult.setHeatId(heatId); |
|
|
craftsStepResult.setHeatId(heatId); |
|
|
craftsStepResult.setStatus(status); |
|
|
craftsStepResult.setStatus(status); |
|
|
craftsStepResult.setMethod(method); |
|
|
|
|
|
|
|
|
craftsStepResult.setMethodIndex(methodNum); |
|
|
webSocketService.pushMsg(WebSocketMessageType.CRAFTS, craftsStepResult); |
|
|
webSocketService.pushMsg(WebSocketMessageType.CRAFTS, craftsStepResult); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
class CraftsTask implements Runnable { |
|
|
class CraftsTask implements Runnable { |
|
|
private static String currentMethod = null; |
|
|
|
|
|
|
|
|
private static int currentMethodNum = 0; |
|
|
private final String heatId; |
|
|
private final String heatId; |
|
|
private final Long craftId; |
|
|
|
|
|
|
|
|
private final long craftId; |
|
|
|
|
|
|
|
|
public CraftsTask(Long craftId, String heatId) { |
|
|
|
|
|
|
|
|
public CraftsTask(long craftId, String heatId) { |
|
|
this.heatId = heatId; |
|
|
this.heatId = heatId; |
|
|
this.craftId = craftId; |
|
|
this.craftId = craftId; |
|
|
} |
|
|
} |
|
@ -144,8 +145,8 @@ public class CraftsStepService { |
|
|
}; |
|
|
}; |
|
|
if (!result) { |
|
|
if (!result) { |
|
|
taskMap.remove(heatId); |
|
|
taskMap.remove(heatId); |
|
|
log.info("执行工艺错误,加热区: {}, 当前执行步骤: {}", heatId, currentMethod); |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.ERROR); |
|
|
|
|
|
|
|
|
log.info("执行工艺错误,加热区: {}, 当前执行步骤: {}", heatId, stepsJsonArray.get(currentMethodNum).toString()); |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.ERROR, currentMethodNum); |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -168,6 +169,7 @@ public class CraftsStepService { |
|
|
pushMsg(heatId, CraftsStepStatus.STOPPED); |
|
|
pushMsg(heatId, CraftsStepStatus.STOPPED); |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
|
|
|
currentMethodNum++; |
|
|
} |
|
|
} |
|
|
taskMap.remove(heatId); |
|
|
taskMap.remove(heatId); |
|
|
log.info("执行工艺完毕,加热区: {}", heatId); |
|
|
log.info("执行工艺完毕,加热区: {}", heatId); |
|
@ -179,8 +181,7 @@ public class CraftsStepService { |
|
|
* 抬起托盘 |
|
|
* 抬起托盘 |
|
|
*/ |
|
|
*/ |
|
|
private boolean upTray() { |
|
|
private boolean upTray() { |
|
|
currentMethod = CraftsStepMethod.UP_TRAY; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
try { |
|
|
try { |
|
|
Thread.sleep(2000); |
|
|
Thread.sleep(2000); |
|
|
} catch (InterruptedException e) { |
|
|
} catch (InterruptedException e) { |
|
@ -194,8 +195,7 @@ public class CraftsStepService { |
|
|
* 降下托盘 |
|
|
* 降下托盘 |
|
|
*/ |
|
|
*/ |
|
|
private boolean downTray() { |
|
|
private boolean downTray() { |
|
|
currentMethod = CraftsStepMethod.DOWN_TRAY; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
try { |
|
|
try { |
|
|
Thread.sleep(2000); |
|
|
Thread.sleep(2000); |
|
|
} catch (InterruptedException e) { |
|
|
} catch (InterruptedException e) { |
|
@ -209,8 +209,7 @@ public class CraftsStepService { |
|
|
* 添加溶液 |
|
|
* 添加溶液 |
|
|
*/ |
|
|
*/ |
|
|
private boolean addLiquid(JSONObject params) { |
|
|
private boolean addLiquid(JSONObject params) { |
|
|
currentMethod = CraftsStepMethod.ADD_LIQUID; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
|
|
|
|
|
|
JSONArray tubeSolJSONArray = params.getJSONArray("tubeSolList"); |
|
|
JSONArray tubeSolJSONArray = params.getJSONArray("tubeSolList"); |
|
|
List<TubeSol> tubeSolList = JSONUtil.toList(tubeSolJSONArray.toString(), TubeSol.class); |
|
|
List<TubeSol> tubeSolList = JSONUtil.toList(tubeSolJSONArray.toString(), TubeSol.class); |
|
@ -227,8 +226,7 @@ public class CraftsStepService { |
|
|
* 将指定加热区的托盘移至加液区 |
|
|
* 将指定加热区的托盘移至加液区 |
|
|
*/ |
|
|
*/ |
|
|
private boolean moveToSol() { |
|
|
private boolean moveToSol() { |
|
|
currentMethod = CraftsStepMethod.MOVE_TO_SOL; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
|
|
|
|
|
|
try { |
|
|
try { |
|
|
Thread.sleep(5000); |
|
|
Thread.sleep(5000); |
|
@ -243,8 +241,7 @@ public class CraftsStepService { |
|
|
* 移至加热 |
|
|
* 移至加热 |
|
|
*/ |
|
|
*/ |
|
|
private boolean moveToHeat() { |
|
|
private boolean moveToHeat() { |
|
|
currentMethod = CraftsStepMethod.MOVE_TO_HEAT; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
|
|
|
|
|
|
try { |
|
|
try { |
|
|
Thread.sleep(5000); |
|
|
Thread.sleep(5000); |
|
@ -259,8 +256,7 @@ public class CraftsStepService { |
|
|
* 摇匀 |
|
|
* 摇匀 |
|
|
*/ |
|
|
*/ |
|
|
private boolean shaking(JSONObject params) { |
|
|
private boolean shaking(JSONObject params) { |
|
|
currentMethod = CraftsStepMethod.SHAKING; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
|
|
|
|
|
|
Integer second = params.getInt("second"); |
|
|
Integer second = params.getInt("second"); |
|
|
try { |
|
|
try { |
|
@ -276,8 +272,7 @@ public class CraftsStepService { |
|
|
* 开始加热 |
|
|
* 开始加热 |
|
|
*/ |
|
|
*/ |
|
|
private boolean startHeating(JSONObject params) { |
|
|
private boolean startHeating(JSONObject params) { |
|
|
currentMethod = CraftsStepMethod.START_HEATING; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
|
|
|
|
|
|
Double temperature = params.getDouble("temperature"); |
|
|
Double temperature = params.getDouble("temperature"); |
|
|
try { |
|
|
try { |
|
@ -293,8 +288,7 @@ public class CraftsStepService { |
|
|
* 停止加热 |
|
|
* 停止加热 |
|
|
*/ |
|
|
*/ |
|
|
private boolean stopHeating() { |
|
|
private boolean stopHeating() { |
|
|
currentMethod = CraftsStepMethod.STOP_HEATING; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
|
|
|
|
|
|
try { |
|
|
try { |
|
|
Thread.sleep(1000); |
|
|
Thread.sleep(1000); |
|
@ -309,8 +303,7 @@ public class CraftsStepService { |
|
|
* 拍照 |
|
|
* 拍照 |
|
|
*/ |
|
|
*/ |
|
|
private boolean takePhoto() { |
|
|
private boolean takePhoto() { |
|
|
currentMethod = CraftsStepMethod.TAKE_PHOTO; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
|
|
|
|
|
|
try { |
|
|
try { |
|
|
Thread.sleep(1000); |
|
|
Thread.sleep(1000); |
|
@ -339,8 +332,7 @@ public class CraftsStepService { |
|
|
* 等待 |
|
|
* 等待 |
|
|
*/ |
|
|
*/ |
|
|
private boolean delay(JSONObject params) { |
|
|
private boolean delay(JSONObject params) { |
|
|
currentMethod = CraftsStepMethod.DELAY; |
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethod); |
|
|
|
|
|
|
|
|
pushMsg(heatId, CraftsStepStatus.IN_PROGRESS, currentMethodNum); |
|
|
|
|
|
|
|
|
Integer second = params.getInt("second"); |
|
|
Integer second = params.getInt("second"); |
|
|
return deviceStepService.delay(second); |
|
|
return deviceStepService.delay(second); |
|
|