diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesBomService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesBomService.java index 30e6039..0338d94 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesBomService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesBomService.java @@ -231,6 +231,7 @@ public class MesBomService extends BaseMesService implements IMesBomServ DdlPackBean bomPackBean = DdlPackBean.getDdlPackBean(organizeCode); DdlPreparedPack.getStringEqualPack(partNo, "partNo", bomPackBean); DdlPreparedPack.getStringEqualPack(bomVersion, "bomVersion", bomPackBean); + DdlPreparedPack.getOrderBy("effStartTime", CommonEnumUtil.ASC_OR_DESC.DESC.getValue(), bomPackBean); List bomList = this.baseRDao.findByHqlTopWhere(bomPackBean,1); return bomList.isEmpty() ? null : bomList.get(0); } 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 62eab50..07298ad 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 @@ -522,7 +522,9 @@ public class MesWorkOrderService extends BaseMesService implements if (!MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue().equals(item.getOrderFlag())) { //获取生产版本 mesProductVersion = getMesProductVersion(item.getOrganizeCode(),item.getPartNo()); - item.setProductVersion(mesProductVersion.getProductVersion()); + if (mesProductVersion != null) { + item.setProductVersion(mesProductVersion.getProductVersion()); + } } //是否自动发布 return isAuto(item, mesProductVersion); @@ -1209,6 +1211,9 @@ public class MesWorkOrderService extends BaseMesService implements if (StringUtil.isEmpty(model.getSn())) { //获取生产版本 MesProductVersion mesProductVersion = getMesProductVersion(model.getOrganizeCode(),model.getPartNo()); + if (Objects.isNull(mesProductVersion)) { + MesException.throwMesBusiException("物料【%s】生产版本信息不存在", model.getPartNo()); + } //获取bom List mesBoms = mesBomService.findBomList(mesPart.getOrganizeCode(), mesPart, mesProductVersion.getAlternativePartList()); //生成流水码 @@ -2771,9 +2776,6 @@ public class MesWorkOrderService extends BaseMesService implements private MesProductVersion getMesProductVersion(String organizeCode, String partNo) { MesProductVersion mesProductVersion = mesProductVersionService.getMesProductVersionByPartNoAndProductVersion(organizeCode, partNo, null); - if (Objects.isNull(mesProductVersion)) { - MesException.throwMesBusiException("物料【%s】生产版本信息不存在", partNo); - } return mesProductVersion; } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesCreateWorkOrderImpl.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesCreateWorkOrderImpl.java index cb459f3..67e5666 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesCreateWorkOrderImpl.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesCreateWorkOrderImpl.java @@ -218,7 +218,7 @@ public class MesCreateWorkOrderImpl implements IMesCreateWorkOrder { * ***BOM失效时间 > 当天 && BOM生效时间 <= 当前时间(yyyy-mm-dd hh:MM:ss) */ MesBom bom; - if (partProdGroup.getEnableBomVersion() != CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){ + if (partProdGroup.getEnableBomVersion() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){ MesProductVersion prodVersion = getProdVersion(organizeCode, mesPartProdGroupDetail.getProductPartNo()); if (prodVersion == null) { log.info("请配置工厂:{},partNo:{}的生产版本", mesPartProdGroupDetail.organizeCode, mesPartProdGroupDetail.getProductPartNo());