From 541da5d3d3d7a8802ff7b2c9453250d5cf63bf95 Mon Sep 17 00:00:00 2001 From: yhampe Date: Mon, 23 Oct 2023 08:17:56 +0200 Subject: [PATCH 1/5] RED-7654: Import and export of rules in non-escaped form * removed method call, as we do not care about the names when updating an existing template --- .../service/DossierTemplateImportService.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java index 861b248ed..f3178c73b 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java @@ -17,6 +17,7 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Objects; +import java.util.Optional; import java.util.Set; import java.util.UUID; import java.util.function.Function; @@ -66,6 +67,7 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemp import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.ReportTemplateUploadRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.configuration.Colors; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.CreateOrUpdateDossierStatusRequest; +import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.Dossier; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.DossierStatusInfo; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.FileAttributeConfig; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.importexport.ExportFilename; @@ -111,6 +113,7 @@ public class DossierTemplateImportService { public String importDossierTemplate(ImportDossierTemplateRequest request) { + ImportTemplateResult archiveResult = this.handleArchive(request); return this.importDossierTemplate(archiveResult); @@ -321,7 +324,12 @@ public class DossierTemplateImportService { // override the existing dossier template updateDossierTemplateMeta(existingDossierTemplate, dossierTemplateMeta, request.getUserId()); - dossierTemplateRepository.save(existingDossierTemplate); + DossierTemplateEntity updatedDossier = dossierTemplateRepository.save(existingDossierTemplate); + Optional dossierTemplate = dossierTemplateRepository.findById(existingDossierTemplate.getId()); + Optional dossierTemplate1 = dossierTemplateRepository.findById(updatedDossier.getId()); + log.info("OLD: "+ dossierTemplate.get().getName()); + log.info("NEW: "+dossierTemplate1.get().getName()); + // set rules setRulesWhenCompiled(request, dossierTemplateId); @@ -553,10 +561,6 @@ public class DossierTemplateImportService { private void updateDossierTemplateMeta(DossierTemplateEntity dossierTemplateEntity, DossierTemplate dossierTemplate, String userId) { - if (!dossierTemplateEntity.getName().equalsIgnoreCase(dossierTemplate.getName())) { - this.validateDossierTemplateName(dossierTemplate); - } - BeanUtils.copyProperties(dossierTemplate, dossierTemplateEntity, "modifiedBy", "dateModified", "validFrom", "validTo", "downloadFileTypes"); OffsetDateTime now = OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS); dossierTemplateEntity.setDateModified(now); @@ -708,7 +712,6 @@ public class DossierTemplateImportService { private void validateDossierTemplateName(DossierTemplate dossierTemplateMeta) { - int nameSuffix = 0; String dossierTemplateName = dossierTemplateMeta.getName(); while (dossierTemplatePersistenceService.isDossierTemplateNameNotUnique(dossierTemplateMeta.getName())) { -- 2.47.2 From b872effffd51c15d6b53fdc6f2387054dc9c1b78 Mon Sep 17 00:00:00 2001 From: yhampe Date: Mon, 23 Oct 2023 08:17:56 +0200 Subject: [PATCH 2/5] RED-7654: Import and export of rules in non-escaped form * removed method call, as we do not care about the names when updating an existing template --- .../service/DossierTemplateImportService.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java index 861b248ed..f3178c73b 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java @@ -17,6 +17,7 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Objects; +import java.util.Optional; import java.util.Set; import java.util.UUID; import java.util.function.Function; @@ -66,6 +67,7 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemp import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.ReportTemplateUploadRequest; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.configuration.Colors; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.CreateOrUpdateDossierStatusRequest; +import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.Dossier; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.DossierStatusInfo; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.FileAttributeConfig; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.importexport.ExportFilename; @@ -111,6 +113,7 @@ public class DossierTemplateImportService { public String importDossierTemplate(ImportDossierTemplateRequest request) { + ImportTemplateResult archiveResult = this.handleArchive(request); return this.importDossierTemplate(archiveResult); @@ -321,7 +324,12 @@ public class DossierTemplateImportService { // override the existing dossier template updateDossierTemplateMeta(existingDossierTemplate, dossierTemplateMeta, request.getUserId()); - dossierTemplateRepository.save(existingDossierTemplate); + DossierTemplateEntity updatedDossier = dossierTemplateRepository.save(existingDossierTemplate); + Optional dossierTemplate = dossierTemplateRepository.findById(existingDossierTemplate.getId()); + Optional dossierTemplate1 = dossierTemplateRepository.findById(updatedDossier.getId()); + log.info("OLD: "+ dossierTemplate.get().getName()); + log.info("NEW: "+dossierTemplate1.get().getName()); + // set rules setRulesWhenCompiled(request, dossierTemplateId); @@ -553,10 +561,6 @@ public class DossierTemplateImportService { private void updateDossierTemplateMeta(DossierTemplateEntity dossierTemplateEntity, DossierTemplate dossierTemplate, String userId) { - if (!dossierTemplateEntity.getName().equalsIgnoreCase(dossierTemplate.getName())) { - this.validateDossierTemplateName(dossierTemplate); - } - BeanUtils.copyProperties(dossierTemplate, dossierTemplateEntity, "modifiedBy", "dateModified", "validFrom", "validTo", "downloadFileTypes"); OffsetDateTime now = OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS); dossierTemplateEntity.setDateModified(now); @@ -708,7 +712,6 @@ public class DossierTemplateImportService { private void validateDossierTemplateName(DossierTemplate dossierTemplateMeta) { - int nameSuffix = 0; String dossierTemplateName = dossierTemplateMeta.getName(); while (dossierTemplatePersistenceService.isDossierTemplateNameNotUnique(dossierTemplateMeta.getName())) { -- 2.47.2 From 9a5b192144cc631bd1b9a71a1a4d15a19e7f64ac Mon Sep 17 00:00:00 2001 From: yhampe Date: Mon, 23 Oct 2023 08:20:37 +0200 Subject: [PATCH 3/5] RED-7654: Import and export of rules in non-escaped form * removed debug logging --- .../v1/processor/service/DossierTemplateImportService.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java index f3178c73b..e08fa85e3 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java @@ -325,10 +325,6 @@ public class DossierTemplateImportService { // override the existing dossier template updateDossierTemplateMeta(existingDossierTemplate, dossierTemplateMeta, request.getUserId()); DossierTemplateEntity updatedDossier = dossierTemplateRepository.save(existingDossierTemplate); - Optional dossierTemplate = dossierTemplateRepository.findById(existingDossierTemplate.getId()); - Optional dossierTemplate1 = dossierTemplateRepository.findById(updatedDossier.getId()); - log.info("OLD: "+ dossierTemplate.get().getName()); - log.info("NEW: "+dossierTemplate1.get().getName()); // set rules -- 2.47.2 From 6221a7c5d73c037d33b5ce9e475b7023e35351d2 Mon Sep 17 00:00:00 2001 From: yhampe Date: Mon, 23 Oct 2023 08:22:42 +0200 Subject: [PATCH 4/5] RED-7654: Import and export of rules in non-escaped form * removed debug logging --- .../v1/processor/service/DossierTemplateImportService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java index e08fa85e3..1ff0aa277 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java @@ -113,7 +113,6 @@ public class DossierTemplateImportService { public String importDossierTemplate(ImportDossierTemplateRequest request) { - ImportTemplateResult archiveResult = this.handleArchive(request); return this.importDossierTemplate(archiveResult); @@ -324,7 +323,7 @@ public class DossierTemplateImportService { // override the existing dossier template updateDossierTemplateMeta(existingDossierTemplate, dossierTemplateMeta, request.getUserId()); - DossierTemplateEntity updatedDossier = dossierTemplateRepository.save(existingDossierTemplate); + dossierTemplateRepository.save(existingDossierTemplate); // set rules @@ -708,6 +707,7 @@ public class DossierTemplateImportService { private void validateDossierTemplateName(DossierTemplate dossierTemplateMeta) { + int nameSuffix = 0; String dossierTemplateName = dossierTemplateMeta.getName(); while (dossierTemplatePersistenceService.isDossierTemplateNameNotUnique(dossierTemplateMeta.getName())) { -- 2.47.2 From 70bb450870dfa21a62dfcd152ba90949c6a55026 Mon Sep 17 00:00:00 2001 From: yhampe Date: Mon, 23 Oct 2023 09:59:41 +0200 Subject: [PATCH 5/5] RED-7654: Import and export of rules in non-escaped form * added back deleted code * added id to ignoreproperties --- .../v1/processor/service/DossierTemplateImportService.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java index 1ff0aa277..e76c7be4b 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/DossierTemplateImportService.java @@ -556,7 +556,11 @@ public class DossierTemplateImportService { private void updateDossierTemplateMeta(DossierTemplateEntity dossierTemplateEntity, DossierTemplate dossierTemplate, String userId) { - BeanUtils.copyProperties(dossierTemplate, dossierTemplateEntity, "modifiedBy", "dateModified", "validFrom", "validTo", "downloadFileTypes"); + if (!dossierTemplateEntity.getName().equalsIgnoreCase(dossierTemplate.getName())) { + this.validateDossierTemplateName(dossierTemplate); + } + + BeanUtils.copyProperties(dossierTemplate, dossierTemplateEntity, "id","modifiedBy", "dateModified", "validFrom", "validTo", "downloadFileTypes"); OffsetDateTime now = OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS); dossierTemplateEntity.setDateModified(now); dossierTemplateEntity.setModifiedBy(userId); -- 2.47.2