From 3ace7d18fcc751628c221cc3a4db1366d93b60a9 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Sat, 14 Sep 2024 16:33:57 +0800 Subject: [PATCH 1/5] =?UTF-8?q?update=20=E6=8B=86=E5=88=86=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E7=BC=96=E8=BE=91=20=E7=9B=AE=E5=BD=95=E5=BE=80?= =?UTF-8?q?=E6=8B=96=E5=8A=A8=E5=90=8E=E5=8F=B3=E4=BE=A7=E5=86=85=E5=AE=B9?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=E6=B2=A1=E6=9C=89=E4=B8=80=E8=B5=B7=E6=9B=B4?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/SarFileSplitMenuEOMapper.java | 2 +- .../mapper/xml/SarFileSplitMenuEOMapper.xml | 4 +- .../impl/SarFileSplitMenuEOServiceImpl.java | 70 +++++++------------ 3 files changed, 28 insertions(+), 48 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/split/mapper/SarFileSplitMenuEOMapper.java b/laws-modules/src/main/java/com/jero/modules/split/mapper/SarFileSplitMenuEOMapper.java index 9b509d04..e302fecf 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/mapper/SarFileSplitMenuEOMapper.java +++ b/laws-modules/src/main/java/com/jero/modules/split/mapper/SarFileSplitMenuEOMapper.java @@ -74,7 +74,7 @@ public interface SarFileSplitMenuEOMapper extends BaseMapper SarFileSplitMenuEO findById(String id); - List findLastByParentId(@Param("parentId") String parentId, @Param("displaySeq") Long displaySeq); + List findLastByParentId(@Param("parentId") String parentId, @Param("displaySeq") Long displaySeq, @Param("sourceIdList") List sourceIdList); List queryByGTDisplaySeq(@Param("infoId") String infoId, @Param("displaySeq") Long displaySeq); diff --git a/laws-modules/src/main/java/com/jero/modules/split/mapper/xml/SarFileSplitMenuEOMapper.xml b/laws-modules/src/main/java/com/jero/modules/split/mapper/xml/SarFileSplitMenuEOMapper.xml index 85827283..c9ffbff0 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/mapper/xml/SarFileSplitMenuEOMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/split/mapper/xml/SarFileSplitMenuEOMapper.xml @@ -378,7 +378,9 @@ and display_seq > #{displaySeq} - + + #{item} + order by display_seq diff --git a/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java index b7955d48..4e31bfa1 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java @@ -377,54 +377,32 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl sourceIdList = Arrays.asList(sourceIds.split(",")); + // 获取要移动到的层级的最后一个 的排序值 + List lastMenuList = getLastMenu(parentMenu.getId(),displaySeq,sourceIdList); - List lastMenuList; - //是否是放到最后 - boolean equals = Objects.equals(menuDisplaySeq, displaySeq); - if (equals){ - // 获取要移动到的层级的最后一个 的排序值 - lastMenuList = getLastMenu(parentMenu.getId(),null); - int size = lastMenuList.size(); - for (int i = 0; i < size; i++) { - SarFileSplitMenuEO sarFileSplitMenuEO = lastMenuList.get(i); - sarFileSplitMenuEO.setDisplaySeq(menuDisplaySeq+i+1); - baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO); - } - if(displaySeq == 0){ - displaySeq = menuDisplaySeq; - } - for (int i = 0; i < sourceIdList.size(); i++) { - String sourceId = sourceIdList.get(i); - // 要移动的节点信息 - SarFileSplitMenuEO sarFileSplitMenuEO = baseMapper.findById(sourceId); - sarFileSplitMenuEO.setParentId(parentId); - sarFileSplitMenuEO.setDisplaySeq(displaySeq+size+i+1); - baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO); - } - }else { - // 获取要移动到的层级的最后一个 的排序值 - lastMenuList = getLastMenu(parentMenu.getId(),displaySeq); - int size = sourceIdList.size(); - for (SarFileSplitMenuEO sarFileSplitMenuEO : lastMenuList) { - Long displaySeq1 = sarFileSplitMenuEO.getDisplaySeq(); - sarFileSplitMenuEO.setDisplaySeq(displaySeq1+size); - baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO); - } - if(displaySeq == 0){ - displaySeq = parentMenu.getDisplaySeq(); - } - for (int i = 0; i < sourceIdList.size(); i++) { - String sourceId = sourceIdList.get(i); - // 要移动的节点信息 - SarFileSplitMenuEO sarFileSplitMenuEO = baseMapper.findById(sourceId); - sarFileSplitMenuEO.setParentId(parentId); - sarFileSplitMenuEO.setDisplaySeq(displaySeq+i+1); - baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO); - } + if(displaySeq == 0){ + displaySeq = parentMenu.getDisplaySeq(); } + // 要移动的节点所有子集(包括本身) + List sarFileSplitMenuEO1List = new ArrayList<>(); + for (int i = 0; i < sourceIdList.size(); i++) { + String sourceId = sourceIdList.get(i); + // 要移动的节点信息 + SarFileSplitMenuEO sarFileSplitMenuEO = baseMapper.findById(sourceId); + sarFileSplitMenuEO.setParentId(parentId); + sarFileSplitMenuEO1List.add(sarFileSplitMenuEO); + } + sarFileSplitMenuEO1List.addAll(lastMenuList); + List allList = new ArrayList<>(); + getChildren(allList, sarFileSplitMenuEO1List); + + for (int i = 0; i < allList.size(); i++) { + SarFileSplitMenuEO sarFileSplitMenuEO = allList.get(i); + sarFileSplitMenuEO.setDisplaySeq(displaySeq+i+1); + baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO); + } //this.updateBatchById(updateList); // 要移动的节点所有子集(包括本身) @@ -472,8 +450,8 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl getLastMenu(String parentId, Long displaySeq) { - List lastByParentId = baseMapper.findLastByParentId(parentId, displaySeq); + public List getLastMenu(String parentId, Long displaySeq, List sourceIdList) { + List lastByParentId = baseMapper.findLastByParentId(parentId, displaySeq,sourceIdList); //if(sarFileSplitMenuEO1 != null){ // getLastMenu(sarFileSplitMenuEO1.getId()); //} From c7c87c7449605975915a08b0785f1b7018fdc39c Mon Sep 17 00:00:00 2001 From: lijiarao Date: Sat, 14 Sep 2024 17:15:23 +0800 Subject: [PATCH 2/5] =?UTF-8?q?update=20=E6=8B=86=E5=88=86=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E7=BC=96=E8=BE=91=20=E7=9B=AE=E5=BD=95=E4=B8=8D?= =?UTF-8?q?=E8=83=BD=E6=8B=96=E5=8A=A8=E5=88=B0=E4=B8=8A=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/SarFileSplitMenuEOServiceImpl.java | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java index 4e31bfa1..abbfa5ce 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java @@ -1,5 +1,6 @@ package com.jero.modules.split.service.impl; +import cn.hutool.core.collection.CollStreamUtil; import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -386,17 +387,19 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl sarFileSplitMenuEO1List = new ArrayList<>(); + List idList = new ArrayList<>(); for (int i = 0; i < sourceIdList.size(); i++) { String sourceId = sourceIdList.get(i); // 要移动的节点信息 SarFileSplitMenuEO sarFileSplitMenuEO = baseMapper.findById(sourceId); sarFileSplitMenuEO.setParentId(parentId); sarFileSplitMenuEO1List.add(sarFileSplitMenuEO); - + idList.add(sourceId); } - sarFileSplitMenuEO1List.addAll(lastMenuList); List allList = new ArrayList<>(); getChildren(allList, sarFileSplitMenuEO1List); + //排除 + getChildren(allList, lastMenuList); for (int i = 0; i < allList.size(); i++) { SarFileSplitMenuEO sarFileSplitMenuEO = allList.get(i); @@ -442,10 +445,15 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl allList, List sarFileSplitMenuEOList) { for (SarFileSplitMenuEO sarFileSplitMenuEO : sarFileSplitMenuEOList) { + String id = sarFileSplitMenuEO.getId(); + List idList = CollStreamUtil.toList(allList, SarFileSplitMenuEO::getId); + if (idList.contains(id)){ + continue; + } allList.add(sarFileSplitMenuEO); - List childrenList = baseMapper.findByParentId(sarFileSplitMenuEO.getId()); - if (CollectionUtils.isNotEmpty(childrenList)){ - getChildren(allList, childrenList); + List childrenList = baseMapper.findByParentId(id); + if (CollectionUtils.ist, cisNotEmpty(childrenList)){ + getChildren(allLhildrenList); } } } From 5df6b96be030dccaff0fff9b243fd2a16f58fe9c Mon Sep 17 00:00:00 2001 From: lijiarao Date: Sat, 14 Sep 2024 17:20:21 +0800 Subject: [PATCH 3/5] =?UTF-8?q?update=20=E6=8B=86=E5=88=86=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E7=BC=96=E8=BE=91=20=E7=9B=AE=E5=BD=95=E4=B8=8D?= =?UTF-8?q?=E8=83=BD=E6=8B=96=E5=8A=A8=E5=88=B0=E4=B8=8A=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../split/service/impl/SarFileSplitMenuEOServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java index abbfa5ce..cf97149a 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/split/service/impl/SarFileSplitMenuEOServiceImpl.java @@ -452,8 +452,8 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl childrenList = baseMapper.findByParentId(id); - if (CollectionUtils.ist, cisNotEmpty(childrenList)){ - getChildren(allLhildrenList); + if (CollectionUtils.isNotEmpty(childrenList)){ + getChildren(allList, childrenList); } } } From 990b2867f40198f01a1f84b29676953d7c12512c Mon Sep 17 00:00:00 2001 From: lijiarao Date: Wed, 18 Sep 2024 09:37:10 +0800 Subject: [PATCH 4/5] =?UTF-8?q?update=20=E6=8B=86=E5=88=86=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E7=BC=96=E8=BE=91=20=E7=9B=AE=E5=BD=95=E6=8B=96?= =?UTF-8?q?=E5=8A=A8=E5=90=8E=E5=88=B0=E5=8F=B3=E4=BE=A7=E6=9D=A1=E6=AC=BE?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FileSplitItemsEOServiceImpl.java | 5 ++++- .../impl/SarFileSplitMenuEOServiceImpl.java | 14 +++++++------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java index 7606c490..6546c929 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java @@ -2269,6 +2269,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl sourceIdList = Arrays.asList(sourceIds.split(",")); // 获取要移动到的层级的最后一个 的排序值 List lastMenuList = getLastMenu(parentMenu.getId(),displaySeq,sourceIdList); - - if(displaySeq == 0){ - displaySeq = parentMenu.getDisplaySeq(); + if (CollectionUtil.isNotEmpty(lastMenuList)){ + displaySeq = lastMenuList.stream().map(SarFileSplitMenuEO::getDisplaySeq).min(Comparator.comparing(x -> x)).orElse(null); } // 要移动的节点所有子集(包括本身) List sarFileSplitMenuEO1List = new ArrayList<>(); - List idList = new ArrayList<>(); - for (int i = 0; i < sourceIdList.size(); i++) { - String sourceId = sourceIdList.get(i); + for (String sourceId : sourceIdList) { // 要移动的节点信息 SarFileSplitMenuEO sarFileSplitMenuEO = baseMapper.findById(sourceId); sarFileSplitMenuEO.setParentId(parentId); sarFileSplitMenuEO1List.add(sarFileSplitMenuEO); - idList.add(sourceId); } List allList = new ArrayList<>(); getChildren(allList, sarFileSplitMenuEO1List); + //for (SarFileSplitMenuEO splitMenuEO : allList) { + // splitMenuEO.setParentId(parentId); + //} //排除 getChildren(allList, lastMenuList); From 057fd743d4f8a8c67dcc13db062a30c5afa04b06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= Date: Wed, 18 Sep 2024 09:45:06 +0800 Subject: [PATCH 5/5] fix:89974 --- .../home/service/impl/LawsHomeSearchServiceImpl.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeSearchServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeSearchServiceImpl.java index a4b4b93c..7aed79df 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeSearchServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeSearchServiceImpl.java @@ -1533,8 +1533,13 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { data.put("release_date", new SimpleDateFormat(YYYY_MM_DD).format(releaseDate)); } if (!Objects.isNull(data.get("implementation_date"))){ - Date implementationDate = (Date) data.get("implementation_date"); - data.put("implementation_date", new SimpleDateFormat(YYYY_MM_DD).format(implementationDate)); + try{ + Date implementationDate = (Date) data.get("implementation_date"); + data.put("implementation_date", new SimpleDateFormat(YYYY_MM_DD).format(implementationDate)); + }catch (Exception e){ + String implementationDate = data.get("implementation_date").toString(); + data.put("implementation_date", implementationDate); + } } } return Result.OK(advancedSearchAll);