diff --git a/app.db b/app.db index 3fb029e..054f92b 100644 Binary files a/app.db and b/app.db differ diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ3_APPLAY_RESOURCE.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ3_APPLAY_RESOURCE.java index f3b8207..f061df0 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ3_APPLAY_RESOURCE.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ3_APPLAY_RESOURCE.java @@ -90,9 +90,7 @@ public class SEQ3_APPLAY_RESOURCE extends A8kStepAction { Assert.isTrue(applyIncubatorPos,"applyIncubatorPos"); logger.info("Tube:{} 申请资源成功", tube.getSampleId()); - boolean assProjInfoSuc = projectProcessContextMgrService.prepareProjInfoData(tube); - Assert.isTrue(assProjInfoSuc,"assProjInfoSuc"); - + projectProcessContextMgrService.prepareProjInfoData(tube); //创建项目处理上下文 projectProcessContextMgrService.prepareRecourseOK(); diff --git a/src/main/java/a8k/service/app/appdata/ProjCfgMgrService.java b/src/main/java/a8k/service/app/appdata/ProjCfgMgrService.java index 8416acd..84da3e2 100644 --- a/src/main/java/a8k/service/app/appdata/ProjCfgMgrService.java +++ b/src/main/java/a8k/service/app/appdata/ProjCfgMgrService.java @@ -1,6 +1,5 @@ package a8k.service.app.appdata; - import a8k.service.db.A8kProjIdCardDBService; import a8k.service.db.A8kProjInfoDBService; import a8k.service.db.A8kProjOptConfigDBService; @@ -10,6 +9,7 @@ import a8k.utils.ProjBriefInfo; import jakarta.annotation.Resource; import org.slf4j.Logger; import org.springframework.stereotype.Component; +import org.springframework.util.Assert; import java.util.ArrayList; import java.util.List; @@ -25,7 +25,6 @@ public class ProjCfgMgrService { @Resource A8kProjOptConfigDBService a8kProjOptConfigDBService; - public A8kProjCfg findByProjIndex(String lotid) { A8kProjCfg projCfg = new A8kProjCfg(); projCfg.idCardInfo = a8kProjIdCardDBService.getByLotId(lotid); @@ -34,6 +33,17 @@ public class ProjCfgMgrService { return projCfg; } + public A8kProjCfg findByProjIndexWithCheck(String lotid) { + A8kProjCfg projCfg = new A8kProjCfg(); + projCfg.idCardInfo = a8kProjIdCardDBService.getByLotId(lotid); + projCfg.projectInfo = a8kProjInfoDBService.findByProjIndex(projCfg.idCardInfo.projIndex); + projCfg.projOptConfigList = a8kProjOptConfigDBService.findByProjIndex(projCfg.idCardInfo.projIndex); + Assert.isTrue(projCfg.idCardInfo != null, "ID卡信息不存在"); + Assert.isTrue(projCfg.projectInfo != null, "项目信息不存在"); + Assert.isTrue(projCfg.projOptConfigList != null, "项目配置信息不存在"); + return projCfg; + } + public List getProjBriefInfo(List projIndex) { List ret = new ArrayList<>(); for (Integer index : projIndex) { @@ -47,9 +57,9 @@ public class ProjCfgMgrService { return ret; } - /** * 通过项目索引获取流程 + * * @param projIndex 项目索引 * @return 流程 */ diff --git a/src/main/java/a8k/service/app/appstate/ProjectProcessContextMgrService.java b/src/main/java/a8k/service/app/appstate/ProjectProcessContextMgrService.java index bf9ddbf..8c2574c 100644 --- a/src/main/java/a8k/service/app/appstate/ProjectProcessContextMgrService.java +++ b/src/main/java/a8k/service/app/appstate/ProjectProcessContextMgrService.java @@ -289,16 +289,12 @@ public class ProjectProcessContextMgrService { } - synchronized public Boolean prepareProjInfoData(Tube tube) { + synchronized public void prepareProjInfoData(Tube tube) { for (Integer projIndex : tube.getProjIndex()) { ProjProcessContext cxt = getProjProcessContext(tube.getSampleId(), projIndex); Assert.isTrue(cxt != null,"cxt != null"); - cxt.projCfg = projCfgMgrService.findByProjIndex(cxt.consumable.lotId); - if (cxt.projCfg == null) { - return false; - } + cxt.projCfg = projCfgMgrService.findByProjIndexWithCheck(cxt.consumable.lotId); } - return true; } synchronized public void prepareRecourseOK() {