diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/EntityLogConverterService.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/EntityLogConverterService.java index fef6e3a..8a8ae1f 100644 --- a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/EntityLogConverterService.java +++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/EntityLogConverterService.java @@ -100,96 +100,87 @@ public class EntityLogConverterService { List reportEntries = new ArrayList<>(); entityLog.getEntityLogEntry().forEach(entry -> { - var isSkipped = entry.getState() != EntryState.APPLIED && !(entry.getEntryType().equals(EntryType.HINT) || entry.getState().equals(EntryState.IGNORED)); - if (entry.getState() == EntryState.APPLIED || isSkipped) { + if (entry.getState().equals(EntryState.REMOVED)) { + return; + } - if (lastChangeIsRemoved(entry.getChanges())) { - return; - } + if (entry.getEntryType() == EntryType.HINT) { + return; + } + + if (entry.isExcluded()) { + return; + } - if (entry.isExcluded()) { - return; - } + if (entry.getEntryType() == EntryType.RECOMMENDATION) { + return; + } - if (entry.getEntryType() == EntryType.RECOMMENDATION) { - return; - } + if (entry.getEntryType() == EntryType.FALSE_POSITIVE) { + return; + } - if (entry.getEntryType() == EntryType.FALSE_POSITIVE) { - return; - } + if (!entry.getManualChanges().isEmpty() && (entry.getEntryType() == EntryType.IMAGE || entry.getEntryType() == EntryType.IMAGE_HINT) && entry.getManualChanges() + .get(entry.getManualChanges().size() - 1) + .getProcessedDate() == null && entry.getManualChanges() + .get(entry.getManualChanges().size() - 1) + .getManualRedactionType() + .equals(ManualRedactionType.RECATEGORIZE)) { + return; + } - if (settings.getMaxRedactionEntryValueLength() > 0 && entry.getValue() != null && entry.getValue().length() > settings.getMaxRedactionEntryValueLength()) { - entry.setValue(entry.getValue().substring(0, settings.getMaxRedactionEntryValueLength()) + "..."); - log.warn("Truncated value in dossier {}, file {} on pages {} to {} chars", - dossierId, - fileId, - entry.getPositions().stream().map(Position::getPageNumber).collect(Collectors.toList()), - settings.getMaxRedactionEntryValueLength()); - } + if (!entry.getManualChanges().isEmpty() && (entry.isDictionaryEntry() || entry.isDossierDictionaryEntry()) && entry.getManualChanges() + .get(entry.getManualChanges().size() - 1) + .getProcessedDate() == null && entry.getManualChanges() + .get(entry.getManualChanges().size() - 1) + .getManualRedactionType() + .equals(ManualRedactionType.ADD_TO_DICTIONARY)) { + return; + } - if (settings.getMaxSectionLength() > 0 && entry.getSection() != null && entry.getSection().length() > settings.getMaxSectionLength()) { - entry.setSection(entry.getSection().substring(0, settings.getMaxSectionLength()) + "..."); - log.warn("Truncated section in dossier {}, file {} on pages {} to {} chars", - dossierId, - fileId, - entry.getPositions().stream().map(Position::getPageNumber).collect(Collectors.toList()), - settings.getMaxSectionLength()); - } + if (settings.getMaxRedactionEntryValueLength() > 0 && entry.getValue() != null && entry.getValue().length() > settings.getMaxRedactionEntryValueLength()) { + entry.setValue(entry.getValue().substring(0, settings.getMaxRedactionEntryValueLength()) + "..."); + log.warn("Truncated value in dossier {}, file {} on pages {} to {} chars", + dossierId, + fileId, + entry.getPositions().stream().map(Position::getPageNumber).collect(Collectors.toList()), + settings.getMaxRedactionEntryValueLength()); + } - if (!entry.getManualChanges().isEmpty() && (entry.getEntryType() == EntryType.IMAGE || entry.getEntryType() == EntryType.IMAGE_HINT) && entry.getManualChanges() - .get(entry.getManualChanges().size() - 1) - .getProcessedDate() == null && entry.getManualChanges() - .get(entry.getManualChanges().size() - 1) - .getManualRedactionType() - .equals(ManualRedactionType.RECATEGORIZE)) { - return; - } + if (settings.getMaxSectionLength() > 0 && entry.getSection() != null && entry.getSection().length() > settings.getMaxSectionLength()) { + entry.setSection(entry.getSection().substring(0, settings.getMaxSectionLength()) + "..."); + log.warn("Truncated section in dossier {}, file {} on pages {} to {} chars", + dossierId, + fileId, + entry.getPositions().stream().map(Position::getPageNumber).collect(Collectors.toList()), + settings.getMaxSectionLength()); + } - if (!entry.getManualChanges().isEmpty() && (entry.isDictionaryEntry() || entry.isDossierDictionaryEntry()) && entry.getManualChanges() - .get(entry.getManualChanges().size() - 1) - .getProcessedDate() == null && entry.getManualChanges() - .get(entry.getManualChanges().size() - 1) - .getManualRedactionType() - .equals(ManualRedactionType.ADD_TO_DICTIONARY)) { - return; - } + Set pages = new HashSet<>(); + for (Position position : entry.getPositions()) { - if (!entry.getManualChanges().isEmpty() && entry.getEntryType().equals(EntryType.HINT) && entry.getManualChanges() - .get(entry.getManualChanges().size() - 1) - .getProcessedDate() == null && entry.getManualChanges() - .get(entry.getManualChanges().size() - 1) - .getManualRedactionType() - .equals(ManualRedactionType.FORCE_REDACT)) { - return; - } - - Set pages = new HashSet<>(); - for (Position position : entry.getPositions()) { - - if (pages.isEmpty() || !pages.contains(position.getPageNumber())) { - pages.add(position.getPageNumber()); - reportEntries.add(new ReportRedactionEntry(position.getPageNumber(), - position.x(), - position.y(), - getSection(entry, position), - checkTextForNull(entry.getLegalBasis()) + " " + legalBasisMappings.stream() - .filter(lbm -> lbm.getReason().equalsIgnoreCase(entry.getLegalBasis())) - .findAny() - .map(EntityLogLegalBasis::getDescription) - .orElse(""), - entry.getLegalBasis(), - legalBasisMappings.stream() - .filter(lbm -> lbm.getReason().equalsIgnoreCase(entry.getLegalBasis())) - .findAny() - .map(EntityLogLegalBasis::getDescription) - .orElse(""), - checkTextForNull(entry.getTextBefore()) + entry.getValue() + checkTextForNull(entry.getTextAfter()), - determineValue(entry), - mapOfEntityDisplayName.get(entry.getType()), - isSkipped)); - } + if (pages.isEmpty() || !pages.contains(position.getPageNumber())) { + pages.add(position.getPageNumber()); + reportEntries.add(new ReportRedactionEntry(position.getPageNumber(), + position.x(), + position.y(), + getSection(entry, position), + checkTextForNull(entry.getLegalBasis()) + " " + legalBasisMappings.stream() + .filter(lbm -> lbm.getReason().equalsIgnoreCase(entry.getLegalBasis())) + .findAny() + .map(EntityLogLegalBasis::getDescription) + .orElse(""), + entry.getLegalBasis(), + legalBasisMappings.stream() + .filter(lbm -> lbm.getReason().equalsIgnoreCase(entry.getLegalBasis())) + .findAny() + .map(EntityLogLegalBasis::getDescription) + .orElse(""), + checkTextForNull(entry.getTextBefore()) + entry.getValue() + checkTextForNull(entry.getTextAfter()), + determineValue(entry), + mapOfEntityDisplayName.get(entry.getType()), + entry.getState() == EntryState.SKIPPED || entry.getState() == EntryState.IGNORED)); } } });