tags/yfai-pcn-ext-v1.0
王杰 11 months ago
parent cf09ddad50
commit 3c18ac6527

@ -66,10 +66,12 @@ public class MesAssemblySaveNosortStepService extends BaseStepService {
if (CollectionUtils.isEmpty(productionPsOutContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "上下文中不存在产出零件条码信息,请重置工序解决!");
//从上下文中取出工位当前要使用的设备
MesCellEquipContext cellEquipContext = productionProcessContext.getCurCellEquip();
Map<Integer, MesProductionPsOutContext> ppMap = CollectionUtils.isEmpty(productionPsOutContextList) ? null : productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getForeignKey()))).collect(Collectors.toMap(MesProductionPsOutContext::getForeignKey, o -> o));
//保存装配记录
prodRuleContextList.stream().filter(o -> null != o).forEach(o -> saveProductionAssemblyData(reqBean, resultBean, stepResult, productionProcessContext, o, ppMap, cellEquipContext));
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "保存装配记录成功!");

@ -66,22 +66,27 @@ public class MesProductionRecordGenerateStepService extends BaseStepService {
if (CollectionUtils.isEmpty(productionPsOutContextList)) execExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "上下文中不存在产出零件条码信息,请重置工序解决!");
//获取上下文(头道)模具号
MesEquipVariableCollectContext equipVariableCollectContext = productionDispatchContextStepService.getFirstMouldNoContext(reqBean);
if (null == equipVariableCollectContext) equipVariableCollectContext = productionDispatchContextStepService.getMouldNoContext(reqBean);
//从上下文中取出工位当前要使用的设备
MesCellEquipContext cellEquipContext = productionProcessContext.getCurCellEquip();
Map<Integer, MesProdRuleContext> prMap = CollectionUtils.isEmpty(prodRuleContextList) ? null : prodRuleContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getForeignKey()))).collect(Collectors.toMap(MesProdRuleContext::getForeignKey, o -> o));
//生成加工记录
String mouldNo = null != equipVariableCollectContext ? equipVariableCollectContext.getEquipVariableValue() : null;
productionPsOutContextList.stream().filter(o -> null != o).forEach(o -> saveProductionRecordData(reqBean, resultBean, stepResult, mouldNo, productionProcessContext, o, prMap, cellEquipContext));
productionPsOutContextList.stream().filter(o -> null != o).forEach(o -> saveProductionRecordData(reqBean, resultBean, stepResult, mouldNo, prodRuleContextList, productionProcessContext, o, prMap, cellEquipContext));
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "保存装配记录成功!");
//保存上下文产品加工规则信息集合
productionDispatchContextStepService.saveProdRuleDataContext(reqBean, prodRuleContextList);
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "生成加工记录成功!");
}
private void saveProductionRecordData(StationRequestBean reqBean, StationResultBean resultBean, StepResult stepResult, String mouldNo,
private void saveProductionRecordData(StationRequestBean reqBean, StationResultBean resultBean, StepResult stepResult, String mouldNo, List<MesProdRuleContext> prodRuleContextList,
MesProductionProcessContext productionProcessContext, MesProductionPsOutContext productionPsOutContext, Map<Integer, MesProdRuleContext> prMap, MesCellEquipContext cellEquipContext) {
MesProdRuleContext prodRuleContext = CollectionUtils.isEmpty(prMap) ? null : prMap.get(productionPsOutContext.getForeignKey());
@ -93,7 +98,7 @@ public class MesProductionRecordGenerateStepService extends BaseStepService {
productionRecord.setEquipmentCode(cellEquipContext.getEquipmentCode());
productionRecord.setEquipmentName(cellEquipContext.getEquipmentName());
productionRecord.setReportType(!StringUtils.isEmpty(prodRuleContext.getReportType()) ? prodRuleContext.getReportType() : MesExtEnumUtil.NOSORT_REPORT_TYPE.NO_REPORT.getValue());
productionRecord.setReportType((null != prodRuleContext && !StringUtils.isEmpty(prodRuleContext.getReportType())) ? prodRuleContext.getReportType() : MesExtEnumUtil.NOSORT_REPORT_TYPE.NO_REPORT.getValue());
if (MesExtEnumUtil.NOSORT_REPORT_TYPE.NO_REPORT.getValue() != productionRecord.getReportType()) productionRecord.setReportPartNo(productionPsOutContext.getPartNo());
productionRecord.setReportStatus(MesExtEnumUtil.NOSORT_REPORT_TYPE.NO_REPORT.getValue() != productionRecord.getReportType() ? MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_10.getValue() : MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_30.getValue());
@ -110,7 +115,10 @@ public class MesProductionRecordGenerateStepService extends BaseStepService {
ConvertBean.serviceModelInitialize(productionRecord, reqBean.getUserInfo());
productionRecord.setCompleteDateTime(productionRecord.getModifyDatetime());
productionRecordRepository.insert(productionRecord);
productionRecord = productionRecordRepository.insert(productionRecord);
if (null != prodRuleContext) prodRuleContextList.stream().filter(o -> (null != o &&
!StringUtils.isEmpty(o.getForeignKey()) && o.getForeignKey().compareTo(productionPsOutContext.getForeignKey()) == 0)).findFirst().get().productionRecordId(productionRecord.getId()).mouldNo(mouldNo);
}

@ -150,6 +150,11 @@ public class MesProdRuleContext implements Serializable {
return this;
}
public MesProdRuleContext mouldNo(String mouldNo) {
this.mouldNo = mouldNo;
return this;
}
public MesProdRuleContext inPartIsEmpty() {
this.inPartIsEmpty = true;
return this;

Loading…
Cancel
Save