diff --git a/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSpiltService.java b/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSpiltService.java index 960f3bd1..547dc6f8 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSpiltService.java +++ b/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSpiltService.java @@ -191,7 +191,7 @@ public class FileSpiltService { //获得序号标题和无标题序号 TitleNumberVO titleNumberVO = AsposeUtil.getNumber(inputStream1); //TitleNumberVO titleNumberVO = new TitleNumberVO(); - Map titleNumberMap = titleNumberVO.getTitleNumberMap(); + Map> titleNumberMap = titleNumberVO.getTitleNumberMap(); List emptyTitleList = titleNumberVO.getEmptyTitleList(); // 记录拆分后的每一段文字 List elements = doc.getBodyElements(); @@ -359,8 +359,11 @@ public class FileSpiltService { emptyTitleList.remove(0); }else if (StringUtils.isNotBlank(paragraphString) && titleNumberMap.containsKey(paragraphString)){ replaceNumberFlag = true; - replaceNumber = titleNumberMap.get(paragraphString); + List stringList = titleNumberMap.get(paragraphString); + replaceNumber = stringList.get(0); + //replaceNumber = titleNumberMap.get(paragraphString); paragraphString = replaceNumber + paragraphString; + stringList.remove(0); } String startDigit; if (replaceNumberFlag){ diff --git a/laws-modules/src/main/java/com/jero/modules/split/util/AsposeUtil.java b/laws-modules/src/main/java/com/jero/modules/split/util/AsposeUtil.java index 35a44852..14ff9fc3 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/util/AsposeUtil.java +++ b/laws-modules/src/main/java/com/jero/modules/split/util/AsposeUtil.java @@ -22,7 +22,7 @@ public class AsposeUtil { */ public static TitleNumberVO getNumber(InputStream is) { TitleNumberVO titleNumberVO = new TitleNumberVO(); - Map titleNumberMap = new HashMap<>(); + Map> titleNumberMap = new HashMap<>(); List emptyTitleList = new ArrayList<>(); try { Document doc = new Document(is); @@ -59,7 +59,14 @@ public class AsposeUtil { System.out.println("Text:" + labelString + text); if (StringUtils.isNotBlank(text)) { - titleNumberMap.put(text, labelString); + if (titleNumberMap.containsKey(text)) { + List strings = titleNumberMap.get(text); + strings.add(labelString); + }else { + List strings = new ArrayList<>(); + strings.add(labelString); + titleNumberMap.put(text, strings); + } } else { emptyTitleList.add(labelString); } diff --git a/laws-modules/src/main/java/com/jero/modules/split/vo/TitleNumberVO.java b/laws-modules/src/main/java/com/jero/modules/split/vo/TitleNumberVO.java index ad812d69..c3979370 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/vo/TitleNumberVO.java +++ b/laws-modules/src/main/java/com/jero/modules/split/vo/TitleNumberVO.java @@ -11,6 +11,6 @@ import java.util.Map; */ @Data public class TitleNumberVO { - private Map titleNumberMap; + private Map> titleNumberMap; private List emptyTitleList; }