From b8202d9e96b9186c9a4b110aecea3b7be6cc78f1 Mon Sep 17 00:00:00 2001 From: Andrei Isvoran Date: Mon, 20 Nov 2023 16:02:34 +0100 Subject: [PATCH] RED-7784 - Apply correct value in reports for resized redactions --- .../service/EntityLogConverterService.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) 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 d737833..2d39f6e 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 @@ -21,6 +21,8 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntityLogLegalBasis; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntryState; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntryType; +import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.ManualChange; +import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.ManualRedactionType; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.Position; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.type.Type; import com.iqser.red.service.redaction.report.v1.server.client.DictionaryClient; @@ -136,7 +138,7 @@ public class EntityLogConverterService { .map(EntityLogLegalBasis::getDescription) .orElse(""), checkTextForNull(entry.getTextBefore()) + entry.getValue() + checkTextForNull(entry.getTextAfter()), - entry.getValue(), + determineValue(entry), mapOfEntityDisplayName.get(entry.getType()), isSkipped)); } @@ -158,6 +160,18 @@ public class EntityLogConverterService { return reportEntries; } + private String determineValue(EntityLogEntry entry) { + + if (entry.getManualChanges() != null && !entry.getManualChanges().isEmpty()) { + ManualChange lastChange = entry.getManualChanges().get(entry.getManualChanges().size() - 1); + if (lastChange.getManualRedactionType().equals(ManualRedactionType.RESIZE)) { + return lastChange.getPropertyChanges().get("value"); + } + } + + return entry.getValue(); + } + private String getSection(EntityLogEntry entry, Position position) {