From 422a388d0e6ad8402c9642282240e03b735bb4a4 Mon Sep 17 00:00:00 2001 From: 10001392 <1055202292@qq.com> Date: Fri, 2 Aug 2024 17:50:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=98=E6=9B=B4=E9=80=9A=E7=9F=A5=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/BomNewNoticeNumDetail2Entity.java | 14 +++++++++++ .../service/BomNewEbomParentService.java | 23 +++++++++++++++++-- .../service/BomNewPbomParentService.java | 23 +++++++++++++++++-- 3 files changed, 56 insertions(+), 4 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewNoticeNumDetail2Entity.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewNoticeNumDetail2Entity.java index 4aa58a11..f964022a 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewNoticeNumDetail2Entity.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewNoticeNumDetail2Entity.java @@ -43,6 +43,13 @@ public class BomNewNoticeNumDetail2Entity implements Serializable { @ApiModelProperty(value = "父级编码") private String parentMaterialNo; + /** + * 父级描述 + */ + @TableField(value = "parent_material_desc") + @ApiModelProperty(value = "父级描述") + private String parentMaterialDesc; + /** * BOM行编号 */ @@ -58,6 +65,13 @@ public class BomNewNoticeNumDetail2Entity implements Serializable { @ApiModelProperty(value = "物料编码") private String materialNo; + /** + * 物料描述 + */ + @TableField(value = "material_desc") + @ApiModelProperty(value = "物料描述") + private String materialDesc; + /** * 变更内容 1=BOM物料增加 2=BOM物料减少 3=BOM物料替换 4=BOM物料数量变更 5=BOM项目类别变更 */ diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java index c20b4e85..088c733c 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java @@ -3093,8 +3093,10 @@ public class BomNewEbomParentService extends ServiceImpl" + newestChild.getNum()); noticeNumDetailEntity2List.add(saveDetail2); @@ -3206,14 +3214,25 @@ public class BomNewEbomParentService extends ServiceImpl" + newestChild.getProjectType()); noticeNumDetailEntity2List.add(saveDetail2); } - BomNewEbomParentFormalEntity newestP = bomNewEbomParentFormalService.lambdaQuery().eq(BomNewEbomParentFormalEntity::getRowId, newestChild.getBomVersionRowId()).one(); - BomNewEbomParentFormalEntity lastP = bomNewEbomParentFormalService.lambdaQuery().eq(BomNewEbomParentFormalEntity::getRowId, lastChild.getBomVersionRowId()).one(); + } + // 有下级的 + List parentList = this.lambdaQuery().in(BomNewEbomParentEntity::getMaterialNo, intersection).list(); + for (BomNewEbomParentEntity parent: parentList) { + List versionList = bomNewEbomParentFormalService.lambdaQuery().eq(BomNewEbomParentFormalEntity::getMaterialNo, parent.getMaterialNo()).orderByDesc(BomNewEbomParentFormalEntity::getRowId).list(); + // 只有一个版本,说明没变更,跳过 + if (versionList.size() == 1) { + continue; + } + BomNewEbomParentFormalEntity newestP = versionList.get(0); // 最新版 + BomNewEbomParentFormalEntity lastP = versionList.get(1); // 上一版本 buildNoticeNumDetailList(noticeNumRowId, noticeNumDetailEntityList, noticeNumDetailEntity2List, newestP, lastP); } } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java index 205cc6bd..1304097a 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java @@ -1656,8 +1656,10 @@ public class BomNewPbomParentService extends ServiceImpl" + newestChild.getNum()); noticeNumDetailEntity2List.add(saveDetail2); @@ -1769,14 +1777,25 @@ public class BomNewPbomParentService extends ServiceImpl" + newestChild.getProjectType()); noticeNumDetailEntity2List.add(saveDetail2); } - BomNewPbomParentFormalEntity newestP = bomNewPbomParentFormalService.lambdaQuery().eq(BomNewPbomParentFormalEntity::getRowId, newestChild.getBomVersionRowId()).one(); - BomNewPbomParentFormalEntity lastP = bomNewPbomParentFormalService.lambdaQuery().eq(BomNewPbomParentFormalEntity::getRowId, lastChild.getBomVersionRowId()).one(); + } + // 有下级的 + List parentList = this.lambdaQuery().in(BomNewPbomParentEntity::getMaterialNo, intersection).list(); + for (BomNewPbomParentEntity parent: parentList) { + List versionList = bomNewPbomParentFormalService.lambdaQuery().eq(BomNewPbomParentFormalEntity::getMaterialNo, parent.getMaterialNo()).orderByDesc(BomNewPbomParentFormalEntity::getRowId).list(); + // 只有一个版本,说明没变更,跳过 + if (versionList.size() == 1) { + continue; + } + BomNewPbomParentFormalEntity newestP = versionList.get(0); // 最新版 + BomNewPbomParentFormalEntity lastP = versionList.get(1); // 上一版本 buildNoticeNumDetailList(noticeNumRowId, noticeNumDetailEntityList, noticeNumDetailEntity2List, newestP, lastP); } }