RED-7784 - Calculate positions and legalbasis for unprocessed redactions

This commit is contained in:
Andrei Isvoran 2023-11-20 13:45:49 +01:00
parent d42758b189
commit 522c514b1a
3 changed files with 26 additions and 12 deletions

View File

@ -25,6 +25,7 @@ public class UnprocessedManualEntity {
private int endOffset; private int endOffset;
private String closestHeadline; private String closestHeadline;
private String section; private String section;
private String legalBasis;
private float[] color; private float[] color;
private List<Integer> containingNodeId; private List<Integer> containingNodeId;
@Builder.Default @Builder.Default

View File

@ -61,22 +61,31 @@ public class UnprocessedChangesService {
.textAfter(textEntity.getTextAfter()) .textAfter(textEntity.getTextAfter())
.section(textEntity.getManualOverwrite().getSection().orElse(textEntity.getDeepestFullyContainingNode().toString())) .section(textEntity.getManualOverwrite().getSection().orElse(textEntity.getDeepestFullyContainingNode().toString()))
.positions(positions) .positions(positions)
.legalBasis(textEntity.legalBasis())
.build()); .build());
} }
}); });
notFoundManualEntities.forEach(manualEntity -> unprocessedManualEntities.add(UnprocessedManualEntity.builder() notFoundManualEntities.forEach(manualEntity -> {
.annotationId(manualEntity.getId()) unprocessedManualEntities.add(UnprocessedManualEntity.builder()
.color(getColor(manualEntity.getType(), dossierTemplateId, manualEntity.applied(), manualEntity.getEntityType().equals(EntityType.HINT))) .annotationId(manualEntity.getId())
.closestHeadline("") .color(getColor(manualEntity.getType(), dossierTemplateId, manualEntity.applied(), manualEntity.getEntityType().equals(EntityType.HINT)))
.startOffset(-1) .closestHeadline("")
.endOffset(-1) .startOffset(-1)
.containingNodeId(Collections.emptyList()) .endOffset(-1)
.textAfter("") .containingNodeId(Collections.emptyList())
.textBefore("") .textAfter("")
.section("") .textBefore("")
.build())); .section("")
.positions(manualEntity.getManualOverwrite()
.getPositions()
.orElse(manualEntity.getEntityPosition())
.stream()
.map(entityPosition -> new Position(entityPosition.rectangle2D(), entityPosition.pageNumber()))
.toList())
.build());
});
return unprocessedManualEntities; return unprocessedManualEntities;
} }

View File

@ -167,6 +167,10 @@ public class UnprocessedChangesServiceTest extends AbstractRedactionIntegrationT
assertEquals(unprocessedNotFoundManualEntity.getColor()[0], 0f); assertEquals(unprocessedNotFoundManualEntity.getColor()[0], 0f);
assertEquals(unprocessedNotFoundManualEntity.getColor()[1], 0f); assertEquals(unprocessedNotFoundManualEntity.getColor()[1], 0f);
assertEquals(unprocessedNotFoundManualEntity.getColor()[2], 0f); assertEquals(unprocessedNotFoundManualEntity.getColor()[2], 0f);
assertTrue(unprocessedNotFoundManualEntity.getPositions().isEmpty()); assertEquals(unprocessedNotFoundManualEntity.getPositions().get(0).getPageNumber(), 1);
assertEquals(unprocessedNotFoundManualEntity.getPositions().get(0).getRectangle()[0], 1f);
assertEquals(unprocessedNotFoundManualEntity.getPositions().get(0).getRectangle()[1], 1f);
assertEquals(unprocessedNotFoundManualEntity.getPositions().get(0).getRectangle()[2], 1f);
assertEquals(unprocessedNotFoundManualEntity.getPositions().get(0).getRectangle()[3], 1f);
} }
} }