From 4c7efaa05ae7c0881c57b81750957a1a8f52b8aa Mon Sep 17 00:00:00 2001 From: 10001392 <1055202292@qq.com> Date: Tue, 22 Oct 2024 13:32:48 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81PBOM=E5=BC=82=E5=B8=B8=E6=A3=80?= =?UTF-8?q?=E6=9F=A5=EF=BC=8CT=E9=A1=B9=E5=A4=84=E7=90=86=E5=92=8CEBOM?= =?UTF-8?q?=E4=B8=80=E8=87=B4=EF=BC=9B=202=E3=80=81PBOM=E5=AF=BC=E5=85=A5S?= =?UTF-8?q?AP=EF=BC=8C=E7=9B=B8=E5=90=8C=E7=89=A9=E6=96=99=E5=8F=B7?= =?UTF-8?q?=E4=B8=8D=E5=90=88=E5=B9=B6=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/BomNewPbomExportToSAPImpl.java | 35 +++++++++++-------- .../domain/EBom/CheckPBomException.java | 7 +++- 2 files changed, 26 insertions(+), 16 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomExportToSAPImpl.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomExportToSAPImpl.java index c726a44a..c38b8e3f 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomExportToSAPImpl.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomExportToSAPImpl.java @@ -301,21 +301,26 @@ public class BomNewPbomExportToSAPImpl implements IBomNewPbomExportToSAP { BomNewPbomParentEntity cp = getParent(it); if (Objects.equals(c.getVirtualPartType(), VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getValue())) { if (Objects.nonNull(cRowId)) { - T1ExtDTO cct = cmap.get(cRowId).stream() - .filter(ct -> (StrUtil.equals(ct.getPOSTP(), BomConstant.PROJECT_TYPE_TEMPORARY, true) && StrUtil.equals(ct.getPOTX1(), it.getMaterialDesc())) - || (!StrUtil.equals(ct.getPOSTP(), BomConstant.PROJECT_TYPE_TEMPORARY, true) && StrUtil.equals(ct.getIDNRK(), it.getMaterialNo()))) - .findFirst() - .orElse(null); - if (Objects.isNull(cct)) { - LOGGER.debug("{} 物料提层到顶级发货包 编号:{},父级编号:{},数量:{},描述:{}", TAG, it.getMaterialNo(), p.getMaterialNo(), it.getNum().toString(), it.getMaterialDesc()); - cct = convert(cp, it, p, false); - cmap.get(cRowId).add(cct); - addToT1(cct); - } else { - //合并计算数量 - cct.setMENGE(new BigDecimal(cct.getMENGE()).add(it.getNum()).toString()); - LOGGER.debug("{} 物料提层到顶级发货包且合并 编号:{},父级编号:{},数量:{},合并后总数:{},描述:{}", TAG, it.getMaterialNo(), p.getMaterialNo(), it.getNum().toString(), cct.getMENGE(), it.getMaterialDesc()); - } +// T1ExtDTO cct = cmap.get(cRowId).stream() +// .filter(ct -> (StrUtil.equals(ct.getPOSTP(), BomConstant.PROJECT_TYPE_TEMPORARY, true) && StrUtil.equals(ct.getPOTX1(), it.getMaterialDesc())) +// || (!StrUtil.equals(ct.getPOSTP(), BomConstant.PROJECT_TYPE_TEMPORARY, true) && StrUtil.equals(ct.getIDNRK(), it.getMaterialNo()))) +// .findFirst() +// .orElse(null); +// if (Objects.isNull(cct)) { +// LOGGER.debug("{} 物料提层到顶级发货包 编号:{},父级编号:{},数量:{},描述:{}", TAG, it.getMaterialNo(), p.getMaterialNo(), it.getNum().toString(), it.getMaterialDesc()); +// cct = convert(cp, it, p, false); +// cmap.get(cRowId).add(cct); +// addToT1(cct); +// } else { +// //合并计算数量 +// cct.setMENGE(new BigDecimal(cct.getMENGE()).add(it.getNum()).toString()); +// LOGGER.debug("{} 物料提层到顶级发货包且合并 编号:{},父级编号:{},数量:{},合并后总数:{},描述:{}", TAG, it.getMaterialNo(), p.getMaterialNo(), it.getNum().toString(), cct.getMENGE(), it.getMaterialDesc()); +// } + + // 20241022 by 10001392 物料提层,相同物料号不需要合并数量,几条物料号就传几条给SAP + T1ExtDTO cct = convert(cp, it, p, false); + cmap.get(cRowId).add(cct); + addToT1(cct); } // } else if (!Objects.equals(it.getVirtualPartType(), VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getValue())) { } else { diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/CheckPBomException.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/CheckPBomException.java index e09cc843..4e952def 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/CheckPBomException.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/CheckPBomException.java @@ -57,7 +57,11 @@ public class CheckPBomException { public void checkException() { for (BomNewPbomParentVO vo : allBomDetail) { vo.setExceptionStatus(EBomExceptionStatusEnum.OK.getValue()); - + if (StrUtil.equals(BomConstant.PROJECT_TYPE_TEMPORARY, vo.getProjectType(), true)) { + if (StrUtil.isBlank(vo.getMaterialDesc())) { + vo.setExceptionStatus(EBomExceptionStatusEnum.EXCEPT_NO_4.getValue()); + } + } else { if (StrUtil.isNotBlank(vo.getMaterialNo()) && (MaterialGetEnum.MaterialStateEnum.STATE_NO_4.equalsValue(vo.getMaterialState()) || MaterialGetEnum.MaterialStateEnum.STATE_NO_5.equalsValue(vo.getMaterialState()))) { @@ -67,6 +71,7 @@ public class CheckPBomException { vo.setExceptionStatus(EBomExceptionStatusEnum.EXCEPT_NO_7.getValue()); } } + } initExceptionYellowWarn(); }