diff --git a/laws-modules/src/main/java/com/jero/modules/laws/documenttool/service/impl/DocumentSplitServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/documenttool/service/impl/DocumentSplitServiceImpl.java index 172c7558..9754dd8e 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/documenttool/service/impl/DocumentSplitServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/documenttool/service/impl/DocumentSplitServiceImpl.java @@ -592,7 +592,7 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService { StringBuilder strSelectCondition = new StringBuilder(selectCondition); // 查询数据 List> listMap = documentSplitMapper.queryDocumentSplitDetail(selectColumn, strSelectCondition.toString()); - // 排序 + // 排序(根据条文号) listMap.sort(new DirectoryComparator()); // 第一条数据 Map firstData = listMap.get(0); @@ -612,9 +612,16 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService { lawsDocumentSplitMapper.deleteBatchIds(otherIds); // 目录更新 - List menuIdList = listMap.stream().map(v -> (String) v.get(MENU_ID)).distinct().collect(Collectors.toList()); - // 删除旧数据 - documentSplitMapper.sarFileSplitMenuDeleteByIdList(menuIdList); + List menuIdList = listMap.stream() + .filter(v -> !Objects.equals(v.get(MENU_ID), firstData.get(MENU_ID))) + .map(v -> (String) v.get(MENU_ID)) + .distinct() + .collect(Collectors.toList()); + + if (!menuIdList.isEmpty()){ + // 删除旧数据 + documentSplitMapper.sarFileSplitMenuDeleteByIdList(menuIdList); + } // 修改条目 ArrayList sarFileSplitItemsValEOSList = new ArrayList<>();