From 68908190ede6a5b022fca1a34c7cc920d4940412 Mon Sep 17 00:00:00 2001 From: "castle.zang" Date: Thu, 14 Nov 2024 14:01:00 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E9=9B=B6=E4=BB=B6?= =?UTF-8?q?=E5=8F=B7=E6=98=AF=E7=94=A8=E6=9D=A5=E6=9F=A5=E6=89=BE=E7=94=9F?= =?UTF-8?q?=E4=BA=A7=E7=89=88=E6=9C=AC=E4=B8=8Ebom=20=E5=AD=98=E5=9C=A8?= =?UTF-8?q?=E4=BA=8E=E9=9B=B6=E4=BB=B6=E7=94=9F=E4=BA=A7=E7=BB=84=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mes/api/busi/IMesSortRuleCfgOfflineService.java | 4 ++-- .../base/roundness/MesPackageRoundnessService.java | 9 +++++++-- .../serviceimpl/busi/MesCreateWorkOrderImpl.java | 18 ++++++++++++++---- .../serviceimpl/busi/MesOfflineServiceImpl.java | 10 ++++++---- .../busi/MesSortRuleCfgOfflineServiceImpl.java | 20 ++++++++++---------- 5 files changed, 39 insertions(+), 22 deletions(-) diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSortRuleCfgOfflineService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSortRuleCfgOfflineService.java index bfdc5c7..5ec38be 100644 --- a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSortRuleCfgOfflineService.java +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/IMesSortRuleCfgOfflineService.java @@ -14,7 +14,7 @@ public interface IMesSortRuleCfgOfflineService { void deleteSortRuleOffline(String organizeCode); - void doCreateSortRuleOffline(String custPartNo, String erpPartNo, String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail); + void doCreateSortRuleOffline(String custPartNo, String erpPartNo, String productPartNo,String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail); void deletePullOffline(String organizeCode); @@ -22,5 +22,5 @@ public interface IMesSortRuleCfgOfflineService { void deletePullDetailOffline(String organizeCode); - void doCreatePullOffline(String custPartNo, String erpPartNo, String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail, MesPartPull partPull, List pullDetailList); + void doCreatePullOffline(String custPartNo, String erpPartNo,String productPartNo, String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail, MesPartPull partPull, List pullDetailList); } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java index e2b1967..0ca8e34 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java @@ -184,10 +184,15 @@ public class MesPackageRoundnessService implements IRoundnessStrategy { if (mesPartProdGroupDetail.getProductPartNo() == null) { mesPartProdGroupDetail.setProductPartNo(mesPartProdGroupDetail.getPartNo()); } - MesPartSap mesPart = this.getMesPart(mesPartProdGroupDetail.getProductPartNo(), partProdGroup.getOrganizeCode()); + /** + * 2024/11/14 + * 生产零件号用于拆分bom + * 零件号是erp零件号 + */ + MesPartSap mesPart = this.getMesPart(mesPartProdGroupDetail.getPartNo(), partProdGroup.getOrganizeCode()); if (mesPart == null) { - log.info("{}工厂没有,零件:{}信息", partProdGroup.getOrganizeCode(), mesPartProdGroupDetail.getProductPartNo()); + log.info("{}工厂没有,零件:{}信息", partProdGroup.getOrganizeCode(), mesPartProdGroupDetail.getPartNo()); return; } 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 bc319c6..042b131 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 @@ -188,18 +188,27 @@ public class MesCreateWorkOrderImpl implements IMesCreateWorkOrder { //工单号生成规则 【工厂号+yyyyMMdd+5位流水】 // 13.生产版本 organizeCode + partNo - MesProductVersion prodVersion = getProdVersion(organizeCode, partSap.getPartNo()); + /** + * 生产版本是根据 生产零检号查询,不是根据erp零件号查询 + */ + MesProductVersion prodVersion = getProdVersion(organizeCode, mesPartProdGroupDetail.getProductPartNo()); if (prodVersion == null) { - log.info("请配置工厂:{},partNo:{}的生产版本", mesPartProdGroupDetail.organizeCode, partSap.getPartNo()); + log.info("请配置工厂:{},partNo:{}的生产版本", mesPartProdGroupDetail.organizeCode, mesPartProdGroupDetail.getProductPartNo()); } else { String productVersion = prodVersion.getProductVersion(); mesWorkOrder.setProductVersion(productVersion); } // bom prodVersion.alternativePartList bom版本 - MesBom bom = mesBomService.findBom(organizeCode, prodVersion == null ? null : prodVersion.getAlternativePartList(), partSap.getPartNo()); + /** + * bom也需要根据生产零件号拆分 + */ + MesBom bom = mesBomService.findBom(organizeCode, prodVersion == null ? null : prodVersion.getAlternativePartList(), mesPartProdGroupDetail.getProductPartNo()); if (bom != null){ mesWorkOrder.setBomCode(bom.getBomCode()); + }else { + log.info("工厂:{},生产零件号:{}没有维护bom", organizeCode, mesPartProdGroupDetail.getProductPartNo()); + return; } mesWorkOrder.setQty(sortInfo.getQty()); @@ -289,7 +298,8 @@ public class MesCreateWorkOrderImpl implements IMesCreateWorkOrder { // 打散bom List workOrderPartList = new ArrayList<>(); if (partProdGroup.getIsDisassembleBom() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()) { - workOrderPartList = dismantleBom(partSap.getPartNo(), mesWorkOrder.getQty(), sortInfo.getMatchTime(), bom.getBomCode(), sortInfo.getOrganizeCode(), mesPartProdGroupDetail.getWorkCellCode(), mesWorkOrder.getWorkOrderNo()); + //打散bom使用生产零件号 + workOrderPartList = dismantleBom(mesPartProdGroupDetail.getProductPartNo(), mesWorkOrder.getQty(), sortInfo.getMatchTime(), bom.getBomCode(), sortInfo.getOrganizeCode(), mesPartProdGroupDetail.getWorkCellCode(), mesWorkOrder.getWorkOrderNo()); } /** * 总成拆bom,变成子零件 diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesOfflineServiceImpl.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesOfflineServiceImpl.java index 1de0d8b..020a6c5 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesOfflineServiceImpl.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesOfflineServiceImpl.java @@ -50,8 +50,9 @@ public class MesOfflineServiceImpl implements IMesOfflineService { List detailList = partProdGroupDetailService.findAll(detailPartProdDetailPackBean); //3.根据客户零件表中的erp零件,是总成零件号;遍历每个客户零件号生成sortRuleCfgOff表 for (MesPartProdGroupDetail detail : detailList) { - String erpPartNo = StringUtils.isBlank(detail.getProductPartNo()) ? detail.getPartNo() : detail.getProductPartNo(); - cfgOfflineService.doCreateSortRuleOffline(detail.getCustPartNo(), erpPartNo,organizeCode,mesPartProdGroup,detail); + String erpPartNo = detail.getPartNo(); + String productPartNo = StringUtils.isBlank(detail.getProductPartNo()) ? erpPartNo : detail.getProductPartNo(); + cfgOfflineService.doCreateSortRuleOffline(detail.getCustPartNo(), erpPartNo,productPartNo,organizeCode,mesPartProdGroup,detail); } } @@ -91,13 +92,14 @@ public class MesOfflineServiceImpl implements IMesOfflineService { List detailList = partProdGroupDetailService.findAll(detailPartProdDetailPackBean); //3.根据客户零件表中的erp零件,是总成零件号;遍历每个客户零件号生成sortRuleCfgOff表 for (MesPartProdGroupDetail detail : detailList) { - String erpPartNo = StringUtils.isBlank(detail.getProductPartNo()) ? detail.getPartNo() : detail.getProductPartNo(); + String erpPartNo = detail.getPartNo(); + String productPartNo = StringUtils.isBlank(detail.getProductPartNo()) ? erpPartNo : detail.getProductPartNo(); MesPartPull mesPartPull = partPullMap.get(mesPartProdGroup.getWorkCenterCode()); List mesPartPullDetails = detailMapList.get(mesPartPull.getPullCode()); if (mesPartPullDetails == null) { continue; } - cfgOfflineService.doCreatePullOffline(detail.getCustPartNo(), erpPartNo,organizeCode,mesPartProdGroup,detail,partPullMap.get(mesPartProdGroup.getWorkCenterCode()), mesPartPullDetails); + cfgOfflineService.doCreatePullOffline(detail.getCustPartNo(), erpPartNo,productPartNo,organizeCode,mesPartProdGroup,detail,partPullMap.get(mesPartProdGroup.getWorkCenterCode()), mesPartPullDetails); } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java index 483d277..a5c5049 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java @@ -78,12 +78,12 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS @Transactional(propagation = Propagation.REQUIRES_NEW) @Override - public void doCreateSortRuleOffline(String custPartNo, String erpPartNo, String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail) { + public void doCreateSortRuleOffline(String custPartNo, String erpPartNo, String productPartNo, String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail) { MesProductVersion mesProductVersion = getMesProductVersion(erpPartNo, organizeCode); //4.总成零件号打散bom String bomVersion = mesProductVersion.getAlternativePartList(); - MesBom bom = mesBomService.findBom(organizeCode, bomVersion, erpPartNo); + MesBom bom = mesBomService.findBom(organizeCode, bomVersion, productPartNo); if (bom == null) { return; } @@ -93,7 +93,7 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS return; } //5.打散的bom 获取排序加工规则 - List workOrderPartList = dismantleBom(erpPartNo, 1, TimeTool.getNowTime(true), bom.getBomCode(), organizeCode, detail.getWorkCellCode()); + List workOrderPartList = dismantleBom(productPartNo, 1, TimeTool.getNowTime(true), bom.getBomCode(), organizeCode, detail.getWorkCellCode()); //6.装配件获取的三种条件 String custCode = mesCustomerPart.getCustCode(); MesCustomerCarModel mesCustomerCarModel = getMesCustomerCarModel(custPartNo, organizeCode, custCode); @@ -146,7 +146,7 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS } @Override - public void doCreatePullOffline(String custPartNo, String erpPartNo, String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail, MesPartPull partPull, List pullDetailList) { + public void doCreatePullOffline(String custPartNo, String erpPartNo,String productPartNo, String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail, MesPartPull partPull, List pullDetailList) { MesProductVersion mesProductVersion = getMesProductVersion(erpPartNo, organizeCode); //4.总成零件号打散bom String bomVersion = mesProductVersion.getAlternativePartList(); @@ -165,7 +165,7 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS List partSapList = partSapRao.findByHqlWhere(partPackBean); //5.打散的bom 获取排序加工规则 - List workOrderPartList = dismantleBom(erpPartNo, 1, TimeTool.getNowTime(true), bom.getBomCode(), organizeCode, detail.getWorkCellCode()); + List workOrderPartList = dismantleBom(productPartNo, 1, TimeTool.getNowTime(true), bom.getBomCode(), organizeCode, detail.getWorkCellCode()); //6.过滤出需要拉动的零件号 List partPullDetailPartNoList = workOrderPartList.stream().map(MesWorkOrderPart::getPartNo).collect(Collectors.toList()); @@ -178,7 +178,7 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS } mesPartPullOffline.setPullCode(partPull.getPullCode()); mesPartPullOffline.setCustPartNo(custPartNo); - mesPartPullOffline.setPartNo(erpPartNo); + mesPartPullOffline.setPartNo(productPartNo); mesPartPullOffline.setWorkCenterCode(partPull.getWorkCenterCode()); mesPartPullOffline.setOrganizeCode(organizeCode); ConvertBean.saveOrUpdate(mesPartPullOffline,"SPS-OFFLINE"); @@ -189,7 +189,7 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS detailOffline.setPid(mesPartPullOffline.getId()); detailOffline.setPullCode(partPull.getPullCode()); detailOffline.setCustPartNo(custPartNo); - detailOffline.setAssPartNo(erpPartNo); + detailOffline.setAssPartNo(productPartNo); detailOffline.setOrganizeCode(organizeCode); detailOffline.setPartNo(pullDetail.getPartNo()); detailOffline.setPartName(pullDetail.getPartName()); @@ -240,11 +240,11 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode); DdlPreparedPack.getStringEqualPack(partNo, "partNo", ddlPackBean); ddlPackBean.setOrderByStr(" order by createDatetime desc "); - MesProductVersion mesProductVersion = mesProductVersionRDao.getByProperty(ddlPackBean); - if (Objects.isNull(mesProductVersion)) { + List mesProductVersionList = mesProductVersionRDao.findByHqlTopWhere(ddlPackBean, 1); + if (Objects.isNull(mesProductVersionList) || mesProductVersionList.isEmpty()) { MesException.throwMesBusiException("物料【%s】对应的生产版本信息不存在", partNo); } - return mesProductVersion; + return mesProductVersionList.get(0); } private List dismantleBom(String partNo, double qty, String productTime, String bomCode, String organizeCode, String workCellCode) { From ae5acb76b1c1746d89a33ff81c12c618cbc6dd41 Mon Sep 17 00:00:00 2001 From: "castle.zang" Date: Thu, 14 Nov 2024 15:22:19 +0800 Subject: [PATCH 2/3] =?UTF-8?q?bom=E4=B8=8D=E7=94=9F=E6=95=88=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E5=8F=AA=E7=94=9F=E6=88=90=E5=B7=A5=E5=8D=95=E4=B8=8D?= =?UTF-8?q?=E7=94=9F=E4=BA=A7=E8=A3=85=E9=85=8D=E4=BB=B6=E5=8F=8A=E7=89=A9?= =?UTF-8?q?=E6=96=99=E6=B8=85=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mes/apiservice/serviceimpl/busi/MesCreateWorkOrderImpl.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) 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 042b131..0af1043 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 @@ -411,7 +411,7 @@ public class MesCreateWorkOrderImpl implements IMesCreateWorkOrder { String serialNo = resultList.get(0).replace("MES_WORK_ORDER_NO_WU_HAN", ""); String orderNoWuHan=organizeCode+mesWorkOrder.getOrderFlag()+sortInfo.getCustOrderCode()+mesWorkOrder.getShiftCode() + serialNo; mesWorkOrder.setWorkOrderNo(orderNoWuHan); - + List assemblyList = new ArrayList<>(); if (!workOrderPartList.isEmpty()) { for (MesWorkOrderPart orderPart : workOrderPartList) { orderPart.setOrganizeCode(organizeCode); @@ -419,8 +419,8 @@ public class MesCreateWorkOrderImpl implements IMesCreateWorkOrder { ConvertBean.saveOrUpdate(orderPart, "MES-JOB"); } workOrderPartRao.saveAll(workOrderPartList); + assemblyList = getAssemblyList(mesWorkOrder.getWorkCenterCode(), mesWorkOrder.getCarModelCode(), workOrderPartList, partProdGroup); } - List assemblyList = getAssemblyList(mesWorkOrder.getWorkCenterCode(), mesWorkOrder.getCarModelCode(), workOrderPartList, partProdGroup); // /** // * 生产序号 // * 工厂-产线-9位流水号,跳号10 @@ -672,6 +672,9 @@ public class MesCreateWorkOrderImpl implements IMesCreateWorkOrder { //2.根据bomList中的subPartNo 查询零件清单 partList List partNoList = bomList.stream().map(MesBom::getItemPartNo).distinct().collect(Collectors.toList()); + if (partNoList.isEmpty()) { + return new ArrayList<>(); + } DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(organizeCode); DdlPreparedPack.getInPackList(partNoList, "partNo", partPackBean); List partSapList = mesPartSapRao.findByHqlWhere(partPackBean); From f72dbdeef42e32d760912ccd2399d652bd551ee7 Mon Sep 17 00:00:00 2001 From: "castle.zang" Date: Thu, 14 Nov 2024 16:05:16 +0800 Subject: [PATCH 3/3] =?UTF-8?q?bom=E4=B8=8D=E7=94=9F=E6=95=88=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E5=8F=AA=E7=94=9F=E6=88=90=E5=B7=A5=E5=8D=95=E4=B8=8D?= =?UTF-8?q?=E7=94=9F=E4=BA=A7=E8=A3=85=E9=85=8D=E4=BB=B6=E5=8F=8A=E7=89=A9?= =?UTF-8?q?=E6=96=99=E6=B8=85=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/roundness/MesPackageRoundnessService.java | 8 ++++---- .../serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java | 13 ++++++++----- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java index 0ca8e34..29044cd 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/roundness/MesPackageRoundnessService.java @@ -186,13 +186,13 @@ public class MesPackageRoundnessService implements IRoundnessStrategy { } /** * 2024/11/14 - * 生产零件号用于拆分bom - * 零件号是erp零件号 + * 不带z的零件号是装配费 + * 零件号带z是erp零件号 生产零件号 */ - MesPartSap mesPart = this.getMesPart(mesPartProdGroupDetail.getPartNo(), partProdGroup.getOrganizeCode()); + MesPartSap mesPart = this.getMesPart(mesPartProdGroupDetail.getProductPartNo(), partProdGroup.getOrganizeCode()); if (mesPart == null) { - log.info("{}工厂没有,零件:{}信息", partProdGroup.getOrganizeCode(), mesPartProdGroupDetail.getPartNo()); + log.info("{}工厂没有,零件:{}信息", partProdGroup.getOrganizeCode(), mesPartProdGroupDetail.getProductPartNo()); return; } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java index a5c5049..a6caee2 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/MesSortRuleCfgOfflineServiceImpl.java @@ -80,7 +80,7 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS @Override public void doCreateSortRuleOffline(String custPartNo, String erpPartNo, String productPartNo, String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail) { - MesProductVersion mesProductVersion = getMesProductVersion(erpPartNo, organizeCode); + MesProductVersion mesProductVersion = getMesProductVersion(productPartNo, organizeCode); //4.总成零件号打散bom String bomVersion = mesProductVersion.getAlternativePartList(); MesBom bom = mesBomService.findBom(organizeCode, bomVersion, productPartNo); @@ -88,6 +88,9 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS return; } //5.5 获取客户零件号对应的车型配置 + /** + * 客户零件号 对应的 erp零件号 不带z + */ MesCustomerPart mesCustomerPart = getMesCustomerPart(custPartNo, erpPartNo, organizeCode); if (mesCustomerPart == null) { return; @@ -102,7 +105,7 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS } //5.6 获取零件信息 DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(organizeCode); - DdlPreparedPack.getStringEqualPack(erpPartNo,"partNo", partPackBean); + DdlPreparedPack.getStringEqualPack(productPartNo,"partNo", partPackBean); List partSapList = partSapRao.findByHqlWhere(partPackBean); //7.获取车型 @@ -147,10 +150,10 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS @Override public void doCreatePullOffline(String custPartNo, String erpPartNo,String productPartNo, String organizeCode, MesPartProdGroup mesPartProdGroup, MesPartProdGroupDetail detail, MesPartPull partPull, List pullDetailList) { - MesProductVersion mesProductVersion = getMesProductVersion(erpPartNo, organizeCode); + MesProductVersion mesProductVersion = getMesProductVersion(productPartNo, organizeCode); //4.总成零件号打散bom String bomVersion = mesProductVersion.getAlternativePartList(); - MesBom bom = mesBomService.findBom(organizeCode, bomVersion, erpPartNo); + MesBom bom = mesBomService.findBom(organizeCode, bomVersion, productPartNo); if (bom == null) { return; } @@ -161,7 +164,7 @@ public class MesSortRuleCfgOfflineServiceImpl implements IMesSortRuleCfgOfflineS } //5.6 获取零件信息 DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(organizeCode); - DdlPreparedPack.getStringEqualPack(erpPartNo,"partNo", partPackBean); + DdlPreparedPack.getStringEqualPack(productPartNo,"partNo", partPackBean); List partSapList = partSapRao.findByHqlWhere(partPackBean); //5.打散的bom 获取排序加工规则