From dcdfb7e03d70e32b24edb24d650f2fb9553f9177 Mon Sep 17 00:00:00 2001 From: ValerioC Date: Wed, 2 Oct 2024 14:56:51 +0200 Subject: [PATCH] [MATERICA] aggiunta gestione pdf documenti in creazione zip --- .../java/it/integry/ems/dto/CreateZipDTO.java | 12 ++++++++++++ .../java/it/integry/ems/service/EmsServices.java | 16 ++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/ems-core/src/main/java/it/integry/ems/dto/CreateZipDTO.java b/ems-core/src/main/java/it/integry/ems/dto/CreateZipDTO.java index 9722c06da0..8006054933 100644 --- a/ems-core/src/main/java/it/integry/ems/dto/CreateZipDTO.java +++ b/ems-core/src/main/java/it/integry/ems/dto/CreateZipDTO.java @@ -3,6 +3,7 @@ package it.integry.ems.dto; import com.fasterxml.jackson.annotation.JsonValue; import it.integry.ems.report.dto.JasperDTO; import it.integry.ems_model.base.EntityBase; +import it.integry.ems_model.entity.DtbDocPdf; import it.integry.ems_model.entity.MtbAartLink; import it.integry.ems_model.entity.MtbUntMis; import it.integry.ems_model.entity.StbActivityFile; @@ -18,6 +19,8 @@ public class CreateZipDTO { private List listMtbAartLink; + private List listDtbDocPdf; + private String fileName; private SaveMode saveMode = SaveMode.STB_FILES_ATTACHED; @@ -51,6 +54,15 @@ public class CreateZipDTO { return this; } + public List getListDtbDocPdf() { + return listDtbDocPdf; + } + + public CreateZipDTO setListDtbDocPdf(List listDtbDocPdf) { + this.listDtbDocPdf = listDtbDocPdf; + return this; + } + public String getFileName() { return fileName; } diff --git a/ems-core/src/main/java/it/integry/ems/service/EmsServices.java b/ems-core/src/main/java/it/integry/ems/service/EmsServices.java index 9bd3cada51..38d3f21999 100644 --- a/ems-core/src/main/java/it/integry/ems/service/EmsServices.java +++ b/ems-core/src/main/java/it/integry/ems/service/EmsServices.java @@ -685,6 +685,22 @@ public class EmsServices { } } + if (!UtilityList.isNullOrEmpty(createZipDTO.getListDtbDocPdf())){ + List listDtbDocPdf = createZipDTO.getListDtbDocPdf().stream() + .peek(dtbDocPdf -> dtbDocPdf.setOperation(OperationType.SELECT_OBJECT)) + .collect(Collectors.toList()); + + List entityBases = Collections.unmodifiableList(entityProcessor.processEntityList(listDtbDocPdf, true)); + + UtilityEntity.throwEntitiesException(entityBases); + + listDtbDocPdf = UtilityEntity.toCustomEntity(entityBases); + + for (DtbDocPdf dtbDocPdf : listDtbDocPdf) { + UtilityZip.addFileToArchive(zos, dtbDocPdf.getFilename(), Base64.decodeBase64(dtbDocPdf.getFilecontentByteArr(false))); + } + } + if (baos.size() > 0) { zos.close();