From 68a224ffae48a3b75a6b15d2027316ee4e3cad39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Mon, 13 Jan 2025 10:55:57 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=88=90=E6=9C=AC=E5=88=86=E6=9E=90):=20?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BF=9D=E5=AD=98=E4=BB=B7=E6=A0=BC=E7=9A=84?= =?UTF-8?q?=E4=B8=80=E4=B8=AA=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../technology/service/BomCostService.java | 17 ++++++++++------- .../src/test/java/StringUtilTest.java | 6 +++--- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/nflg_project_dev/nflg-technology/src/main/java/com/nflg/product/technology/service/BomCostService.java b/nflg_project_dev/nflg-technology/src/main/java/com/nflg/product/technology/service/BomCostService.java index d1420ffd..8a9c3ddf 100644 --- a/nflg_project_dev/nflg-technology/src/main/java/com/nflg/product/technology/service/BomCostService.java +++ b/nflg_project_dev/nflg-technology/src/main/java/com/nflg/product/technology/service/BomCostService.java @@ -41,11 +41,11 @@ public class BomCostService extends ServiceImpl { List forDelete = new ArrayList<>(); datas.forEach(d -> { BomCostEntity entity = latest.stream().filter(l -> StrUtil.equals(l.getMaterialNo(), d.getMaterialNo())).findFirst().orElse(null); - if (Objects.isNull(entity)) { - forAdd.add(convert(d)); - } else if (!StringUtil.inSameInterval(entity.getVersion(), LocalDateTime.now().format(FORMATTER))) { + if (Objects.nonNull(entity) && StringUtil.inSameInterval(entity.getVersion(), LocalDateTime.now().format(FORMATTER))) { forDelete.add(entity.getId()); forAdd.add(convert(d)); + } else { + forAdd.add(convert(d)); } }); if (CollectionUtil.isNotEmpty(forAdd)) { @@ -84,20 +84,23 @@ public class BomCostService extends ServiceImpl { public List getInfo(List query) { List datas = new ArrayList<>(MapUtil.calculateInitialCapacity(query.size())); query.forEach(q -> { + BomCostEntity entity; if (StrUtil.isBlank(q.getVersion())) { - BomCostEntity entity = lambdaQuery() + entity = lambdaQuery() .eq(BomCostEntity::getMaterialNo, q.getMaterialNo()) .orderByDesc(BomCostEntity::getVersion) .one(); if (Objects.nonNull(entity)) { entity.setVersion(""); - datas.add(entity); } } else { - datas.add(lambdaQuery() + entity = lambdaQuery() .eq(BomCostEntity::getMaterialNo, q.getMaterialNo()) .eq(BomCostEntity::getVersion, q.getVersion()) - .one()); + .one(); + } + if (Objects.nonNull(entity)) { + datas.add(entity); } }); return datas; diff --git a/nflg_project_dev/nflg-technology/src/test/java/StringUtilTest.java b/nflg_project_dev/nflg-technology/src/test/java/StringUtilTest.java index 9646835b..441c92c9 100644 --- a/nflg_project_dev/nflg-technology/src/test/java/StringUtilTest.java +++ b/nflg_project_dev/nflg-technology/src/test/java/StringUtilTest.java @@ -34,8 +34,8 @@ public class StringUtilTest { @Test public void test5() { - String v1 = "20240521"; - String v2 = "20240531"; - Assertions.assertTrue(StringUtil.inSameInterval(v1, v2)); + String v1 = "20240106"; + String v2 = "20250110"; + Assertions.assertFalse(StringUtil.inSameInterval(v1, v2)); } }