From 3143f8758771fb00f9ced794742045381cef2c29 Mon Sep 17 00:00:00 2001 From: Andrei Isvoran Date: Tue, 20 Feb 2024 14:33:31 +0100 Subject: [PATCH] RED-8588 - Fix ADD_TO_DICT --- .../service/EntityChangeLogService.java | 23 ----------------- .../service/EntityLogCreatorService.java | 25 ++----------------- .../EntityFromPrecursorCreationService.java | 1 - 3 files changed, 2 insertions(+), 47 deletions(-) diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityChangeLogService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityChangeLogService.java index 2d50d3f6..08b32ad1 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityChangeLogService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityChangeLogService.java @@ -56,35 +56,12 @@ public class EntityChangeLogService { ChangeType changeType = calculateChangeType(entityLogEntry.getState(), previousEntity.getState()); entityLogEntry.getChanges().add(new Change(analysisNumber, changeType, now)); } - - addManualChanges(entityLogEntry, previousEntity); } addRemovedEntriesAsRemoved(previousEntityLogEntries, newEntityLogEntries, manualRedactions, analysisNumber, now); return hasChanges; } - // If a manual change is present in the previous entity but not in the new entity, add it to the new one and - // sort them, so they are displayed in the correct order. - private void addManualChanges(EntityLogEntry entityLogEntry, EntityLogEntry previousEntity) { - - Comparator manualChangeComparator = - Comparator.comparing(ManualChange::getManualRedactionType) - .thenComparing(ManualChange::getRequestedDate); - - previousEntity.getManualChanges().forEach(manualChange -> { - boolean contains = entityLogEntry.getManualChanges() - .stream() - .anyMatch(existingChange -> manualChangeComparator.compare(existingChange, manualChange) == 0); - - if (!contains) { - entityLogEntry.getManualChanges().add(manualChange); - entityLogEntry.getManualChanges().sort(Comparator.comparing(ManualChange::getRequestedDate)); - } - }); - } - - private void addRemovedEntriesAsRemoved(List previousEntityLogEntries, List newEntityLogEntries, ManualRedactions manualRedactions, diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityLogCreatorService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityLogCreatorService.java index f630a968..aec0d4e0 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityLogCreatorService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityLogCreatorService.java @@ -137,22 +137,6 @@ public class EntityLogCreatorService { private List createEntityLogEntries(Document document, AnalyzeRequest analyzeRequest, List notFoundPrecursorEntries) { - Set dictionaryEntries; - Set dictionaryEntriesValues; - - if (analyzeRequest.getManualRedactions() != null && !analyzeRequest.getManualRedactions().getEntriesToAdd().isEmpty()) { - dictionaryEntries = analyzeRequest.getManualRedactions().getEntriesToAdd() - .stream() - .filter(e -> e.isAddToDictionary() || e.isAddToDossierDictionary()) - .collect(Collectors.toSet()); - dictionaryEntriesValues = dictionaryEntries.stream() - .map(ManualRedactionEntry::getValue) - .collect(Collectors.toSet()); - } else { - dictionaryEntriesValues = new HashSet<>(); - dictionaryEntries = new HashSet<>(); - } - String dossierTemplateId = analyzeRequest.getDossierTemplateId(); List entries = new ArrayList<>(); @@ -162,22 +146,17 @@ public class EntityLogCreatorService { .filter(entity -> !entity.getValue().isEmpty()) .filter(EntityLogCreatorService::notFalsePositiveOrFalseRecommendation) .filter(entity -> !entity.removed()) - .forEach(entityNode -> entries.addAll(toEntityLogEntries(entityNode, dictionaryEntries, dictionaryEntriesValues))); + .forEach(entityNode -> entries.addAll(toEntityLogEntries(entityNode))); document.streamAllImages().filter(entity -> !entity.removed()).forEach(imageNode -> entries.add(createEntityLogEntry(imageNode, dossierTemplateId))); notFoundPrecursorEntries.stream().filter(entity -> !entity.removed()).forEach(precursorEntity -> entries.add(createEntityLogEntry(precursorEntity, dossierTemplateId))); return entries; } - private List toEntityLogEntries(TextEntity textEntity, Set dictionaryEntries, Set dictionaryEntriesValues) { + private List toEntityLogEntries(TextEntity textEntity) { List entityLogEntries = new ArrayList<>(); - // Adding ADD_TO_DICTIONARY manual change to the entity's manual overwrite - if (dictionaryEntriesValues.contains(textEntity.getValue())) { - textEntity.getManualOverwrite().addChange(dictionaryEntries.stream().filter(entry -> entry.getValue().equals(textEntity.getValue())).findFirst().get()); - } - // split entity into multiple entries if it occurs on multiple pages, since FE can't handle multi page entities for (PositionOnPage positionOnPage : textEntity.getPositionsOnPagePerPage()) { diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/document/EntityFromPrecursorCreationService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/document/EntityFromPrecursorCreationService.java index faddf9bd..2a89ef5c 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/document/EntityFromPrecursorCreationService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/document/EntityFromPrecursorCreationService.java @@ -60,7 +60,6 @@ public class EntityFromPrecursorCreationService { .findFirst() .get() .getRequestDate()))) - .filter(manualRedactionEntry -> !(manualRedactionEntry.isAddToDictionary() || manualRedactionEntry.isAddToDossierDictionary())) .map(manualRedactionEntry -> PrecursorEntity.fromManualRedactionEntry(manualRedactionEntry, dictionaryService.isHint(manualRedactionEntry.getType(), dossierTemplateId))) .peek(manualEntity -> {