jx pcn 终检 变更

dev
王杰 2 years ago
parent 27ee240899
commit 4a88d96127

@ -240,7 +240,7 @@ public class SxNumberRulePackAttributeService implements ISxNumberRulePackAttrib
/**
* 线
*
*
*/
private GenSerialNoModel jxMethodDynamicCenterAndOrder(Map<String, Object> map, GenSerialNoModel serialNoModel){
String workOrderNo = (String) map.get(MesPcnExtConstWords.WORK_ORDER_NO);
@ -251,7 +251,7 @@ public class SxNumberRulePackAttributeService implements ISxNumberRulePackAttrib
/**
*
*
*
*/
private GenSerialNoModel jxMethodDynamicOrder(Map<String, Object> map, GenSerialNoModel serialNoModel){
String workOrderNo = (String) map.get(MesPcnExtConstWords.WORK_ORDER_NO);

@ -1,164 +0,0 @@
//package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.busi.jx;
//
//import cn.estsh.i3plus.ext.mes.pcn.api.busi.jx.IJxProdBusiStrategyService;
//import cn.estsh.i3plus.ext.mes.pcn.pojo.model.jx.JxProdBusiStrategyParamsBuilder;
//import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtEnumUtil;
//import cn.estsh.i3plus.pojo.mes.model.StepResult;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.stereotype.Service;
//import org.springframework.util.StringUtils;
//
///**
// * @Author: wangjie
// * @CreateDate: 2021/01/18 11:41 上午
// * @Description: 试制工单
// **/
//@Slf4j
//@Service
//public class JxProdBusiStrategyAttemptService implements IJxProdBusiStrategyService {
//
// @Override
// public StepResult checkLineOn(JxProdBusiStrategyParamsBuilder params) {
//
// ((IJxProdBusiStrategyService) params.getStrategyService()).checkLineOn(params);
//
// StepResult stepResult = StepResult.getNonComplete();
//
// if (null == params.getManageCodeDb() && null == params.getProduceSnExtDb()) return stepResult.msg(String.format("%s[%s]未匹配到有效的管理编码或产品条码信息,验证失败!", params.getScanName(), params.getScanInfo()));
//
// if (null != params.getProduceSnExtDb()) return checkLineOn4Ps(params, stepResult);
//
// return checkLineOn4Mc(params, stepResult);
//
// }
//
// private StepResult checkLineOn4Ps(JxProdBusiStrategyParamsBuilder params, StepResult stepResult) {
//
// if (!params.getProduceSnExtDb().getLastWorkOrderNo().equals(params.getOrderModel().getOrderNo()))
// return stepResult.msg(String.format("%s[%s]对应的产品条码信息关联的工单号[%s]与当前生产的工单号[%s]不一致,验证失败!", params.getScanName(), params.getScanInfo(), params.getProduceSnExtDb().getLastWorkOrderNo(), params.getOrderModel().getOrderNo()));
//
// if (MesPcnExtEnumUtil.PRODUCE_SN_STATUS.PROCESS.getValue() <= params.getProduceSnExtDb().getSnStatus())
// return stepResult.msg(String.format("%s[%s]对应的产品条码信息当前条码状态[%s],验证失败!", params.getScanName(), params.getScanInfo(), MesPcnExtEnumUtil.PRODUCE_SN_STATUS.valueOfDescription(params.getProduceSnExtDb().getSnStatus())));
//
// if (MesPcnExtEnumUtil.SN_OPERATE_TYPE.REPAIR.getValue() == params.getProduceSnExtDb().getOperateType())
// return stepResult.msg(String.format("%s[%s]对应的产品条码信息当前业务类型[返修],验证失败!", params.getScanName(), params.getScanInfo()));
//
// return stepResult.isCompleted(true).msg(String.format("%s[%s]已匹配产品条码信息,验证成功!", params.getScanName(), params.getScanInfo()));
//
// }
//
// private StepResult checkLineOn4Mc(JxProdBusiStrategyParamsBuilder params, StepResult stepResult) {
//
// if (null != params.getProduceSnMcRecordDb()) {
// if (!params.getProduceSnMcRecordDb().getWorkOrderNo().equals(params.getOrderModel().getOrderNo()))
// return stepResult.msg(String.format("%s[%s]已绑定其他生产工单[%s],验证失败!", params.getScanName(), params.getScanInfo(), params.getProduceSnMcRecordDb().getWorkOrderNo()));
//
// if (MesPcnExtEnumUtil.MC_RECORD_LINE_ON_STATUS.TRUE.getValue() == params.getProduceSnMcRecordDb().getLineOnStatus())
// return stepResult.msg(String.format("%s[%s]对应的管理编码与工单条码关系信息当前状态[已上线],验证失败!", params.getScanName(), params.getScanInfo()));
// else
// return stepResult.isCompleted(true).msg(String.format("%s[%s]此前上线未完成,验证成功!", params.getScanName(), params.getScanInfo()));
// } else {
// Integer count = ((IJxProdBusiStrategyService) params.getStrategyService()).queryOrderBindedQty(params);
// if (count >= params.getOrderModel().getQty())
// return stepResult.msg(String.format("生产工单[%s]计划数量[%s]上线数量已达标,请切换生产工单!", params.getOrderModel().getOrderNo(), params.getOrderModel().getQty()));
//
// return stepResult.isCompleted(true).msg(String.format("%s[%s]验证成功!", params.getScanName(), params.getScanInfo()));
// }
//
// }
//
// @Override
// public StepResult execLineOnBindMc(JxProdBusiStrategyParamsBuilder params) {
//
// ((IJxProdBusiStrategyService) params.getStrategyService()).insertProduceSnMcRecord(params);
//
// return StepResult.getSuccessComplete().data(params.getProduceSnMcRecordDb());
//
// }
//
// @Override
// public StepResult checkFinalInspection(JxProdBusiStrategyParamsBuilder params) {
//
// ((IJxProdBusiStrategyService) params.getStrategyService()).checkFinalInspection(params);
//
// StepResult stepResult = StepResult.getNonComplete();
//
// if (null == params.getProduceSnMcRecordDb() && null == params.getProduceSnExtDb()) return stepResult.msg(String.format("%s[%s]未匹配到有效的管理编码与工单条码关系信息或产品条码信息,验证失败!", params.getScanName(), params.getScanInfo()));
//
// if (null != params.getProduceSnExtDb()) return checkFinalInspection4Ps(params, stepResult);
//
// return checkFinalInspection4Mc(params, stepResult);
//
// }
//
// private StepResult checkFinalInspection4Ps(JxProdBusiStrategyParamsBuilder params, StepResult stepResult) {
//
// if (!params.getProduceSnExtDb().getLastWorkOrderNo().equals(params.getOrderModel().getOrderNo()))
// return stepResult.msg(String.format("%s[%s]对应的产品条码信息关联的工单号[%s]与当前生产的工单号[%s]不一致,验证失败!", params.getScanName(), params.getScanInfo(), params.getProduceSnExtDb().getLastWorkOrderNo(), params.getOrderModel().getOrderNo()));
//
// if (MesPcnExtEnumUtil.PRODUCE_SN_STATUS.PROCESS.getValue() != params.getProduceSnExtDb().getSnStatus())
// return stepResult.msg(String.format("%s[%s]对应的产品条码信息当前条码状态[%s],验证失败!", params.getScanName(), params.getScanInfo(), MesPcnExtEnumUtil.PRODUCE_SN_STATUS.valueOfDescription(params.getProduceSnExtDb().getSnStatus())));
//
// if (!StringUtils.isEmpty(params.getProduceSnExtDb().getProcessCode()) && params.getProduceSnExtDb().getProcessCode().equals(params.getProcessCode()))
// return stepResult.msg(String.format("%s[%s]对应的产品条码信息已完成当前工序,验证失败!", params.getScanName(), params.getScanInfo()));
//
// if (MesPcnExtEnumUtil.SN_OPERATE_TYPE.REPAIR.getValue() == params.getProduceSnExtDb().getOperateType())
// return stepResult.msg(String.format("%s[%s]对应的产品条码信息当前业务类型[返修],验证失败!", params.getScanName(), params.getScanInfo()));
//
// if (MesPcnExtEnumUtil.PRODUCE_SN_QC_STATUS.DEFECTED.getValue() == params.getProduceSnExtDb().getQcStatus())
// return stepResult.msg(String.format("%s[%s]对应的产品条码信息当前质量状态[不合格],验证失败!", params.getScanName(), params.getScanInfo()));
//
// return stepResult.isCompleted(true).msg(String.format("%s[%s]已匹配产品条码信息,验证成功!", params.getScanName(), params.getScanInfo()));
//
// }
//
// private StepResult checkFinalInspection4Mc(JxProdBusiStrategyParamsBuilder params, StepResult stepResult) {
//
// if (!params.getProduceSnMcRecordDb().getWorkOrderNo().equals(params.getOrderModel().getOrderNo()))
// return stepResult.msg(String.format("%s[%s]对应的管理编码与工单条码关系信息关联的工单号[%s]与当前生产的工单号[%s]不一致,验证失败!", params.getScanName(), params.getScanInfo(), params.getProduceSnMcRecordDb().getWorkOrderNo(), params.getOrderModel().getOrderNo()));
//
// if (MesPcnExtEnumUtil.SN_OPERATE_TYPE.REPAIR.getValue() == params.getProduceSnMcRecordDb().getOperateType())
// return stepResult.msg(String.format("%s[%s]对应的管理编码与工单条码关系信息当前业务类型[返修],验证失败!", params.getScanName(), params.getScanInfo()));
//
// if (MesPcnExtEnumUtil.MC_RECORD_QC_STATUS.FALSE.getValue() == params.getProduceSnMcRecordDb().getQcStatus())
// return stepResult.msg(String.format("%s[%s]对应的管理编码与工单条码关系信息当前质量状态[不合格],验证失败!", params.getScanName(), params.getScanInfo()));
//
// if (MesPcnExtEnumUtil.MC_RECORD_LINE_ON_STATUS.FALSE.getValue() == params.getProduceSnMcRecordDb().getLineOnStatus())
// return stepResult.msg(String.format("%s[%s]对应的管理编码与工单条码关系信息当前状态[上线未完成],验证失败!", params.getScanName(), params.getScanInfo()));
//
// return stepResult.isCompleted(true).msg(String.format("%s[%s]验证成功!", params.getScanName(), params.getScanInfo()));
//
// }
//
// @Override
// public StepResult checkThirdPartyPs(JxProdBusiStrategyParamsBuilder params) {
//
// StepResult stepResult = StepResult.getNonComplete();
//
// ((IJxProdBusiStrategyService) params.getStrategyService()).queryProduceSnInfo(params.productSn(params.getScanInfo()));
//
// if (null == params.getProduceSnExtDb())
// return stepResult.msg(String.format("产品条码[%s]未关联试制工单[%s],操作失败!", params.getScanInfo(), params.getOrderModel().getOrderNo()));
//
// if (!params.getProduceSnExtDb().getLastWorkOrderNo().equals(params.getOrderModel().getOrderNo()))
// return stepResult.msg(String.format("产品条码[%s]信息关联的工单号[%s]与当前生产的工单号[%s]不一致,验证失败!", params.getScanInfo(), params.getProduceSnExtDb().getLastWorkOrderNo(), params.getOrderModel().getOrderNo()));
//
// if (!StringUtils.isEmpty(params.getProduceSnExtDb().getTrayNo()))
// return stepResult.msg(String.format("产品条码[%s]已经过终检工序,验证失败!", params.getScanInfo()));
//
// if (MesPcnExtEnumUtil.PRODUCE_SN_STATUS.CREATE.getValue() != params.getProduceSnExtDb().getSnStatus())
// return stepResult.msg(String.format("产品条码[%s]信息当前状态[%s],验证失败!", params.getScanInfo(), MesPcnExtEnumUtil.PRODUCE_SN_STATUS.valueOfDescription(params.getProduceSnExtDb().getSnStatus())));
//
// if (MesPcnExtEnumUtil.SN_OPERATE_TYPE.REPAIR.getValue() == params.getProduceSnExtDb().getOperateType())
// return stepResult.msg(String.format("产品条码[%s]信息当前业务类型[返修],验证失败!", params.getScanInfo()));
//
// if (MesPcnExtEnumUtil.PRODUCE_SN_QC_STATUS.DEFECTED.getValue() == params.getProduceSnExtDb().getQcStatus())
// return stepResult.msg(String.format("产品条码[%s]信息当前质量状态[不合格],验证失败!", params.getScanInfo()));
//
// return stepResult.isCompleted(true);
// }
//
// @Override
// public StepResult checkLineOff(JxProdBusiStrategyParamsBuilder params) { return StepResult.getSuccessComplete(); }
//
//}

@ -351,8 +351,8 @@ public class JxProdBusiStrategyCommonService implements IJxProdBusiStrategyServi
MesProduceSnMcRecord produceSnMcRecordDb = produceSnMcRecordRepository.getById(Long.parseLong(manageCodeArr[1]));
produceSnMcRecordDb.setSnStatus(MesPcnExtEnumUtil.MC_RECORD_SN_STATUS.LINE_OFF.getValue());
if (StringUtils.isEmpty(produceSnMcRecordDb.getSerialNumber())) produceSnMcRecordDb.setSerialNumber(params.getProduceSnExtDb().getSerialNumber());
if (StringUtils.isEmpty(produceSnMcRecordDb.getProductSn())) produceSnMcRecordDb.setProductSn(params.getScanInfo());
if (MesPcnExtEnumUtil.MC_RECORD_QC_STATUS.TRUE.getValue() != produceSnMcRecordDb.getQcStatus()) produceSnMcRecordDb.setQcStatus(MesPcnExtEnumUtil.MC_RECORD_QC_STATUS.TRUE.getValue());
ConvertBean.serviceModelUpdate(produceSnMcRecordDb, params.getUserInfo());
produceSnMcRecordDb.setSystemSyncStatus(MesPcnExtEnumUtil.IF_SYNC_STATUS.NO_SYNC.getValue());
@ -365,7 +365,7 @@ public class JxProdBusiStrategyCommonService implements IJxProdBusiStrategyServi
MesProduceSnExt produceSnExtDb = null == params.getProduceSnExtDb() ? queryProduceSnInfo(params).getProduceSnExtDb() : params.getProduceSnExtDb();
if (StringUtils.isEmpty(produceSnExtDb.getProductSn())) produceSnExtDb.setProductSn(params.getScanInfo());
if (StringUtils.isEmpty(produceSnExtDb.getTrayNo())) produceSnExtDb.setTrayNo(params.getManageCode());
if (MesPcnExtEnumUtil.PRODUCE_SN_QC_STATUS.QUALIFIED.getValue() != produceSnExtDb.getQcStatus()) produceSnExtDb.setQcStatus(MesPcnExtEnumUtil.PRODUCE_SN_QC_STATUS.QUALIFIED.getValue());
produceSnExtService.doPackSnExtProcess((StationRequestBean) params.getObj(), produceSnExtDb);
ConvertBean.serviceModelUpdate(produceSnExtDb, params.getUserInfo());

@ -2,19 +2,23 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.busi.step.jx;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.busi.station.jx.JxSnFinalInspectionModuleService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.mes.pcn.actor.shipping.dispatch.IFsmCommonService;
import cn.estsh.i3plus.mes.pcn.serviceimpl.base.BaseStepService;
import cn.estsh.i3plus.pojo.base.enumutil.MesPcnEnumUtil;
import cn.estsh.i3plus.pojo.mes.model.ButtonBean;
import cn.estsh.i3plus.pojo.mes.model.StationRequestBean;
import cn.estsh.i3plus.pojo.mes.model.StationResultBean;
import cn.estsh.i3plus.pojo.mes.model.StepResult;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* @Description :
@ -30,6 +34,9 @@ public class JxSnFinalInspectionAspectCheckStepService extends BaseStepService {
@Autowired
private JxSnFinalInspectionModuleService snFinalInspectionModuleService;
@Autowired
private IFsmCommonService fsmCommonService;
@Override
public StepResult init(StationRequestBean reqBean) {
clearStepContent(reqBean);
@ -42,27 +49,45 @@ public class JxSnFinalInspectionAspectCheckStepService extends BaseStepService {
log.info("工厂{}生产线{}工位{}: --- STEP EXECUTE --- JxSnFinalInspectionAspectCheckStepService --- START --- ", reqBean.getOrganizeCode(), reqBean.getWorkCenterCode(), reqBean.getWorkCellCode());
StationResultBean resultBean = new StationResultBean();
StepResult stepResult = StepResult.getSuccessComplete();
String busiFlag = (String) snFinalInspectionModuleService.doHandleBusiFlag(reqBean, 1, null);
if (!StringUtils.isEmpty(busiFlag)) snFinalInspectionModuleService.doHandleBusiFlag(reqBean, 3, null);
String suffix = StringUtils.isEmpty(reqBean.getProductSn()) ? "管理编码" : "产品条码";
String suffixSn = StringUtils.isEmpty(reqBean.getProductSn()) ? getManageCode(reqBean.getTray(), 1) : reqBean.getProductSn();
String suffix = String.format("当前产品:%s[%s]外观检查", StringUtils.isEmpty(reqBean.getProductSn()) ? "管理编码" : "产品条码", suffixSn);
if (StringUtils.isEmpty(busiFlag)) execSendAspectCheckBusiFlag(reqBean, resultBean, suffix, suffixSn);
if (!StringUtils.isEmpty(reqBean.getScanInfo())) busiFlag = getBusiFlagByScanInfo(reqBean, resultBean, suffix, suffixSn, stepResult);
StepResult stepResult = StepResult.getSuccessComplete();
if (StringUtils.isEmpty(busiFlag)) execSendAspectCheckBusiFlag(reqBean, resultBean, suffix, suffixSn, stepResult);
reqBean.setScanInfo(null);
log.info("工厂{}生产线{}工位{}: --- STEP EXECUTE --- JxSnFinalInspectionAspectCheckStepService --- SUCCESS --- ", reqBean.getOrganizeCode(), reqBean.getWorkCenterCode(), reqBean.getWorkCellCode());
if (busiFlag.equals(BUSI_FLAG.QUALIFIED.getValue()))
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean, stepResult, String.format("%s[%s]外观检查[合格]!", suffix, suffixSn));
BUSI_FLAG item = BUSI_FLAG.getByValue(busiFlag);
return execNonCompleteAndSendMsgReturn(reqBean, resultBean, stepResult, String.format("%s[%s]外观检查[不合格]!即将进行返修状态标记!", suffix, suffixSn));
return execDynamicsCompleteAndSendMsgReturn(reqBean, resultBean, stepResult, item.getIsComplete(), String.format("%s[%s]!", suffix, item.getDescription()));
}
private void execSendAspectCheckBusiFlag(StationRequestBean reqBean, StationResultBean resultBean, String suffix, String suffixSn) {
private String getBusiFlagByScanInfo(StationRequestBean reqBean, StationResultBean resultBean, String suffix, String suffixSn, StepResult stepResult) {
fsmCommonService.checkWcpcMapForDoScan(reqBean);
String busiFlagCodeCfg = reqBean.getWcpcMap().get(BUSI_FLAG.BUSI_FLAG_CODE.getValue());
Map<String, String> busiFlagCodeMap = StringUtils.isEmpty(busiFlagCodeCfg) ? null : JSONObject.parseObject(busiFlagCodeCfg, Map.class);
String busiFlag = CollectionUtils.isEmpty(busiFlagCodeMap) ? null : busiFlagCodeMap.get(reqBean.getScanInfo());
if (CollectionUtils.isEmpty(busiFlagCodeMap) || !BUSI_FLAG.BUSI_FLAG_CODE.check(busiFlag))
execSendAspectCheckBusiFlag(reqBean, resultBean, suffix, suffixSn, stepResult.msg(String.format("%s操作失败!生产线[%s]工位[%s]未配置有效的检查业务码工位参数[%s]!", suffix, reqBean.getWorkCenterCode(), reqBean.getWorkCellCode(), BUSI_FLAG.BUSI_FLAG_CODE.getValue())));
if (StringUtils.isEmpty(busiFlag))
execSendAspectCheckBusiFlag(reqBean, resultBean, suffix, suffixSn, stepResult.msg(String.format("%s操作失败!扫描的检测业务码[%s]验证失败!", suffix, reqBean.getScanInfo())));
return busiFlag;
}
private void execSendAspectCheckBusiFlag(StationRequestBean reqBean, StationResultBean resultBean, String suffix, String suffixSn, StepResult stepResult) {
if (StringUtils.isEmpty(stepResult.getMsg())) this.sendMessage(reqBean, resultBean, String.format("请对%s!", suffix), MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT);
else this.sendMessage(reqBean, resultBean, stepResult.getMsg(), MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.EXP_TEXT);
resultBean.setBusiType(MesPcnEnumUtil.STATION_BUSI_TYPE.STEP_CONTENT.getValue());
resultBean.setDataType(MesPcnEnumUtil.STATION_DATA_TYPE.BUTTON.getValue());
List<ButtonBean> buttonBeanList = new ArrayList<>();
@ -70,8 +95,9 @@ public class JxSnFinalInspectionAspectCheckStepService extends BaseStepService {
buttonBeanList.add(ButtonBean.builder().buttonCode(BUSI_FLAG.REPAIR.value).buttonName(BUSI_FLAG.REPAIR.description).methodContent(suffixSn).buttonDesc(BUSI_FLAG.REPAIR.description).build());
resultBean.setResultList(buttonBeanList);
this.sendMessage(reqBean, resultBean);
this.sendMessage(reqBean, resultBean, String.format("请对当前产品:%s[%s]进行外观检查!", suffix, suffixSn), MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT);
execSendGuideAndThrowEx(reqBean, resultBean, "请点击业务按钮!");
execSendGuideAndThrowEx(reqBean, resultBean, "请扫描检测业务码或点击业务按钮!");
}
private String getManageCode(String manageCode, Integer length) {
@ -82,15 +108,19 @@ public class JxSnFinalInspectionAspectCheckStepService extends BaseStepService {
}
enum BUSI_FLAG {
QUALIFIED("QUALIFIED", "检查合格"),
REPAIR("REPAIR", "返修");
BUSI_FLAG_CODE("BUSI_FLAG_CODE", "检测业务码", true),
QUALIFIED("QUALIFIED", "检查合格", true),
REPAIR("REPAIR", "返修", false);
private String value;
private String description;
private Boolean isComplete;
BUSI_FLAG(String value, String description) {
BUSI_FLAG(String value, String description, Boolean isComplete) {
this.value = value;
this.description = description;
this.isComplete = isComplete;
}
public String getValue() {
@ -100,6 +130,25 @@ public class JxSnFinalInspectionAspectCheckStepService extends BaseStepService {
public String getDescription() {
return description;
}
public Boolean getIsComplete() {
return isComplete;
}
public static BUSI_FLAG getByValue(String value) {
for (BUSI_FLAG item : values()) {
if (item.getValue().equals(value)) {
return item;
}
}
return null;
}
public Boolean check(String busiFlag) {
if (StringUtils.isEmpty(busiFlag)) return true;
if (!busiFlag.equals(QUALIFIED.getValue()) && !busiFlag.equals(REPAIR.getValue())) return false;
return true;
}
}
}

@ -57,7 +57,8 @@ public class JxSnFinalInspectionBindPsStepService extends BaseStepService {
if (StringUtils.isEmpty(reqBean.getProductSn())) checkScanInfoIsValid(reqBean, resultBean, stepResult, orderModel);
else reqBean.setScanInfo(null);
String suffix = StringUtils.isEmpty(reqBean.getProductSn()) ? String.format("管理编码[%s]", getManageCode(reqBean.getTray(), 1)) : String.format("产品条码[%s]", reqBean.getProductSn());
String suffixSn = StringUtils.isEmpty(reqBean.getProductSn()) ? getManageCode(reqBean.getTray(), 1) : reqBean.getProductSn();
String suffix = String.format("当前产品:%s[%s]", StringUtils.isEmpty(reqBean.getProductSn()) ? "管理编码" : "产品条码", suffixSn);
execFinalInspectionBindPs(reqBean, stepResult, orderModel);

@ -52,21 +52,23 @@ public class JxSnFinalInspectionDataReviewStepService extends BaseStepService {
String busiFlag = (String) snFinalInspectionModuleService.doHandleBusiFlag(reqBean, 1, null);
if (!StringUtils.isEmpty(busiFlag)) snFinalInspectionModuleService.doHandleBusiFlag(reqBean, 3, null);
String suffix = StringUtils.isEmpty(reqBean.getProductSn()) ? "管理编码" : "产品条码";
String suffixSn = StringUtils.isEmpty(reqBean.getProductSn()) ? getManageCode(reqBean.getTray(), 1) : reqBean.getProductSn();
String suffix = String.format("当前产品:%s[%s]", StringUtils.isEmpty(reqBean.getProductSn()) ? "管理编码" : "产品条码", suffixSn);
if (!StringUtils.isEmpty(busiFlag) && busiFlag.equals(BUSI_FLAG.ASPECT_CHECK.getValue()))
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean, String.format("%s[%s]已跳过数据复核进入外观检查!", suffix, suffixSn));
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[%s]已跳过数据复核!即将进行返修状态标记!", suffix, suffixSn));
return execNonCompleteAndSendMsgReturn(reqBean, resultBean, stepResult.nextTriggerEvent(MesPcnExtConstWords.STATE_REPAIR), String.format("%s已跳过数据复核!即将进行返修状态标记!", suffix));
MesProductData productData = getProductData(reqBean, suffixSn);
if (null == productData) execSendDataReviewBusiFlag(reqBean, resultBean, suffix, suffixSn);
reqBean.setScanInfo(null);
log.info("工厂{}生产线{}工位{}: --- STEP EXECUTE --- JxSnFinalInspectionDataReviewStepService --- SUCCESS --- ", reqBean.getOrganizeCode(), reqBean.getWorkCenterCode(), reqBean.getWorkCellCode());
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean, stepResult, String.format("%s数据复核验证成功!", suffix));
@ -86,7 +88,7 @@ public class JxSnFinalInspectionDataReviewStepService extends BaseStepService {
buttonBeanList.add(ButtonBean.builder().buttonCode(BUSI_FLAG.REPAIR.value).buttonName(BUSI_FLAG.REPAIR.description).methodContent(suffixSn).buttonDesc(BUSI_FLAG.REPAIR.description).build());
resultBean.setResultList(buttonBeanList);
this.sendMessage(reqBean, resultBean);
this.sendMessage(reqBean, resultBean, String.format("%s[%s]数据复核验证失败!", suffix, suffixSn), MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.EXP_TEXT);
this.sendMessage(reqBean, resultBean, String.format("%s数据复核验证失败!", suffix), MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.EXP_TEXT);
execSendGuideAndThrowEx(reqBean, resultBean, "请点击业务按钮!");
}

@ -31,7 +31,8 @@ public class JxSnFinalInspectionMarkRepairStepService extends BaseStepService {
StationResultBean resultBean = new StationResultBean();
String suffix = StringUtils.isEmpty(reqBean.getProductSn()) ? String.format("管理编码[%s]", getManageCode(reqBean.getTray(), 1)) : String.format("产品条码[%s]", reqBean.getProductSn());
String suffixSn = StringUtils.isEmpty(reqBean.getProductSn()) ? getManageCode(reqBean.getTray(), 1) : reqBean.getProductSn();
String suffix = String.format("当前产品:%s[%s]", StringUtils.isEmpty(reqBean.getProductSn()) ? "管理编码" : "产品条码", suffixSn);
execFinalInspectionMarkRepair(reqBean);

Loading…
Cancel
Save