From 21211cba9d4ede14ea6d89d69db953c68df850fc Mon Sep 17 00:00:00 2001 From: "jhforever.wang@estsh.com" Date: Sun, 26 May 2024 18:37:44 +0800 Subject: [PATCH] pcn --- .../busi/IMesProductionProcessContextStepService.java | 10 ++++++++-- .../station/MesProductionNoSortModuleService.java | 12 ++++++++++-- .../serviceimpl/step/MesAssemblyReadStepService.java | 2 +- .../step/MesFirstMouldNoReadStepService.java | 2 +- .../serviceimpl/step/MesMouldNoReadStepService.java | 2 +- .../step/MesProductResultReadStepService.java | 2 +- .../serviceimpl/step/MesProductSnReadStepService.java | 2 +- .../step/MesProductionProcessContextStepService.java | 18 ++++++++++++++++-- .../ext/mes/pcn/pojo/util/MesPcnExtConstWords.java | 5 +++++ 9 files changed, 44 insertions(+), 11 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionProcessContextStepService.java b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionProcessContextStepService.java index 6997172..f14df06 100644 --- a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionProcessContextStepService.java +++ b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionProcessContextStepService.java @@ -14,8 +14,14 @@ import java.util.Optional; public interface IMesProductionProcessContextStepService { - @ApiOperation(value = "存储上下文对象【工步根据业务实际情况执行,配置错误等情况无需执行】") - Boolean doCacheContext(StationRequestBean reqBean, Object o); + @ApiOperation(value = "存储上下文对象") + Boolean doCacheContext(StationRequestBean reqBean, String item, Object o); + + @ApiOperation(value = "获取上下文对象") + Object getCachedContext(StationRequestBean reqBean, String item); + + @ApiOperation(value = "存储生产过程上下文对象【工步根据业务实际情况执行,配置错误等情况无需执行】") + Boolean doCacheProductionProcessContext(StationRequestBean reqBean, MesProductionProcessContext productionProcessContext); @ApiOperation(value = "获取生产过程上下文对象") MesProductionProcessContext getProductionProcessContext(StationRequestBean reqBean); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/station/MesProductionNoSortModuleService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/station/MesProductionNoSortModuleService.java index 0b50a37..8c0ca2e 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/station/MesProductionNoSortModuleService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/station/MesProductionNoSortModuleService.java @@ -1,11 +1,14 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.station; +import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService; +import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseModuleService; import cn.estsh.i3plus.pojo.base.enumutil.MesPcnEnumUtil; import cn.estsh.i3plus.pojo.mes.bean.MesStateMachineStatus; import cn.estsh.i3plus.pojo.mes.model.StationRequestBean; import cn.estsh.i3plus.pojo.mes.model.StationResultBean; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @@ -19,15 +22,20 @@ import java.util.Map; @Service("mesProductionNoSortModuleService") public class MesProductionNoSortModuleService extends BaseModuleService { - private static final String PRODUCTION_NOSORT_MODULE = "PRODUCTION_NOSORT_MODULE"; + @Autowired + private IMesProductionProcessContextStepService productionProcessContextStepService; @Override public void init(StationRequestBean reqBean) { StationResultBean resultBean = new StationResultBean(); resultBean.setBusiType(MesPcnEnumUtil.STATION_BUSI_TYPE.MODULE_CONTENT.getValue()); resultBean.setDataType(MesPcnEnumUtil.STATION_DATA_TYPE.CUSTOM.getValue()); - resultBean.setCustomPageName(PRODUCTION_NOSORT_MODULE); + resultBean.setCustomPageName(MesPcnExtConstWords.CUSTOM_PAGE_NAME_DEFAULT); resultBean.setSpecialDisplayData(getStepColIndent(reqBean)); + + //TODO 获取 头部上下文 信息 +// productionProcessContextStepService.getProductionProcessContext(); + this.sendMessage(reqBean, resultBean); } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesAssemblyReadStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesAssemblyReadStepService.java index 32cacc0..581351d 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesAssemblyReadStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesAssemblyReadStepService.java @@ -96,7 +96,7 @@ public class MesAssemblyReadStepService extends BaseStepService { //验证装配件条码的有效性 if (stepResult.isCompleted()) matchAssemblySnValid(reqBean, resultBean, stepResult, productionProcessContext, cellEquipContext, collectContextList); - productionProcessContextStepService.doCacheContext(reqBean, productionProcessContext); + productionProcessContextStepService.doCacheProductionProcessContext(reqBean, productionProcessContext); if (!stepResult.isCompleted()) threadSleep(stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesFirstMouldNoReadStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesFirstMouldNoReadStepService.java index b7c96ce..2308933 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesFirstMouldNoReadStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesFirstMouldNoReadStepService.java @@ -97,7 +97,7 @@ public class MesFirstMouldNoReadStepService extends BaseStepService { //验证头道模具号的有效性 if (stepResult.isCompleted()) checkFirstMouldNoValid(reqBean, resultBean, stepResult, productionProcessContext, cellEquipContext, collectContextList); - productionProcessContextStepService.doCacheContext(reqBean, productionProcessContext); + productionProcessContextStepService.doCacheProductionProcessContext(reqBean, productionProcessContext); if (!stepResult.isCompleted()) threadSleep(stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesMouldNoReadStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesMouldNoReadStepService.java index 82d08d4..415110e 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesMouldNoReadStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesMouldNoReadStepService.java @@ -97,7 +97,7 @@ public class MesMouldNoReadStepService extends BaseStepService { //验证模具号的有效性 if (stepResult.isCompleted()) checkMouldNoValid(reqBean, resultBean, stepResult, productionProcessContext, cellEquipContext, collectContextList); - productionProcessContextStepService.doCacheContext(reqBean, productionProcessContext); + productionProcessContextStepService.doCacheProductionProcessContext(reqBean, productionProcessContext); if (!stepResult.isCompleted()) threadSleep(stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductResultReadStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductResultReadStepService.java index 73fc541..9ed2df8 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductResultReadStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductResultReadStepService.java @@ -93,7 +93,7 @@ public class MesProductResultReadStepService extends BaseStepService { if (stepResult.isCompleted()) matchProductResult(reqBean, resultBean, stepResult, productionProcessContext, cellEquipContext, collectContextList); - productionProcessContextStepService.doCacheContext(reqBean, productionProcessContext); + productionProcessContextStepService.doCacheProductionProcessContext(reqBean, productionProcessContext); if (!stepResult.isCompleted()) threadSleep(stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductSnReadStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductSnReadStepService.java index a1aa56a..12fd253 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductSnReadStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductSnReadStepService.java @@ -96,7 +96,7 @@ public class MesProductSnReadStepService extends BaseStepService { //验证主条码的有效性 if (stepResult.isCompleted()) matchProductSnValid(reqBean, resultBean, stepResult, productionProcessContext, cellEquipContext, collectContextList); - productionProcessContextStepService.doCacheContext(reqBean, productionProcessContext); + productionProcessContextStepService.doCacheProductionProcessContext(reqBean, productionProcessContext); if (!stepResult.isCompleted()) threadSleep(stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductionProcessContextStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductionProcessContextStepService.java index b8ae68a..1f00fd6 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductionProcessContextStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductionProcessContextStepService.java @@ -43,14 +43,28 @@ public class MesProductionProcessContextStepService extends BaseStepService impl @Autowired private IFsmRouteDataService fsmRouteDataService; + private String getContextKey(StationRequestBean reqBean) { return getFsmBusikey(reqBean, MesPcnExtConstWords.PRODUCTION_PROCESS_CONTEXT); } + + @Override + public Boolean doCacheContext(StationRequestBean reqBean, String item, Object o) { + return saveFsmBusiData(reqBean.getOrganizeCode(), getContextKey(reqBean), item, JSONObject.toJSONString(o)); + } + @Override - public Boolean doCacheContext(StationRequestBean reqBean, Object o) { return saveFsmBusiData(reqBean.getOrganizeCode(), getFsmBusikey(reqBean, o.getClass().getSimpleName()), JSONObject.toJSONString(o)); } + public String getCachedContext(StationRequestBean reqBean, String item) { + return getFsmBusiData(reqBean.getOrganizeCode(), getContextKey(reqBean), item); + } + + @Override + public Boolean doCacheProductionProcessContext(StationRequestBean reqBean, MesProductionProcessContext productionProcessContext) { + return saveFsmBusiData(reqBean.getOrganizeCode(), getContextKey(reqBean), MesProductionProcessContext.class.getSimpleName(), JSONObject.toJSONString(productionProcessContext)); + } @Override public MesProductionProcessContext getProductionProcessContext(StationRequestBean reqBean) { //获取缓存的生产过程上下文对象 - MesProductionProcessContext productionProcessContext = (MesProductionProcessContext) getFsmBusiData(reqBean.getOrganizeCode(), getFsmBusikey(reqBean, MesProductionProcessContext.class.getSimpleName()), MesProductionProcessContext.class); + MesProductionProcessContext productionProcessContext = (MesProductionProcessContext) getFsmBusiData(reqBean.getOrganizeCode(), getContextKey(reqBean), MesProductionProcessContext.class.getSimpleName(), MesProductionProcessContext.class); if (null == productionProcessContext) productionProcessContext = new MesProductionProcessContext(reqBean.getOrganizeCode()); diff --git a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java index b6b2b9e..063b731 100644 --- a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java +++ b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java @@ -82,4 +82,9 @@ public class MesPcnExtConstWords { // & public static final String AND = "&"; + //生产过程控制上下文 + public static final String PRODUCTION_PROCESS_CONTEXT = "PRODUCTION_PROCESS_CONTEXT"; + //定制页面名称(默认) + public static final String CUSTOM_PAGE_NAME_DEFAULT = "CUSTOM_PAGE_NAME_DEFAULT"; + }