diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java index 492107c..c4a5af0 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java @@ -755,12 +755,16 @@ public class MesWorkOrderService extends BaseMesService implements ddlPackBean = DdlPackBean.getDdlPackBean(mesWorkOrder.getOrganizeCode()); DdlPreparedPack.getStringEqualPack(mesPart.getPartNo(), "partNo", ddlPackBean); DdlPreparedPack.getStringEqualPack(mesProductVersion.getAlternativePartList(), "bomVersion", ddlPackBean); + DdlPreparedPack.getStringSmallerPack(TimeTool.getNowTime(true), "effStartTime", ddlPackBean); + DdlPreparedPack.getOrderBy("effStartTime",CommonEnumUtil.ASC_OR_DESC.DESC.getValue(),ddlPackBean); List mesBoms = mesBomRDao.findByHqlWhere(ddlPackBean); if (CollectionUtils.isEmpty(mesBoms)) { MesException.throwMesBusiException("物料【%s】生产版本【%s】对应bom信息不存在", mesWorkOrder.getPartNo(), mesProductVersion.getProductVersion()); } - return mesBoms; + MesBom next = mesBoms.iterator().next(); + //如果存在多个bomCode取最新的一个 + return mesBoms.stream().collect(Collectors.groupingBy(MesBom::getBomCode)).get(next.getBomCode()); } private MesProductVersion getMesProductVersion(MesWorkOrder mesWorkOrder) {