diff --git a/app.db b/app.db index bbb5f83..13f59d5 100644 Binary files a/app.db and b/app.db differ diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/MainFlowCtrlScheduler.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/MainFlowCtrlScheduler.java index 23f260a..d773aa2 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/MainFlowCtrlScheduler.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/MainFlowCtrlScheduler.java @@ -120,7 +120,7 @@ public class MainFlowCtrlScheduler { A8kErrorContext callFn(A8kStepAction key) { beforeDoWhat(key.step); try { - logger.info("doaction:{}", key.step); + logger.info("执行动作:{}", key.step); key.doaction(); return new A8kErrorContext(key.step, null); } catch (AppException appe) { diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/DO_PROCESS_ERROR_TUBE.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/DO_PROCESS_ERROR_TUBE.java index b52ad16..5c545c2 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/DO_PROCESS_ERROR_TUBE.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/DO_PROCESS_ERROR_TUBE.java @@ -75,7 +75,7 @@ public class DO_PROCESS_ERROR_TUBE extends A8kStepAction { @Override public Boolean checkCondition() { Boolean cond1 = cms.isCanDoAction(); - Boolean cond2 = cms.isHasSometubesToBeProcessed(); + Boolean cond2 = cms.isHasSomeErrorTubeToBeProcessed(); return cond1 && cond2; } diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ1_ENTER_TUBEHOLDER_AND_SCAN.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ1_ENTER_TUBEHOLDER_AND_SCAN.java index be1dda2..b11fe20 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ1_ENTER_TUBEHOLDER_AND_SCAN.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ1_ENTER_TUBEHOLDER_AND_SCAN.java @@ -49,7 +49,7 @@ public class SEQ1_ENTER_TUBEHOLDER_AND_SCAN extends A8kStepAction { @Resource - GStateService gstate; + GStateService gstate; @Resource CondtionMgrService cmgr; @Resource @@ -57,15 +57,15 @@ public class SEQ1_ENTER_TUBEHOLDER_AND_SCAN extends A8kStepAction { @Resource AppEventBusService ebus; @Resource - A8kCanBusService canBus; + A8kCanBusService canBus; @Resource - TubeSettingMgrService tubeSettingMgrService; + TubeSettingMgrService tubeSettingMgrService; @Resource - TubeStateMgrService tubeStateMgrService; + TubeStateMgrService tubeStateMgrService; @Resource - AppProjInfoMgrService appProjInfoMgr; + AppProjInfoMgrService appProjInfoMgr; @Resource - AppDebugHelperService appDebugHelper; + AppDebugHelperService appDebugHelper; TubeHolderScanResult scanTubeHodler() throws AppException { @@ -209,18 +209,17 @@ public class SEQ1_ENTER_TUBEHOLDER_AND_SCAN extends A8kStepAction { if (!appDebugHelper.isDebug()) { scanResult = scanTubeHodler(); - if (scanResult == null) { - stc.ejectTubeHolder(); - return; - } } else { scanResult = appDebugHelper.takeTubeHolderScanResult(); - if (scanResult == null) { - return; - } - logger.info("VIRTUAL.DO 扫描到一个试管架:{}", scanResult); } + if (scanResult == null) { + if (!appDebugHelper.isDebug()) + stc.ejectTubeHolder(); + return; + } + logger.info("扫描到一个试管架:{}", scanResult); + logger.info("解析扫描结果"); TubeHolder tubeholder = parseScanResult(scanResult); diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ2_SWITCH_TO_THE_NEXT_TUBE.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ2_SWITCH_TO_THE_NEXT_TUBE.java index af7a968..32b19c3 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ2_SWITCH_TO_THE_NEXT_TUBE.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ2_SWITCH_TO_THE_NEXT_TUBE.java @@ -46,7 +46,7 @@ public class SEQ2_SWITCH_TO_THE_NEXT_TUBE extends A8kStepAction { @Resource TubeStateMgrService tubeStateMgrService; @Resource - CondtionMgrService cms; + CondtionMgrService cms; MainFlowCtrlState state; @@ -75,8 +75,9 @@ public class SEQ2_SWITCH_TO_THE_NEXT_TUBE extends A8kStepAction { if (appDebugHelperService.isDebug()) { logger.info("VIRTUAL.DO,移动到下一个试管:{}", tubeIndex); OS.forceSleep(1000); + } else { + sstc.moveTubeToPreProcessPos(tubeIndex); } - sstc.moveTubeToPreProcessPos(tubeIndex); } diff --git a/src/main/java/a8k/service/app/appstate/type/Tube.java b/src/main/java/a8k/service/app/appstate/type/Tube.java index ba3919e..aca97b4 100644 --- a/src/main/java/a8k/service/app/appstate/type/Tube.java +++ b/src/main/java/a8k/service/app/appstate/type/Tube.java @@ -18,11 +18,11 @@ public class Tube { public String sampleBarcode = ""; //用于请求用户信息的条码ID public String userid = ""; //用户输入的样本ID,不做逻辑,只做展示 - public List projInfo = new ArrayList<>(); //项目信息 + public List projInfo = new ArrayList<>(); //项目信息 // - public TubeState state = TubeState.EMPTY; //样本被处理的状态 - public List projProcessContexts; - public A8kEcode ecode = null; + public TubeState state = TubeState.EMPTY; //样本被处理的状态 + public List projProcessContexts = new ArrayList<>(); + public A8kEcode ecode = null; public List getProjIndex() { @@ -30,9 +30,9 @@ public class Tube { } Tube() { -// ProjBriefInfo info = new ProjBriefInfo(1,"hscrp","CA","#FF0000"); -// projInfo.add(info); -// projInfo.add(info); -// projInfo.add(info); + // ProjBriefInfo info = new ProjBriefInfo(1,"hscrp","CA","#FF0000"); + // projInfo.add(info); + // projInfo.add(info); + // projInfo.add(info); } } diff --git a/src/main/java/a8k/service/debug/AppDebugHelperService.java b/src/main/java/a8k/service/debug/AppDebugHelperService.java index 55267a3..d54f504 100644 --- a/src/main/java/a8k/service/debug/AppDebugHelperService.java +++ b/src/main/java/a8k/service/debug/AppDebugHelperService.java @@ -129,7 +129,7 @@ public class AppDebugHelperService { @ExtApiFn(name = "A8K试管架.放一个全血试管架", group = "A8K试管架.放一个全血试管架", order = 3) public void insertVirtualBloodTubeHolder() { TubeHolderScanResult scanResult = new TubeHolderScanResult(); - scanResult.tubeHolderType = A8kTubeHolderType.BloodTube.name(); + scanResult.tubeHolderType = A8kTubeHolderType.BloodTube.scanCode; for (int i = 0; i < scanResult.tube.length; i++) { scanResult.tube[i] = new TubesScanResult(true, false, "123456"); } diff --git a/src/main/java/a8k/type/TubeHolderScanResult.java b/src/main/java/a8k/type/TubeHolderScanResult.java index a1f6edd..eba7df4 100644 --- a/src/main/java/a8k/type/TubeHolderScanResult.java +++ b/src/main/java/a8k/type/TubeHolderScanResult.java @@ -1,7 +1,12 @@ package a8k.type; +import java.util.Arrays; + public class TubeHolderScanResult { public TubesScanResult[] tube = new TubesScanResult[10]; public String tubeHolderType = ""; + public String toString(){ + return String.format("%s %s", tubeHolderType, Arrays.toString(tube)); + } } diff --git a/src/main/java/a8k/type/TubesScanResult.java b/src/main/java/a8k/type/TubesScanResult.java index da44d70..5476daa 100644 --- a/src/main/java/a8k/type/TubesScanResult.java +++ b/src/main/java/a8k/type/TubesScanResult.java @@ -15,6 +15,10 @@ public class TubesScanResult { } public String toString() { - return String.format("isTubeExist:%s,isHighTube:%s,tubeCode:%s", isTubeExist, isHighTube, tubeCode); + if(isTubeExist){ + return String.format("%s(%s)", tubeCode, isHighTube ? "High" : "Low"); + }else{ + return "Null"; + } } }