From ca12d7ec717479a7a64ec3248a94219312c501f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominique=20Eifl=C3=A4nder?= Date: Wed, 25 Aug 2021 15:51:57 +0200 Subject: [PATCH] Fixed report placeholder replacement --- .../ExcelTemplateReportGenerationService.java | 24 ++++++++++++------- .../service/WordReportGenerationService.java | 6 ++++- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/ExcelTemplateReportGenerationService.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/ExcelTemplateReportGenerationService.java index 19c5114..a2a568d 100644 --- a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/ExcelTemplateReportGenerationService.java +++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/ExcelTemplateReportGenerationService.java @@ -76,25 +76,31 @@ public class ExcelTemplateReportGenerationService { Map dossierAttributesPlaceholder = new HashMap<>(); //KEY:placeholder, VALUE:value - for (DossierAttribute dossierAttribute : dossierAttributes.getDossierAttributeList()) { - for (DossierAttributeConfig attribute : dossierAttributesConfig.getDossierAttributeConfigs()) { - if (dossierAttribute.getDossierAttributeId().equals(attribute.getId())) { - if (attribute.getType().equals(DossierAttributeConfig.DossierAttributeType.IMAGE)) { + for (DossierAttributeConfig attributeConfig : dossierAttributesConfig.getDossierAttributeConfigs()) { + for (DossierAttribute dossierAttribute : dossierAttributes.getDossierAttributeList()) { + if (dossierAttribute.getDossierAttributeId().equals(attributeConfig.getId())) { + if (attributeConfig.getType().equals(DossierAttributeConfig.DossierAttributeType.IMAGE)) { - if (dossierAttribute.getValue() != null) { + if(dossierAttribute.getValue() != null) { if (dossierAttribute.getValue().startsWith("data:")) { - imagePlaceholders.add(new ImagePlaceholder(attribute.getPlaceholder(), Base64.getDecoder() + imagePlaceholders.add(new ImagePlaceholder(attributeConfig.getPlaceholder(), Base64.getDecoder() .decode(dossierAttribute.getValue().split(",")[1]))); } else { - imagePlaceholders.add(new ImagePlaceholder(attribute.getPlaceholder(), Base64.getDecoder() + imagePlaceholders.add(new ImagePlaceholder(attributeConfig.getPlaceholder(), Base64.getDecoder() .decode(dossierAttribute.getValue()))); } } } else { - dossierAttributesPlaceholder.put(attribute.getPlaceholder(), dossierAttribute.getValue()); + if(dossierAttribute.getValue() == null){ + dossierAttributesPlaceholder.put(attributeConfig.getPlaceholder(), ""); + } else { + dossierAttributesPlaceholder.put(attributeConfig.getPlaceholder(), dossierAttribute.getValue()); + } } } - + } + if (!dossierAttributesPlaceholder.containsKey(attributeConfig.getPlaceholder())) { + dossierAttributesPlaceholder.put(attributeConfig.getPlaceholder(), ""); } } 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 835bf9e..9da2195 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 @@ -108,7 +108,11 @@ public class WordReportGenerationService { } } } else { - dossierAttributesPlaceholder.put(attributeConfig.getPlaceholder(), dossierAttribute.getValue()); + if(dossierAttribute.getValue() == null){ + dossierAttributesPlaceholder.put(attributeConfig.getPlaceholder(), ""); + } else { + dossierAttributesPlaceholder.put(attributeConfig.getPlaceholder(), dossierAttribute.getValue()); + } } } }