From b40ceda0ebefdf7bbceec90afd702e633457e354 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Tue, 12 Aug 2025 18:07:23 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20bug-564=20=E4=BA=A7=E5=93=81=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=EF=BC=8C=E7=AE=A1=E7=90=86=E7=AB=AF=EF=BC=8C=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E8=B5=84=E6=96=99=E7=AE=A1=E7=90=86=E8=BF=99=E9=87=8C?= =?UTF-8?q?=EF=BC=8C=E8=AE=BE=E7=BD=AE=E9=BB=98=E8=AE=A4=E6=96=87=E4=BB=B6?= =?UTF-8?q?=EF=BC=8C=E8=AE=BE=E7=BD=AE=E9=94=99=E4=BA=86=EF=BC=8C=E6=83=B3?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E5=8F=96=E6=B6=88=E4=B8=8D=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProductModelFileItemServiceImpl.java | 11 ++++--- .../impl/ProductModelFileServiceImpl.java | 32 ++++++++----------- 2 files changed, 20 insertions(+), 23 deletions(-) diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileItemServiceImpl.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileItemServiceImpl.java index 6537d7e6..a68f4b3c 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileItemServiceImpl.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileItemServiceImpl.java @@ -14,6 +14,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -72,10 +73,12 @@ public class ProductModelFileItemServiceImpl extends ServiceImpl { - lambdaUpdate() - .set(ProductModelFileItem::getShowInList, true) - .eq(ProductModelFileItem::getId, item.getFileItemId()) - .update(); + if (Objects.nonNull(item.getFileItemId())) { + lambdaUpdate() + .set(ProductModelFileItem::getShowInList, true) + .eq(ProductModelFileItem::getId, item.getFileItemId()) + .update(); + } }); } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileServiceImpl.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileServiceImpl.java index 2b93511f..d9e342c8 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileServiceImpl.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileServiceImpl.java @@ -27,7 +27,6 @@ import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; -import java.util.Map; import java.util.Objects; import java.util.stream.Collectors; @@ -229,25 +228,20 @@ public class ProductModelFileServiceImpl extends ServiceImpl getDefaultConfig(Integer modelId) { - List languages = languageService.getAllLanguages(); -// List list = productModelFileItemService.lambdaQuery() -// .eq(ProductModelFileItem::getModelId, modelId) -// .orderByAsc(ProductModelFileItem::getLanguageCode) -// .orderByDesc(ProductModelFileItem::getShowInList) -// .list(); - List list =productModelFileItemService.getPublishedByLanguage(modelId); List vos=new ArrayList<>(); - Map> maps=list.stream().collect(Collectors.groupingBy(ProductModelFileItem::getLanguageCode)); - maps.forEach((languageCode,data)->{ - FileDefaultConfigVO vo=new FileDefaultConfigVO() - .setLanguageCode(languageCode) - .setLanguageName(languages.stream().filter(lang->lang.getCode().equals(languageCode)).findFirst().get().getName()) - .setItems(data.stream().map(item->new FileDefaultConfigItemVO() - .setId(item.getId()) - .setName(item.getName()) - .setSelected(item.getShowInList())) - .collect(Collectors.toList()) - ); + List languages = languageService.getLanguages(); + List list = productModelFileItemService.getPublishedByLanguage(modelId); + languages.forEach(language -> { + FileDefaultConfigVO vo = new FileDefaultConfigVO() + .setLanguageCode(language.getCode()) + .setLanguageName(language.getName()) + .setItems(list.stream().filter(item -> StrUtil.equals(language.getCode(), item.getLanguageCode())) + .map(item -> { + return new FileDefaultConfigItemVO() + .setId(item.getId()) + .setName(item.getName()) + .setSelected(item.getShowInList()); + }).collect(Collectors.toList())); vos.add(vo); }); return vos;