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 502549c..51a0b40 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 @@ -183,7 +183,7 @@ public class MesBomService extends BaseMesService implements IMesBomServ DdlPackBean ddlPackBean1= DdlPackBean.getDdlPackBean(organizeCode); DdlPreparedPack.getStringEqualPack(partNo, MesExtConstWords.PART_NO, ddlPackBean1); DdlPreparedPack.getStringEqualPack(bomCode, MesExtConstWords.BOM_CODE, ddlPackBean1); - DdlPreparedPack.getStringEqualPack(effStartTime, MesExtConstWords.EFF_START_TIME, ddlPackBean1); + DdlPreparedPack.getStringSmallerPack(effStartTime, MesExtConstWords.EFF_START_TIME, ddlPackBean1); return baseRDao.findByHqlWhere(ddlPackBean1); } 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 5a1274a..6f7a0c9 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 @@ -969,10 +969,25 @@ public class MesWorkOrderService extends BaseMesService implements MesPart mesPart = iMesPartService.getPartByPartNo(mesWorkOrderDb.getPartNo(), mesWorkOrderDb.getOrganizeCode()); //查询产线信息 MesWorkCenter mesWorkCenter = getMesWorkCenter(mesWorkOrderDb.getOrganizeCode(),mesWorkOrderDb.getWorkCenterCode()); - //获取生产版本 - MesProductVersion mesProductVersion = getMesProductVersion(mesWorkOrderDb.getOrganizeCode(),mesWorkOrderDb.getPartNo(),mesWorkOrderDb.getProductVersion()); + + String partProdGroupCode = mesWorkOrder.getPartProdGroupCode(); + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesWorkOrder.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(partProdGroupCode,"partProdGroupCode",ddlPackBean); + List mesPartProdGroupList = mesPartProdGroupRao.findByHqlTopWhere(ddlPackBean, 1); + String bomVersion = ""; + MesProductVersion mesProductVersion = getMesProductVersion(mesWorkOrder.getOrganizeCode(), mesWorkOrder.getPartNo(), mesWorkOrder.getProductVersion()); + if (!mesPartProdGroupList.isEmpty()){ + MesPartProdGroup mesPartProdGroup = mesPartProdGroupList.get(0); + if (mesPartProdGroup.getEnableBomVersion() == null || mesPartProdGroup.getEnableBomVersion() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){ + //获取生产版本 + mesProductVersion = getMesProductVersion(mesWorkOrder.getOrganizeCode(), mesWorkOrder.getPartNo(), mesWorkOrder.getProductVersion()); + bomVersion = mesProductVersion.getAlternativePartList(); + } + } + //物料+生产版本获取bom信息 - List mesBoms = mesBomService.findBomList(mesPart.getOrganizeCode(), mesPart, mesProductVersion.getAlternativePartList()); + List mesBoms = mesBomService.findBomList(mesPart.getOrganizeCode(), mesPart, bomVersion); + //报工类型 if (MesExtEnumUtil.REPORT_TYPE.REPORT.getValue() == mesWorkOrder.getReportType()) { mesWorkOrderDb.setReportedQty(MathOperation.add(mesWorkOrder.getNum(), mesWorkOrderDb.getReportedQty())); @@ -1077,7 +1092,7 @@ public class MesWorkOrderService extends BaseMesService implements MesProductVersion mesProductVersion = new MesProductVersion(); if (!mesPartProdGroupList.isEmpty()){ MesPartProdGroup mesPartProdGroup = mesPartProdGroupList.get(0); - if (mesPartProdGroup.getEnableBomVersion() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){ + if (mesPartProdGroup.getEnableBomVersion() == null || mesPartProdGroup.getEnableBomVersion() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){ //获取生产版本 mesProductVersion = getMesProductVersion(mesWorkOrder.getOrganizeCode(), mesWorkOrder.getPartNo(), mesWorkOrder.getProductVersion()); bomVersion = mesProductVersion.getAlternativePartList();