|
|
@ -207,10 +207,11 @@ public class MesProdCraftRouteCheckNosortStepService extends MesProdCraftRouteCh
|
|
|
|
beforeCellCraftList = beforeCellCraftList.stream().filter(o -> null != o).sorted(Comparator.comparing(MesCraftRouteDetail::getSeq)).collect(Collectors.toList());
|
|
|
|
beforeCellCraftList = beforeCellCraftList.stream().filter(o -> null != o).sorted(Comparator.comparing(MesCraftRouteDetail::getSeq)).collect(Collectors.toList());
|
|
|
|
|
|
|
|
|
|
|
|
//判断上面是否已经查询过数据
|
|
|
|
//判断上面是否已经查询过数据
|
|
|
|
if (!(null != optionalPs && optionalPs.isPresent() && optionalPs.get().getRepeatTimes().compareTo(MesPcnExtConstWords.ONE) > 0 && reqBean.getProcessCode().equals(productionPsInContext.getProcessCode())))
|
|
|
|
if (!(null != optionalPs && reqBean.getProcessCode().equals(productionPsInContext.getProcessCode())))
|
|
|
|
productionRecordList = productionRecordService.findProductionRecordList(reqBean.getOrganizeCode(), productionPsInContext.getProductSn());
|
|
|
|
productionRecordList = productionRecordService.findProductionRecordList(reqBean.getOrganizeCode(), productionPsInContext.getProductSn());
|
|
|
|
|
|
|
|
|
|
|
|
Map<String, List<MesProductionRecord>> prMapByCraft = CollectionUtils.isEmpty(productionRecordList) ? null : productionRecordList.stream().filter(o -> null != o).collect(Collectors.groupingBy(MesProductionRecord::getCraftCode));
|
|
|
|
Map<String, List<MesProductionRecord>> prMapByCraft = CollectionUtils.isEmpty(productionRecordList) ? null :
|
|
|
|
|
|
|
|
productionRecordList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getCraftCode()))).collect(Collectors.groupingBy(MesProductionRecord::getCraftCode));
|
|
|
|
|
|
|
|
|
|
|
|
//遍历前道工艺, 根据工艺查询加工记录是否存在, 并验证是否存在捆绑工艺
|
|
|
|
//遍历前道工艺, 根据工艺查询加工记录是否存在, 并验证是否存在捆绑工艺
|
|
|
|
for (int i = 0; i < beforeCellCraftList.size(); i ++) {
|
|
|
|
for (int i = 0; i < beforeCellCraftList.size(); i ++) {
|
|
|
@ -224,6 +225,15 @@ public class MesProdCraftRouteCheckNosortStepService extends MesProdCraftRouteCh
|
|
|
|
message, suffix, productionPsInContext.getProductSn(), beforeCellCraftList.get(i).getCraftRouteCode(), beforeCellCraftList.get(i - 1).getCraftCode())).isCompleted();
|
|
|
|
message, suffix, productionPsInContext.getProductSn(), beforeCellCraftList.get(i).getCraftRouteCode(), beforeCellCraftList.get(i - 1).getCraftCode())).isCompleted();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//当主条码存在已做工序 且 与当前工位的工序不一致时, 判断当前工位的工序是否已经存在加工记录
|
|
|
|
|
|
|
|
if (!CollectionUtils.isEmpty(productionRecordList)
|
|
|
|
|
|
|
|
&& !StringUtils.isEmpty(productionPsInContext.getProcessCode())
|
|
|
|
|
|
|
|
&& !reqBean.getProcessCode().equals(productionPsInContext.getProcessCode())
|
|
|
|
|
|
|
|
&& isExistProductionRecord(CollectionUtils.isEmpty(productionRecordList) ? null :
|
|
|
|
|
|
|
|
productionRecordList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getProcessCode()))).collect(Collectors.groupingBy(MesProductionRecord::getProcessCode)), reqBean.getProcessCode())) {
|
|
|
|
|
|
|
|
return stepResult.isCompleted(false).msg(String.format("%s%s[%s]已经过当前工序[%s]", message, suffix, productionPsInContext.getProductSn(), reqBean.getProcessCode())).isCompleted();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
return true;
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|