diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/SearchableText.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/SearchableText.java index 8652bf57..4313cb17 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/SearchableText.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/SearchableText.java @@ -136,9 +136,11 @@ public class SearchableText { private List buildEntityPositionSequence(List crossSequenceParts) { - String id = IdBuilder.buildId(crossSequenceParts); + String plainId = IdBuilder.buildId(crossSequenceParts); + String id = plainId; List result = new ArrayList<>(); int currentPage = -1; + int idDiffentPageSuffix = 1; EntityPositionSequence entityPositionSequence = new EntityPositionSequence(id); for (TextPositionSequence textPositionSequence : crossSequenceParts) { if (currentPage == -1) { @@ -148,9 +150,13 @@ public class SearchableText { } else if (currentPage == textPositionSequence.getPage()) { entityPositionSequence.getSequences().add(textPositionSequence); } else { + id = plainId + "-" + idDiffentPageSuffix; + idDiffentPageSuffix++; result.add(entityPositionSequence); entityPositionSequence = new EntityPositionSequence(id); entityPositionSequence.setPageNumber(textPositionSequence.getPage()); + entityPositionSequence.getSequences().add(textPositionSequence); + currentPage = textPositionSequence.getPage(); } } result.add(entityPositionSequence);