工步 提示信息 优化 去掉上下文字眼

tags/yfai-pcn-ext-v1.0
王杰 10 months ago
parent f83321a660
commit bac8b77d5a

@ -74,14 +74,14 @@ public class MesAssemblyGeneratePartNoStepService extends BaseStepService {
//存储生产过程上下文对象
productionProcessContextStepService.saveProductionProcessContext(reqBean, productionProcessContext);
if (productionDispatchContextStepService.checkProdRuleDataIsExistContext(reqBean)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前上下文中存在非排序加工规则数据,不支持执行当前工步,请重置工序!");
if (productionDispatchContextStepService.checkProductionPartIsExistContext(reqBean)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前上下文中存在产出零件数据,不支持执行当前工步,请重置工序!");
if (productionDispatchContextStepService.checkProductionPsInIsExistContext(reqBean)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前上下文中存在进料主条码数据,不支持执行当前工步,请重置工序!");
if (productionDispatchContextStepService.checkProdRuleDataIsExistContext(reqBean)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前存在非排序加工规则数据,不支持执行当前工步,请重置工序!");
if (productionDispatchContextStepService.checkProductionPartIsExistContext(reqBean)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前存在产出零件数据,不支持执行当前工步,请重置工序!");
if (productionDispatchContextStepService.checkProductionPsInIsExistContext(reqBean)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前存在进料主条码数据,不支持执行当前工步,请重置工序!");
//获取上下文生产扫/读信息:装配件条码
List<MesEquipVariableCollectContext> equipVariableCollectContextList = productionDispatchContextStepService.getScanAssemblySnContext(reqBean);
if (CollectionUtils.isEmpty(equipVariableCollectContextList))
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中不存在装配件条码!");
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前不存在装配件条码!");
//删除上下文扫/读信息:装配件条码
productionDispatchContextStepService.deleteScanAssemblySnContext(reqBean);
@ -95,7 +95,7 @@ public class MesAssemblyGeneratePartNoStepService extends BaseStepService {
//非未知腔数,验证装配件条码个数是否匹配 腔数*每腔个数
if (StringUtils.isEmpty(cavityUnknownCfg) && equipVariableCollectContextList.size() != cellEquipContext.getCavity() * cellEquipContext.getBindQty())
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(),
stepResult, String.format("当前上下文中装配件条码个数[%s]不满足腔数[%s]每腔个数[%s]配置!", equipVariableCollectContextList.size(), cellEquipContext.getCavity(), cellEquipContext.getBindQty()));
stepResult, String.format("当前装配件条码个数[%s]不满足腔数[%s]每腔个数[%s]配置!", equipVariableCollectContextList.size(), cellEquipContext.getCavity(), cellEquipContext.getBindQty()));
//获取设备下所有的装配件规则清单, 根据非排序加工规则ID分组
Map<Long, List<MesProductionAssemblyNosortContext>> assemblyNosortCfgMap = doHandleAssemblyNosortCfg(reqBean, resultBean, stepResult, cellEquipContext);
@ -112,7 +112,7 @@ public class MesAssemblyGeneratePartNoStepService extends BaseStepService {
//判断是否存在未消费的装配件条码
Optional<MesEquipVariableCollectContext> optional = equipVariableCollectContextList.stream().filter(o -> (null != o && o.getIsConsume().compareTo(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()) == 0)).findFirst();
if (CollectionUtils.isEmpty(prodRuleContextList) || (null != optional && optional.isPresent()))
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(assemblySn), stepResult, String.format("上下文中的装配件条码%s匹配失败!%s", assemblySn, StringUtils.isEmpty(stepResult.getMsg()) ? MesPcnExtConstWords.EMPTY : stepResult.getMsg()));
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(assemblySn), stepResult, String.format("装配件条码%s匹配失败!%s", assemblySn, StringUtils.isEmpty(stepResult.getMsg()) ? MesPcnExtConstWords.EMPTY : stepResult.getMsg()));
//保存上下文产品加工规则信息集合
productionDispatchContextStepService.saveProdRuleDataContext(reqBean, prodRuleContextList);
@ -120,7 +120,7 @@ public class MesAssemblyGeneratePartNoStepService extends BaseStepService {
//显示装配件信息
assemblyShowNosortStepService.showProductionAssembly(reqBean, resultBean, productionProcessContext.getWorkCenter(), cellEquipContext, prodRuleContextList);
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(assemblySn), stepResult.nextTriggerEvent(null), String.format("上下文中的装配件条码%s匹配成功!", assemblySn));
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(assemblySn), stepResult.nextTriggerEvent(null), String.format("装配件条码%s匹配成功!", assemblySn));
}

@ -73,7 +73,7 @@ public class MesAssemblyMatchNosortStepService extends BaseStepService {
//获取上下文产品加工规则数据信息集合
List<MesProdRuleContext> prodRuleContextList = productionDispatchContextStepService.getProdRuleDataContext(reqBean);
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前上下文中不存在非排序加工规则数据,请重置工序!");
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在非排序加工规则数据,请重置工序!");
//从上下文中取出生产线对象
MesCellEquipContext cellEquipContext = productionProcessContext.getCurCellEquip();
@ -99,11 +99,11 @@ public class MesAssemblyMatchNosortStepService extends BaseStepService {
if (!IsNeedScanAssembly || !hasUnBindAssembly)
return execDynamicsCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult,
(CollectionUtils.isEmpty(productionPsInContextList) || productionPsInContextList.size() >= needQty) ? true : stepResult.isCompleted(false).nextTriggerEvent(MesPcnExtConstWords.NEXT_TRIGGER_EVENT_PRODUCT_SN).isCompleted(),
MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, !IsNeedScanAssembly ? "当前上下文中的加工规则未配置装配件扫描项,当前无需匹配装配件条码!" : "当前上下文中的加工规则对应的装配件扫描项均匹配完毕!");
MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, !IsNeedScanAssembly ? "当前加工规则未配置装配件扫描项,当前无需匹配装配件条码!" : "当前加工规则对应的装配件扫描项均匹配完毕!");
//获取上下文生产扫/读信息:装配件条码
List<MesEquipVariableCollectContext> equipVariableCollectContextList = productionDispatchContextStepService.getScanAssemblySnContext(reqBean);
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中不存在装配件条码!");
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前不存在装配件条码!");
//删除上下文扫/读信息:装配件条码
productionDispatchContextStepService.deleteScanAssemblySnContext(reqBean);
@ -132,11 +132,11 @@ public class MesAssemblyMatchNosortStepService extends BaseStepService {
if (!hasUnBindAssembly)
return execDynamicsCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(assemblySn), stepResult,
(CollectionUtils.isEmpty(productionPsInContextList) || productionPsInContextList.size() >= needQty) ? true : stepResult.isCompleted(false).nextTriggerEvent(MesPcnExtConstWords.NEXT_TRIGGER_EVENT_PRODUCT_SN).isCompleted(),
MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, String.format("%s当前上下文中的加工规则对应的装配件扫描项均匹配完毕!", isSkip ? stepResult.getMsg() : String.format("上下文中的装配件条码%s匹配成功!", assemblySn)));
MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, String.format("%s当前加工规则对应的装配件扫描项均匹配完毕!", isSkip ? stepResult.getMsg() : String.format("装配件条码%s匹配成功!", assemblySn)));
//单次匹配成功
if (result) return execDynamicsCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(assemblySn),
stepResult.nextTriggerEvent(MesPcnExtConstWords.NEXT_TRIGGER_EVENT_ASSEMBLY), false, MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, isSkip ? stepResult.getMsg() : String.format("上下文中的装配件条码%s匹配成功!", assemblySn));
stepResult.nextTriggerEvent(MesPcnExtConstWords.NEXT_TRIGGER_EVENT_ASSEMBLY), false, MesPcnEnumUtil.STATION_BUSI_TYPE.MESSAGE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, isSkip ? stepResult.getMsg() : String.format("装配件条码%s匹配成功!", assemblySn));
//匹配失败验证是否重置装配件扫描项
MesWorkCell workCell = productionProcessContext.getWorkCell();
@ -146,7 +146,7 @@ public class MesAssemblyMatchNosortStepService extends BaseStepService {
}
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(assemblySn),
stepResult.nextTriggerEvent(MesPcnExtConstWords.NEXT_TRIGGER_EVENT_ASSEMBLY), String.format("上下文中的装配件条码%s匹配失败!%s", assemblySn, StringUtils.isEmpty(stepResult.getMsg()) ? MesPcnExtConstWords.EMPTY : stepResult.getMsg()));
stepResult.nextTriggerEvent(MesPcnExtConstWords.NEXT_TRIGGER_EVENT_ASSEMBLY), String.format("装配件条码%s匹配失败!%s", assemblySn, StringUtils.isEmpty(stepResult.getMsg()) ? MesPcnExtConstWords.EMPTY : stepResult.getMsg()));
}

@ -93,7 +93,7 @@ public class MesAssemblyReadStepService extends BaseStepService {
//验证当前是否需要读装配件条码: 是否存在装配件清单
if (!CollectionUtils.isEmpty(prodRuleContextList) && !checkIsNeedReedAssembly(prodRuleContextList))
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, String.format("当前上下文中的加工规则未配置装配件扫描项,无需读设备[%s]装配件条码!", cellEquipContext.getEquipmentName()));
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, String.format("当前加工规则未配置装配件扫描项,无需读设备[%s]装配件条码!", cellEquipContext.getEquipmentName()));
//获取生产过程上下文对象有异常信息 抛出异常
if (!productionProcessContextStepService.getEquipmentVariableCfgList(productionProcessContext).getSuccess()) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), productionProcessContext.getMessage());

@ -70,12 +70,12 @@ public class MesAssemblySaveNosortStepService extends BaseStepService {
//获取上下文产品加工规则数据信息集合
List<MesProdRuleContext> prodRuleContextList = productionDispatchContextStepService.getProdRuleDataContext(reqBean);
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前上下文中不存在非排序加工规则数据,请重置工序!");
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在非排序加工规则数据,请重置工序!");
//获取上下文产出条码数据信息集合
List<MesProductionPsOutContext> productionPsOutContextList = productionDispatchContextStepService.getProductionPsOutContext(reqBean);
if (CollectionUtils.isEmpty(productionPsOutContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "上下文中不存在产出零件条码信息,请重置工序解决!");
if (CollectionUtils.isEmpty(productionPsOutContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在产出零件条码信息,请重置工序解决!");
//从上下文中取出工位当前要使用的设备
MesCellEquipContext cellEquipContext = productionProcessContext.getCurCellEquip();

@ -75,14 +75,14 @@ public class MesAssemblyScanStepService extends BaseStepService {
//验证当前是否需要扫描装配件条码: 是否存在装配件清单 【当前验证只能对内部触发生效】
if (!CollectionUtils.isEmpty(prodRuleContextList) && !checkIsNeedScanAssembly(prodRuleContextList))
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中的加工规则未配置装配件扫描项,当前无需扫描装配件条码!");
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前加工规则未配置装配件扫描项,当前无需扫描装配件条码!");
//处理装配件的装配爆炸图和音频文件
doHandleAssemblyFile(reqBean, productionProcessContext.getWorkCenter(), prodRuleContextList);
//验证当前是否需要读装配件条码: 验证是否存在待绑定数据 【当前验证只能对内部触发生效】
if (!CollectionUtils.isEmpty(prodRuleContextList) && !hasUnBindAssembly(prodRuleContextList))
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中的加工规则对应的装配件清单已扫描完毕,当前无需扫描装配件条码!");
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前加工规则对应的装配件清单已扫描完毕,当前无需扫描装配件条码!");
if (StringUtils.isEmpty(scanInfo)) execSendGuideAndThrowEx(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.PROCESS.getValue()), "请扫描装配件条码!");
@ -113,7 +113,7 @@ public class MesAssemblyScanStepService extends BaseStepService {
//判断当前已存在数量是否超过需要数量
if (scanedQty > needQty) execSendGuideAndThrowEx(reqBean, resultBean.writeDbLog(), String.format(
"当前上下文中的可复用条码数量[%s]加上装配件条码数量[%s]已经超过设备腔数[%s]每腔个数[%s]配置,请重新扫描装配件条码!", count, cachedEquipVariableCollectContextList.size(), cellEquipContext.getCavity(), cellEquipContext.getBindQty()));
"当前可复用条码数量[%s]加上装配件条码数量[%s]已经超过设备腔数[%s]每腔个数[%s]配置,请重新扫描装配件条码!", count, cachedEquipVariableCollectContextList.size(), cellEquipContext.getCavity(), cellEquipContext.getBindQty()));
if (!CollectionUtils.isEmpty(cachedEquipVariableCollectContextList)) {
if (cachedEquipVariableCollectContextList.size() == needQty) equipVariableCollectContextList = cachedEquipVariableCollectContextList;

@ -109,7 +109,7 @@ public class MesAssemblyShowSortStepService extends BaseStepService {
//上下文中不存在进料主条码数据信息
if (CollectionUtils.isEmpty(productionPsInContextList) || CollectionUtils.isEmpty(productionPartContextList))
execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), String.format("生产线[%s]工位[%s]的上下文中已不存在加工单或条码数据信息,请重置工序!", reqBean.getWorkCenterCode(), reqBean.getWorkCellCode()));
execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), String.format("生产线[%s]工位[%s]当前已不存在加工单或条码数据信息,请重置工序!", reqBean.getWorkCenterCode(), reqBean.getWorkCellCode()));
//拿到当前最大的foreignKey
Optional<MesProductionPsInContext> maxForeignKeyOptional = productionPsInContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getForeignKey()))).max(Comparator.comparing(MesProductionPsInContext::getForeignKey));

@ -2,7 +2,10 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.step;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionDispatchContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.*;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesCellEquipContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesEquipVariableCollectContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionProcessContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesScanMonitorContext;
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseStepService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.pojo.base.enumutil.MesPcnEnumUtil;
@ -10,16 +13,11 @@ import cn.estsh.i3plus.pojo.mes.bean.MesProdMouldRecord;
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 cn.estsh.i3plus.pojo.mes.repository.IMesMouldMappingCfgRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesProdMouldRecordRepository;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* @Description :
* @Author : zxw
@ -29,77 +27,50 @@ import java.util.List;
public class MesMouldRecordGenerateStepService extends BaseStepService {
@Autowired
private MesProdMouldRecordRepository mesProdMouldRecordRepository;
private MesProdMouldRecordRepository prodMouldRecordRepository;
@Autowired
private IMesProductionProcessContextStepService productionProcessContextStepService;
@Autowired
private IMesMouldMappingCfgRepository mesMouldMappingCfgRepository;
@Autowired
private IMesProductionDispatchContextStepService mesProductionDispatchContextStepService;
private IMesProductionDispatchContextStepService productionDispatchContextStepService;
@Override
public StepResult execute(StationRequestBean reqBean) {
StationResultBean resultBean = new StationResultBean();
StepResult stepResult = StepResult.getSuccessComplete();
//获取上下文信息
MesProductionProcessContext productionProcessContext = productionProcessContextStepService.getEquipmentVariableList(reqBean, MesExtEnumUtil.EQUIP_VARIABLE_TYPE.PRODUCTION.getValue());
//List<MesProductionPartContext> productionPartContextList = mesProductionDispatchContextStepService.getProductionPartContext(reqBean);
// 获取条码信息
List<MesProductionPsOutContext> mesProduceSnContexts = mesProductionDispatchContextStepService.getProductionPsOutContext(reqBean);
// 获取头道模具号
MesEquipVariableCollectContext mesFirstMouldNoCollectContext = mesProductionDispatchContextStepService.getFirstMouldNoContext(reqBean);
// 获取模具号
MesEquipVariableCollectContext mesMouldNoCollectContext = mesProductionDispatchContextStepService.getMouldNoContext(reqBean);
/**
*
*/
saveMouldRecord(reqBean, resultBean, productionProcessContext, mesProduceSnContexts, mesFirstMouldNoCollectContext, mesMouldNoCollectContext);
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.PROCESS.getValue()), stepResult, "生成开模记录成功!");
}
MesProductionProcessContext productionProcessContext = productionProcessContextStepService.getProductionProcessContext(reqBean);
private void saveMouldRecord(StationRequestBean reqBean, StationResultBean resultBean, MesProductionProcessContext productionProcessContext, List<MesProductionPsOutContext> mesProduceSns, MesEquipVariableCollectContext mesFirstMouldNoCollectContext, MesEquipVariableCollectContext mesMouldNoCollectContext) {
List<MesProdMouldRecord> mesProdMouldRecords = new ArrayList<>();
//配置错误 抛出异常
if (!productionProcessContext.getSuccess()) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), productionProcessContext.getMessage());
MesScanMonitorContext mesScanMonitorContext = productionProcessContextStepService.doHandleScanMonitorContext(reqBean, true);
//获取工位设备信息
MesCellEquipContext cellEquipContext = productionProcessContext.getCurCellEquip();
Long moduleId = mesScanMonitorContext.getMouldRecordId();
// 获取工位设备信息
MesCellEquipContext mesCellEquipContext = productionProcessContext.getCurCellEquip();
//获取头道模具号
MesEquipVariableCollectContext firstMouldNoContext = productionDispatchContextStepService.getFirstMouldNoContext(reqBean);
String equipmentCode = mesCellEquipContext.getEquipmentCode();
//获取模具号
MesEquipVariableCollectContext mouldNoContext = productionDispatchContextStepService.getMouldNoContext(reqBean);
String mouldNo = "";
//获取上下文工位扫描监控信息
MesScanMonitorContext scanMonitorContext = productionProcessContextStepService.doHandleScanMonitorContext(reqBean, true);
if (mesFirstMouldNoCollectContext != null) {
mouldNo = mesFirstMouldNoCollectContext.getEquipVariableValue();
} else if (mesFirstMouldNoCollectContext == null && mesMouldNoCollectContext != null) {
mouldNo = mesMouldNoCollectContext.getEquipVariableValue();
}
MesProdMouldRecord prodMouldRecord = getMesProdMouldRecord(mesCellEquipContext, mouldNo, moduleId);
MesProdMouldRecord prodMouldRecord = new MesProdMouldRecord();
prodMouldRecord.setId(scanMonitorContext.getMouldRecordId());
prodMouldRecord.setEquipId(cellEquipContext.getEquipId());
prodMouldRecord.setEquipmentCode(cellEquipContext.getEquipmentCode());
if (null != firstMouldNoContext) prodMouldRecord.setMouldNo(firstMouldNoContext.getEquipVariableValue());
else if (null != mouldNoContext) prodMouldRecord.setMouldNo(mouldNoContext.getEquipVariableValue());
prodMouldRecord.setOrganizeCode(reqBean.getOrganizeCode());
ConvertBean.serviceModelInitialize(prodMouldRecord, reqBean.getUserInfo());
mesProdMouldRecords.add(prodMouldRecord);
prodMouldRecordRepository.save(prodMouldRecord);
mesProdMouldRecordRepository.saveAll(mesProdMouldRecords);
}
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.PROCESS.getValue()), String.format("开模记录生成成功! ID:%s", scanMonitorContext.getMouldRecordId()));
private MesProdMouldRecord getMesProdMouldRecord(MesCellEquipContext mesCellEquipContext, String mouldNo, Long mouldId) {
MesProdMouldRecord mesProdMouldRecord = new MesProdMouldRecord();
mesProdMouldRecord.setEquipId(mesCellEquipContext.getEquipId());
mesProdMouldRecord.setId(mouldId);
/* mesProdMouldRecord.setMeterName(mesMouldMappingCfg == null ? null : mesMouldMappingCfg.getMeterName());
mesProdMouldRecord.setAssetNum(mesMouldMappingCfg == null ? null : mesMouldMappingCfg.getAssetNum());*/
mesProdMouldRecord.setMouldNo(mouldNo);
mesProdMouldRecord.setEquipmentCode(mesCellEquipContext.getEquipmentCode());
return mesProdMouldRecord;
}
}

@ -61,10 +61,10 @@ public class MesProductSnCheckNosortStepService extends BaseStepService {
//没有待验证的主条码, 并且存在已验证过的主条码,默认放行
if (CollectionUtils.isEmpty(equipVariableCollectContextList) && productionDispatchContextStepService.checkProductionPsInIsExistContext(reqBean))
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中没有需要验证的主条码,且存在已验证主条码信息,当前工步默认放行!");
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前没有需要验证的主条码,且存在已验证主条码信息,当前工步默认放行!");
//没有待验证的主条码
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中没有需要验证的主条码!");
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前没有需要验证的主条码!");
//清除本次已获取得到的主条码信息
productionDispatchContextStepService.deleteScanProductSnContext(reqBean);
@ -87,7 +87,7 @@ public class MesProductSnCheckNosortStepService extends BaseStepService {
//保存进料主条码数据
productionDispatchContextStepService.saveProductionPsInContext(reqBean, productionPsInContextList);
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(productSnList.toString()), stepResult, String.format("上下文中的主条码%s验证条码状态成功!", productSnList.toString()));
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(productSnList.toString()), stepResult, String.format("主条码%s验证条码状态成功!", productSnList.toString()));
}

@ -64,10 +64,10 @@ public class MesProductSnCheckSortStepService extends BaseStepService {
//没有待验证的主条码, 并且存在已验证过的主条码,默认放行
if (CollectionUtils.isEmpty(equipVariableCollectContextList) && productionDispatchContextStepService.checkProductionPsInIsExistContext(reqBean))
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中没有需要验证的主条码,且存在已验证主条码信息,当前工步默认放行!");
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前没有需要验证的主条码,且存在已验证主条码信息,当前工步默认放行!");
//没有待验证的主条码
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中没有需要验证的主条码!");
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前没有需要验证的主条码!");
//清除本次已获取得到的主条码信息
productionDispatchContextStepService.deleteScanProductSnContext(reqBean);
@ -99,7 +99,7 @@ public class MesProductSnCheckSortStepService extends BaseStepService {
//保存进料主条码数据
productionDispatchContextStepService.saveProductionPsInContext(reqBean, productionPsInContextList);
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(productSnList.toString()), stepResult, String.format("上下文中的主条码%s验证条码状态成功!", productSnList.toString()));
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(productSnList.toString()), stepResult, String.format("主条码%s验证条码状态成功!", productSnList.toString()));
}

@ -97,12 +97,12 @@ public class MesProductSnGenerateStepService extends BaseStepService {
//获取上下文产品加工规则数据信息集合
List<MesProdRuleContext> prodRuleContextList = productionDispatchContextStepService.getProdRuleDataContext(reqBean);
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "上下文中不存在加工规则信息,请重置工序解决!");
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在加工规则信息,请重置工序解决!");
//获取生产线的当前班组班次信息
MesProdShiftContext prodShiftContext = productionCustomContextStepService.getMesProdShiftKvBean(reqBean.getOrganizeCode(), reqBean.getWorkCenterCode());
if (null == prodShiftContext) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "上下文中不存在生产开班记录,请重新开班!");
if (null == prodShiftContext) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在生产开班记录,请重新开班!");
//获取上下文产出零件数据信息集合
List<MesProductionPartContext> productionPartContextList = productionDispatchContextStepService.getProductionPartContext(reqBean);

@ -72,12 +72,12 @@ public class MesProductSnSaveStepService extends BaseStepService {
//获取上下文产出条码数据信息集合
List<MesProductionPsOutContext> productionPsOutContextList = productionDispatchContextStepService.getProductionPsOutContext(reqBean);
if (CollectionUtils.isEmpty(productionPsOutContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "上下文中不存在产出零件条码信息,请重置工序解决!");
if (CollectionUtils.isEmpty(productionPsOutContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在产出零件条码信息,请重置工序解决!");
//获取生产线的当前班组班次信息
MesProdShiftContext prodShiftContext = productionCustomContextStepService.getMesProdShiftKvBean(reqBean.getOrganizeCode(), reqBean.getWorkCenterCode());
if (null == prodShiftContext) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "上下文中不存在生产开班记录,请重新开班!");
if (null == prodShiftContext) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在生产开班记录,请重新开班!");
//获取上下文零件数据信息
List<String> partNoList = (productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getPartNo()))).map(MesProductionPsOutContext::getPartNo).collect(Collectors.toList())).stream().filter(o -> !StringUtils.isEmpty(o)).distinct().collect(Collectors.toList());

@ -110,7 +110,7 @@ public class MesProductSnScanNosortStepService extends BaseStepService {
//当前不允许跳过
if (isCraftJumpCode && !isAllowJump)
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.SCAN.getValue()).scanInfo(scanInfo), stepResult, String.format("当前扫描信息工艺强过码[%s],上下文中目前没有可以跳过的主条码信息!", scanInfo));
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.SCAN.getValue()).scanInfo(scanInfo), stepResult, String.format("当前扫描信息工艺强过码[%s],前没有可以跳过的主条码信息!", scanInfo));
//允许跳过,先更新数据
if (isCraftJumpCode && isAllowJump) {
@ -129,7 +129,7 @@ public class MesProductSnScanNosortStepService extends BaseStepService {
//验证是否存在重复主条码
if (checkIsExistRepeatScan(productionProcessContext, equipVariableCollectContextList, productionPsInContextList))
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.SCAN.getValue()).scanInfo(scanInfo), stepResult, String.format("当前扫描信息主条码[%s],上下文中存在重复扫描的主条码!", scanInfo));
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.SCAN.getValue()).scanInfo(scanInfo), stepResult, String.format("当前扫描信息主条码[%s],当前存在重复扫描的主条码!", scanInfo));
Boolean scanInfoIsFinishCode = !scanInfo.equals(productionProcessContext.getFinishCode()) ? false : true;
@ -151,7 +151,7 @@ public class MesProductSnScanNosortStepService extends BaseStepService {
//扫描场景 验证是否全部为空腔
if (!checkIsAllFinishCode(productionPsInContextList, equipVariableCollectContextList))
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.SCAN.getValue()).scanInfo(scanInfo), stepResult, String.format("当前扫描信息%s[%s]%s!", scanInfoName, scanInfo, scanedQty.compareTo(needQty) == 0 ? String.format(",上下文中的主条码个数[%s]已满足腔数", scanedQty) : MesPcnExtConstWords.EMPTY));
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.SCAN.getValue()).scanInfo(scanInfo), stepResult, String.format("当前扫描信息%s[%s]%s!", scanInfoName, scanInfo, scanedQty.compareTo(needQty) == 0 ? String.format(",当前主条码个数[%s]已满足腔数", scanedQty) : MesPcnExtConstWords.EMPTY));
//删除上下文扫/读信息:主条码
productionDispatchContextStepService.deleteScanProductSnContext(reqBean);
@ -205,7 +205,7 @@ public class MesProductSnScanNosortStepService extends BaseStepService {
private void checkIsAboveNeedQty(StationRequestBean reqBean, StationResultBean resultBean, StepResult stepResult, Integer scanedQty, Integer needQty,
List<MesEquipVariableCollectContext> equipVariableCollectContextList, List<MesProductionPsInContext> productionPsInContextList, List<MesProductionPartContext> productionPartContextList, MesCellEquipContext cellEquipContext) {
if (scanedQty.compareTo(needQty) <= 0) return;
String message = String.format("请检查相关数据,上下文中的主条码个数[%s]已满足腔数[%s],可重置工序解决!", scanedQty, needQty);
String message = String.format("请检查相关数据,当前主条码个数[%s]已满足腔数[%s],可重置工序解决!", scanedQty, needQty);
this.sendMessage(reqBean, resultBean, message +
" --- List<MesEquipVariableCollectContext> --- [" + getJsonMessage(equipVariableCollectContextList) + "]" +
" --- List<MesProductionPsInContext> --- [" + getJsonMessage(productionPsInContextList) + "]" +

@ -80,7 +80,7 @@ public class MesProductSnScanSortStepService extends BaseStepService {
//获取上下文产出零件信息
List<MesProductionPartContext> productionPartContextList = productionDispatchContextStepService.getProductionPartContext(reqBean);
if (CollectionUtils.isEmpty(productionPartContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "上下文中没有产出零件信息!");
if (CollectionUtils.isEmpty(productionPartContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前没有产出零件信息!");
//排序是否需要扫描主条码配置【工步参数】 默认不用配置, 目前排序 工单与条码一对一, 当一对多的时候需要配置
Optional<Map<String, MesProdRouteOptParam>> stepParamMap = getStepParams(reqBean);
@ -98,7 +98,7 @@ public class MesProductSnScanSortStepService extends BaseStepService {
//获取上下文扫/读信息:主条码 【工艺强过码场景】
List<MesEquipVariableCollectContext> equipVariableCollectContextList = productionDispatchContextStepService.getScanProductSnContext(reqBean);
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "上下文中没有待验证的主条码信息!");
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前没有待验证的主条码信息!");
//删除上下文扫/读信息:主条码
if (!CollectionUtils.isEmpty(equipVariableCollectContextList)) productionDispatchContextStepService.deleteScanProductSnContext(reqBean);
@ -108,7 +108,7 @@ public class MesProductSnScanSortStepService extends BaseStepService {
//验证是否匹配工艺强过码
if (equipVariableCollectContextList.size() != 1 || checkScanInfoMatchCraftJumpCode(reqBean, equipVariableCollectContextList.get(0).getEquipVariableValue())) {
String productSnStr = equipVariableCollectContextList.stream().filter(o -> null != o).map(MesEquipVariableCollectContext::getEquipVariableValue).collect(Collectors.toList()).toString();
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(productSnStr), stepResult, String.format("当前上下文中待验证的主条码%s无效!", productSnStr));
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(productSnStr), stepResult, String.format("当前待验证的主条码%s无效!", productSnStr));
}
//验证是否支持跳过
@ -163,7 +163,7 @@ public class MesProductSnScanSortStepService extends BaseStepService {
});
//保存进料主条码数据
productionDispatchContextStepService.saveProductionPsInContext(reqBean, productionPsInContextList);
return execDynamicsCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.PROCESS.getValue()), stepResult, true, MesPcnEnumUtil.STATION_BUSI_TYPE.RUNNING_INFO, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, "已标记当前上下文中工艺防错验证失败的主条码信息!");
return execDynamicsCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.PROCESS.getValue()), stepResult, true, MesPcnEnumUtil.STATION_BUSI_TYPE.RUNNING_INFO, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, "已标记当前工艺防错验证失败的主条码信息!");
}
}

@ -31,7 +31,7 @@ public class MesProductionDataSaveStepService extends BaseStepService {
//保存零件条码信息工步
((IStepService) SpringContextsUtil.getBean("mesProductSnSaveStepService")).executeInState(reqBean);
//加工异常处理工步【此工步未整改】
//加工异常处理工步
((IStepService) SpringContextsUtil.getBean("mesProductResultErrorHandleStepService")).executeInState(reqBean);
//生成加工记录工步
@ -40,9 +40,6 @@ public class MesProductionDataSaveStepService extends BaseStepService {
//保存装配记录工步
((IStepService) SpringContextsUtil.getBean("mesAssemblySaveStepService")).executeInState(reqBean);
//生产汇报工步 【此工步未整改】
//((IStepService) SpringContextsUtil.getBean("mesReportGenerateStepService")).executeInState(reqBean);
//保存工单信息工步
((IStepService) SpringContextsUtil.getBean("mesWorkOrderSaveStepService")).executeInState(reqBean);

@ -77,12 +77,12 @@ public class MesProductionRecordGenerateStepService extends BaseStepService {
//获取上下文产品加工规则数据信息集合
List<MesProdRuleContext> prodRuleContextList = productionDispatchContextStepService.getProdRuleDataContext(reqBean);
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前上下文中不存在非排序加工规则数据,请重置工序!");
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在非排序加工规则数据,请重置工序!");
//获取上下文产出条码数据信息集合
List<MesProductionPsOutContext> productionPsOutContextList = productionDispatchContextStepService.getProductionPsOutContext(reqBean);
if (CollectionUtils.isEmpty(productionPsOutContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "上下文中不存在产出零件条码信息,请重置工序解决!");
if (CollectionUtils.isEmpty(productionPsOutContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在产出零件条码信息,请重置工序解决!");
//获取上下文(头道)模具号
MesEquipVariableCollectContext equipVariableCollectContext = productionDispatchContextStepService.getFirstMouldNoContext(reqBean);

@ -70,7 +70,7 @@ public class MesWorkOrderCheckNosortStepService extends MesWorkOrderCheckStepSer
//获取上下文生产扫/读信息:加工单
List<MesEquipVariableCollectContext> equipVariableCollectContextList = productionDispatchContextStepService.getScanWorkOrderNoContext(reqBean);
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "上下文中缺失待验证的加工单信息!");
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前缺失待验证的加工单信息!");
//清除本次已获取得到的加工单信息
productionDispatchContextStepService.deleteScanWorkOrderNoContext(reqBean);
@ -100,7 +100,7 @@ public class MesWorkOrderCheckNosortStepService extends MesWorkOrderCheckStepSer
//当前不允许跳过
if (isCraftJumpCode && !isAllowJump)
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.SCAN.getValue()).
scanInfo(equipVariableCollectContextList.get(0).getEquipVariableValue()), stepResult, String.format("当前扫描信息工艺强过码[%s],上下文中目前没有可以跳过的加工单信息!", equipVariableCollectContextList.get(0).getEquipVariableValue()));
scanInfo(equipVariableCollectContextList.get(0).getEquipVariableValue()), stepResult, String.format("当前扫描信息工艺强过码[%s],前没有可以跳过的加工单信息!", equipVariableCollectContextList.get(0).getEquipVariableValue()));
//允许跳过,先更新数据
if (isCraftJumpCode && isAllowJump) {
@ -137,7 +137,7 @@ public class MesWorkOrderCheckNosortStepService extends MesWorkOrderCheckStepSer
//验证是否全部为空腔
if (doCheckIsAllFinishCode(reqBean, productionPartContextList))
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中的加工单信息全部为空腔,已清除当前的空腔数据!");
return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前加工单信息全部为空腔,已清除当前的空腔数据!");
} finally {
@ -158,7 +158,7 @@ public class MesWorkOrderCheckNosortStepService extends MesWorkOrderCheckStepSer
String workOrderStr = equipVariableCollectContextList.stream().filter(o -> null != o).map(MesEquipVariableCollectContext::getEquipVariableValue).collect(Collectors.toList()).toString();
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(workOrderStr), stepResult, String.format("当前%s加工单%s验证工单状态成功%s!",
MesExtEnumUtil.CELL_MESSAGE_SOURCE.valueOfDescription(equipVariableCollectContextList.get(0).getMessageSource()), workOrderStr,
MesExtEnumUtil.CELL_MESSAGE_SOURCE.SCAN.getValue() == equipVariableCollectContextList.get(0).getMessageSource() ? String.format(",上下文中的加工单个数[%s]已满足腔数", productionPartContextList.size()) : MesPcnExtConstWords.EMPTY));
MesExtEnumUtil.CELL_MESSAGE_SOURCE.SCAN.getValue() == equipVariableCollectContextList.get(0).getMessageSource() ? String.format(",当前加工单个数[%s]已满足腔数", productionPartContextList.size()) : MesPcnExtConstWords.EMPTY));
}

@ -65,7 +65,7 @@ public class MesWorkOrderCheckSortStepService extends MesWorkOrderCheckStepServi
//获取上下文生产扫/读信息:加工单
List<MesEquipVariableCollectContext> equipVariableCollectContextList = productionDispatchContextStepService.getScanWorkOrderNoContext(reqBean);
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "上下文中缺失待验证的加工单信息!");
if (CollectionUtils.isEmpty(equipVariableCollectContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前缺失待验证的加工单信息!");
//清除本次已获取得到的加工单信息
productionDispatchContextStepService.deleteScanWorkOrderNoContext(reqBean);
@ -109,12 +109,12 @@ public class MesWorkOrderCheckSortStepService extends MesWorkOrderCheckStepServi
equipVariableCollectContextList.get(0).getEquipVariableValue(), cellEquipmentContext.getCavity(), cellEquipmentContext.getCavity() - productionPartContextList.size()));
//验证是否全部为空腔
if (doCheckIsAllFinishCode(reqBean, productionPartContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前上下文中的加工单信息全部为空腔,已清除当前的空腔数据!");
if (doCheckIsAllFinishCode(reqBean, productionPartContextList)) return execNonCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "当前加工单信息全部为空腔,已清除当前的空腔数据!");
String workOrderStr = equipVariableCollectContextList.stream().filter(o -> null != o).map(MesEquipVariableCollectContext::getEquipVariableValue).collect(Collectors.toList()).toString();
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog().scanInfo(workOrderStr), stepResult, String.format("当前%s加工单%s验证工单状态成功%s!",
MesExtEnumUtil.CELL_MESSAGE_SOURCE.valueOfDescription(equipVariableCollectContextList.get(0).getMessageSource()), workOrderStr,
MesExtEnumUtil.CELL_MESSAGE_SOURCE.SCAN.getValue() == equipVariableCollectContextList.get(0).getMessageSource() ? String.format(",上下文中的加工单个数[%s]已满足腔数", productionPartContextList.size()) : MesPcnExtConstWords.EMPTY));
MesExtEnumUtil.CELL_MESSAGE_SOURCE.SCAN.getValue() == equipVariableCollectContextList.get(0).getMessageSource() ? String.format(",当前加工单个数[%s]已满足腔数", productionPartContextList.size()) : MesPcnExtConstWords.EMPTY));
}

@ -78,7 +78,7 @@ public class MesWorkOrderSaveStepService extends BaseStepService {
//获取上下文产品加工规则数据信息集合
List<MesProdRuleContext> prodRuleContextList = productionDispatchContextStepService.getProdRuleDataContext(reqBean);
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "上下文中不存在加工规则信息,请重置工序解决!");
if (CollectionUtils.isEmpty(prodRuleContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "当前不存在加工规则信息,请重置工序解决!");
//获取上下文产出零件数据信息集合
List<MesProductionPartContext> productionPartContextList = productionDispatchContextStepService.getProductionPartContext(reqBean);

Loading…
Cancel
Save