白凤吉 2 months ago
parent
commit
00e9c80156
  1. 4
      src/main/java/com/iflytop/gd/app/core/CraftsContext.java
  2. 2
      src/main/java/com/iflytop/gd/app/core/aspect/DeviceStateChangeAspect.java
  3. 7
      src/main/java/com/iflytop/gd/app/model/entity/CraftsAfoot.java
  4. 3
      src/main/resources/sql/init.sql

4
src/main/java/com/iflytop/gd/app/core/CraftsContext.java

@ -63,7 +63,6 @@ public class CraftsContext implements Runnable {
public void stateEntered(State<CraftStates, CraftEvents> state) { public void stateEntered(State<CraftStates, CraftEvents> state) {
CraftsState craftsState = deviceStateService.getDeviceState().getTrayStateByHeatModuleCode(heatModuleCode).getCrafts(); CraftsState craftsState = deviceStateService.getDeviceState().getTrayStateByHeatModuleCode(heatModuleCode).getCrafts();
craftsState.setState(state.getId()); craftsState.setState(state.getId());
craftsState.setCurrentIndex(currentIndex);
Map<String, Object> dataMap = new HashMap<>(); Map<String, Object> dataMap = new HashMap<>();
dataMap.put("heatId", heatModuleCode); dataMap.put("heatId", heatModuleCode);
@ -84,7 +83,6 @@ public class CraftsContext implements Runnable {
try { try {
Message<CraftEvents> startMsg = MessageBuilder.withPayload(CraftEvents.START).build(); Message<CraftEvents> startMsg = MessageBuilder.withPayload(CraftEvents.START).build();
Mono.from(sm.sendEvent(Mono.just(startMsg))).block(); Mono.from(sm.sendEvent(Mono.just(startMsg))).block();
for (; currentIndex < craftsStepList.size(); currentIndex++) { for (; currentIndex < craftsStepList.size(); currentIndex++) {
if (sm.getState().getId() == CraftStates.STOPPED) break; if (sm.getState().getId() == CraftStates.STOPPED) break;
CraftsStep step = craftsStepList.get(currentIndex); CraftsStep step = craftsStepList.get(currentIndex);
@ -128,6 +126,8 @@ public class CraftsContext implements Runnable {
Map<String, Object> startData = new HashMap<>(); Map<String, Object> startData = new HashMap<>();
startData.put("heatId", heatModuleCode); startData.put("heatId", heatModuleCode);
startData.put("currentStep", step.getMethod()); startData.put("currentStep", step.getMethod());
CraftsState craftsState = deviceStateService.getDeviceState().getTrayStateByHeatModuleCode(heatModuleCode).getCrafts();
craftsState.setCurrentIndex(currentIndex);
webSocketService.push(WebSocketMessageType.CRAFTS_STEP, startData); webSocketService.push(WebSocketMessageType.CRAFTS_STEP, startData);
return craftsStepService.executeStep(heatModuleCode, step); return craftsStepService.executeStep(heatModuleCode, step);
} }

2
src/main/java/com/iflytop/gd/app/core/aspect/DeviceStateChangeAspect.java

@ -24,7 +24,7 @@ public class DeviceStateChangeAspect {
private final Lock lock = new ReentrantLock(); private final Lock lock = new ReentrantLock();
@Before("execution(* com.iflytop.gd.app.model.bo.status..set*(..))")
@Before("execution(* com.iflytop.gd.app.model.bo.status.device.*.set*(..))")
public void beforeSetMethod(JoinPoint joinPoint) { public void beforeSetMethod(JoinPoint joinPoint) {
lock.lock(); lock.lock();
} }

7
src/main/java/com/iflytop/gd/app/model/entity/CraftsAfoot.java

@ -18,12 +18,15 @@ public class CraftsAfoot extends BaseEntity {
@Schema(description = "所属加热模块") @Schema(description = "所属加热模块")
private HeatModuleCode heatModuleCode; private HeatModuleCode heatModuleCode;
@Schema(description = "当前工艺执行状态")
private CraftStates states;
@Schema(description = "当前工艺id")
private Long craftsId;
@Schema(description = "当前工艺执行步骤") @Schema(description = "当前工艺执行步骤")
private String craftsStep; private String craftsStep;
@Schema(description = "当前工艺执行状态")
private CraftStates states;
@Schema(description = "当前工艺步骤参数") @Schema(description = "当前工艺步骤参数")
private String params; private String params;

3
src/main/resources/sql/init.sql

@ -43,8 +43,9 @@ CREATE TABLE IF NOT EXISTS crafts_afoot
( (
id INTEGER PRIMARY KEY AUTOINCREMENT, id INTEGER PRIMARY KEY AUTOINCREMENT,
heat_module_code TEXT, heat_module_code TEXT,
states TEXT,
crafts_id INTEGER,
crafts_step TEXT, crafts_step TEXT,
states TEXT,
params TEXT, params TEXT,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP, create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP

Loading…
Cancel
Save