diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxCenterPlcPassStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxCenterPlcPassStepService.java index 74098dc..07f8574 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxCenterPlcPassStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxCenterPlcPassStepService.java @@ -50,7 +50,8 @@ public class JxCenterPlcPassStepService extends BaseStepService { fsmCommonService.checkWcpcMapForDoScan(reqBean); String plcCode = fsmCommonService.getAndCheckWcpcMapIsContainsKey(reqBean, reqBean.getWcpcMap(), MesPcnExtConstWords.PLC_CODE_UC); - String plcPassValue = fsmCommonService.getAndCheckWcpcMapIsContainsKey(reqBean, reqBean.getWcpcMap(), MesPcnExtConstWords.PLC_PASS_VALUE); + String plcPassValueParamCode = reqBean.getDataMap().containsKey(MesPcnExtConstWords.PLC_PASS_VALUE) ? (String) reqBean.getDataMap().get(MesPcnExtConstWords.PLC_PASS_VALUE) : MesPcnExtConstWords.PLC_PASS_VALUE; + String plcPassValue = fsmCommonService.getAndCheckWcpcMapIsContainsKey(reqBean, reqBean.getWcpcMap(), plcPassValueParamCode); if (StringUtils.isEmpty(plcCode) || StringUtils.isEmpty(plcPassValue)) foundExThrowNoShowMsg(); MesPlc plcDb = getPlcDb(reqBean, resultBean, plcCode); @@ -59,6 +60,8 @@ public class JxCenterPlcPassStepService extends BaseStepService { if (!plcPassValue.equals("noplc") && !plcExtService.doWriteOpcParamValue(plcDb, plcPassValue)) execExpSendMsgAndThrowEx(reqBean, resultBean, String.format("生产线[%s]工位[%s]%s放行失败:写入PLC[%s]值[%s]失败!", reqBean.getWorkCenterCode(), reqBean.getWorkCellCode(), !forceCmd ? MesPcnExtConstWords.EMPTY : "强制", plcCode, plcPassValue)); + if (reqBean.getDataMap().containsKey(MesPcnExtConstWords.PLC_PASS_VALUE)) reqBean.getDataMap().remove(MesPcnExtConstWords.PLC_PASS_VALUE); + log.info("工厂{}生产线{}工位{}: --- STEP EXECUTE --- JxCenterPlcPassStepService --- SUCCESS ---", reqBean.getOrganizeCode(), reqBean.getWorkCenterCode(), reqBean.getWorkCellCode()); if (!forceCmd) return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean, diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionAspectCheckStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionAspectCheckStepService.java index 9889133..ed1cb9a 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionAspectCheckStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionAspectCheckStepService.java @@ -19,6 +19,7 @@ import org.springframework.util.StringUtils; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.StringJoiner; /** * @Description : 嘉兴条码终检外观检查工步 @@ -67,6 +68,8 @@ public class JxSnFinalInspectionAspectCheckStepService extends BaseStepService { BUSI_FLAG item = BUSI_FLAG.getByValue(busiFlag); + if (!item.getIsComplete()) reqBean.getDataMap().put(MesPcnExtConstWords.PLC_PASS_VALUE, new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(MesPcnExtConstWords.PLC_PASS_VALUE).add(busiFlag).toString()); + return execDynamicsCompleteAndSendMsgReturn(reqBean, resultBean, stepResult, item.getIsComplete(), String.format("%s[%s]!", suffix, item.getDescription())); } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionCheckMcOrPsStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionCheckMcOrPsStepService.java index 2d0e1c0..27d8fad 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionCheckMcOrPsStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionCheckMcOrPsStepService.java @@ -50,6 +50,7 @@ public class JxSnFinalInspectionCheckMcOrPsStepService extends BaseStepService { reqBean.setSerialNumber(null); reqBean.setProductSn(null); reqBean.setTray(null); + reqBean.getDataMap().remove(MesPcnExtConstWords.PLC_PASS_VALUE); return super.init(reqBean); } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionDataReviewStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionDataReviewStepService.java index 4d5817a..84ae68c 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionDataReviewStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/step/jx/JxSnFinalInspectionDataReviewStepService.java @@ -18,6 +18,7 @@ import org.springframework.util.StringUtils; import java.util.ArrayList; import java.util.List; +import java.util.StringJoiner; /** * @Description : 嘉兴条码终检数据复核工步 @@ -55,11 +56,13 @@ public class JxSnFinalInspectionDataReviewStepService extends BaseStepService { String suffixSn = StringUtils.isEmpty(reqBean.getProductSn()) ? getManageCode(reqBean.getTray(), 1) : reqBean.getProductSn(); String suffix = String.format("当前产品:%s[%s]", StringUtils.isEmpty(reqBean.getProductSn()) ? "管理编码" : "产品条码", suffixSn); + StepResult stepResult = StepResult.getSuccessComplete(); + + if (checkBusiFlagIsValid(reqBean, stepResult, busiFlag, suffix)) return execDynamicsCompleteAndSendMsgReturn(reqBean, resultBean, stepResult, stepResult.isCompleted(), stepResult.getMsg()); + if (!StringUtils.isEmpty(busiFlag) && busiFlag.equals(BUSI_FLAG.ASPECT_CHECK.getValue())) return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean, String.format("%s已跳过数据复核进入外观检查!", suffix)); - StepResult stepResult = StepResult.getSuccessComplete(); - if (!StringUtils.isEmpty(busiFlag) && busiFlag.equals(BUSI_FLAG.REPAIR.getValue())) return execNonCompleteAndSendMsgReturn(reqBean, resultBean, stepResult.nextTriggerEvent(MesPcnExtConstWords.STATE_REPAIR), String.format("%s已跳过数据复核!即将进行返修状态标记!", suffix)); @@ -74,6 +77,15 @@ public class JxSnFinalInspectionDataReviewStepService extends BaseStepService { return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean, stepResult, String.format("%s数据复核验证成功!", suffix)); } + private Boolean checkBusiFlagIsValid(StationRequestBean reqBean, StepResult stepResult, String busiFlag, String suffix) { + if (StringUtils.isEmpty(busiFlag)) return false; + if (busiFlag.equals(BUSI_FLAG.ASPECT_CHECK.getValue())) stepResult.msg(String.format("%s已跳过数据复核进入外观检查!", suffix)); + else if (busiFlag.equals(BUSI_FLAG.REPAIR.getValue())) stepResult.isCompleted(false).nextTriggerEvent(MesPcnExtConstWords.STATE_REPAIR).msg(String.format("%s已跳过数据复核!即将进行返修状态标记!", suffix)); + else return false; + if (!stepResult.isCompleted()) reqBean.getDataMap().put(MesPcnExtConstWords.PLC_PASS_VALUE, new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(MesPcnExtConstWords.PLC_PASS_VALUE).add(busiFlag).toString()); + return true; + } + private MesProductData getProductData(StationRequestBean reqBean, String suffixSn) { return productDataRepository.getByProperty( new String[]{MesPcnExtConstWords.ORGANIZE_CODE, MesPcnExtConstWords.IS_DELETED, MesPcnExtConstWords.IS_VALID, MesPcnExtConstWords.SERIAL_NUMBER}, 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 fc918c8..1482b9c 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 @@ -253,6 +253,8 @@ public class MesPcnExtConstWords { public static final String JOB = "JOB"; //PART public static final String PART_EXT = "PART_EXT"; + //_ + public static final String E_UNDERLINE = "_"; //英文逗号 public static final String COMMA = ","; //空