diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java index 2f6714c..6efddd4 100644 --- a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java +++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java @@ -94,8 +94,13 @@ public class WordReportGenerationService { for (DossierAttributeConfig attribute : dossierAttributesConfig.getDossierAttributeConfigs()) { if (dossierAttribute.getDossierAttributeId().equals(attribute.getId())) { if (attribute.getType().equals(DossierAttributeConfig.DossierAttributeType.IMAGE)) { - imagePlaceholders.add(new ImagePlaceholder(attribute.getPlaceholder(), Base64.getDecoder() - .decode(dossierAttribute.getValue()))); + + if(dossierAttribute.getValue().startsWith("data:")){ + imagePlaceholders.add(new ImagePlaceholder(attribute.getPlaceholder(), Base64.getDecoder() + .decode(dossierAttribute.getValue().split(",")[1]))); + } else { + imagePlaceholders.add(new ImagePlaceholder(attribute.getPlaceholder(), Base64.getDecoder().decode(dossierAttribute.getValue()))); + } } else { dossierAttributesPlaceholder.put(attribute.getPlaceholder(), dossierAttribute.getValue()); } diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java index 8fb7329..cb8aef0 100644 --- a/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java +++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java @@ -102,9 +102,10 @@ public class RedactionReportIntegrationTest { DossierAttributesConfig dossierAttributesConfig = new DossierAttributesConfig(Arrays.asList(new DossierAttributeConfig("id", "label", true, DossierAttributeConfig.DossierAttributeType.TEXT, "{{dossier.attribute.name}}"), new DossierAttributeConfig("id2", "label2", false, DossierAttributeConfig.DossierAttributeType.IMAGE, "{{dossier.attribute.image}}"))); when(dossierAttributesConfigClient.getDossierAttributes(dossierTemplateId)).thenReturn(dossierAttributesConfig); - DossierAttributes dossierAttributes = new DossierAttributes(Arrays.asList(new DossierAttribute("id", "Michael"), new DossierAttribute("id2", Base64 + DossierAttributes dossierAttributes = new DossierAttributes(Arrays.asList(new DossierAttribute("id", "Michael"), new DossierAttribute("id2","data:image/png;base64," + Base64 .getEncoder() .encodeToString(IOUtils.toByteArray(imageResource.getInputStream()))))); + when(dossierAttributesClient.getDossierAttributes("dossierId")).thenReturn(dossierAttributes); List fileAttributeConfigs = new ArrayList<>();