From 381d40c346bd34c472a2a235cb4e3d7ae487128a Mon Sep 17 00:00:00 2001 From: shahaibo <1023316923@qq.com> Date: Thu, 12 Oct 2023 15:35:55 +0800 Subject: [PATCH] =?UTF-8?q?BUGFIX:=20design=E5=AD=98sketchboard=E5=88=B0li?= =?UTF-8?q?brary;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../da/service/CollectionElementService.java | 1 + .../impl/CollectionElementServiceImpl.java | 32 +++++++++++++++++++ .../ai/da/service/impl/DesignServiceImpl.java | 2 +- 3 files changed, 34 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/ai/da/service/CollectionElementService.java b/src/main/java/com/ai/da/service/CollectionElementService.java index 8f41f3a0..22fd9dbd 100644 --- a/src/main/java/com/ai/da/service/CollectionElementService.java +++ b/src/main/java/com/ai/da/service/CollectionElementService.java @@ -59,6 +59,7 @@ public interface CollectionElementService extends IService { * @return */ Boolean saveLibraryByCollectionElement(List elements,String timeZone); + Boolean saveLibraryByCollectionElement(List elements,String timeZone, String modelSex); /** * 校验element * diff --git a/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java b/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java index 9fd46643..dfa64546 100644 --- a/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java @@ -240,6 +240,38 @@ public class CollectionElementServiceImpl extends ServiceImpl elements,String timeZone, String modelSex){ + if(CollectionUtils.isEmpty(elements)){ + return Boolean.TRUE; + } + //获取已存在相同的library + List md5List = elements.stream().map(CollectionElement::getMd5).collect(Collectors.toList()); + List existsLibrarys = libraryService.getByMD5List(md5List); + if(!CollectionUtils.isEmpty(existsLibrarys)){ + //去重 + List existsMd5Lists = existsLibrarys.stream().map(Library::getMd5).collect(Collectors.toList()); + elements = elements.stream().filter(element ->!existsMd5Lists.contains(element.getMd5())).collect(Collectors.toList()); + } + if(CollectionUtils.isEmpty(elements)){ + //都是重复的 + return Boolean.TRUE; + } + String name = DateUtil.dateToStr(new Date(),DateUtil.YYYY_MM_DD); + List libraryList = CopyUtil.copyList(elements, Library.class,(o,d) ->{ + if (d.getLevel1Type().equals(LibraryLevel1TypeEnum.SKETCH_BOARD.getRealName())) { + d.setLevel3Type(modelSex); + } + d.setCreateDate(DateUtil.getByTimeZone(timeZone)); + d.setName(name); + d.setId(null); + }); + if (!libraryService.saveBatch(libraryList)) { + throw new BusinessException("Batch saving failed !"); + } + return Boolean.TRUE; + } + private CollectionElement resolveData(String path, String timeZone,AuthPrincipalVo userInfo) { File file = new File(path); CollectionElement element = new CollectionElement(); diff --git a/src/main/java/com/ai/da/service/impl/DesignServiceImpl.java b/src/main/java/com/ai/da/service/impl/DesignServiceImpl.java index 53b1e8b4..0c8fe994 100644 --- a/src/main/java/com/ai/da/service/impl/DesignServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/DesignServiceImpl.java @@ -377,7 +377,7 @@ public class DesignServiceImpl extends ServiceImpl impleme if (!CollectionUtils.isEmpty(elementVO.getMarketingSketchElements())) { elements.addAll(elementVO.getMarketingSketchElements()); } - collectionElementService.saveLibraryByCollectionElement(elements, timeZone); + collectionElementService.saveLibraryByCollectionElement(elements, timeZone, elementVO.getModelSex()); } @Override