From 19c87fa6bc92a52c8867d9c9792002e4b2754545 Mon Sep 17 00:00:00 2001 From: Ali Oezyetimoglu Date: Fri, 17 Feb 2023 15:12:54 +0100 Subject: [PATCH] RED-5256: refactored checks and added findAllById for dossiers --- .../persistence/DossierPersistenceService.java | 17 +++++++++++++---- .../v1/server/controller/DossierController.java | 7 +++---- .../v1/server/service/DossierService.java | 6 ++++++ 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/DossierPersistenceService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/DossierPersistenceService.java index f7277346d..e6ac1ea5d 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/DossierPersistenceService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/DossierPersistenceService.java @@ -4,16 +4,16 @@ import static com.iqser.red.service.persistence.management.v1.processor.exceptio import java.time.OffsetDateTime; import java.time.temporal.ChronoUnit; +import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.UUID; import java.util.stream.Collectors; - -import com.iqser.red.service.persistence.management.v1.processor.exception.ConflictException; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.DossierEntity; import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException; @@ -28,8 +28,6 @@ import com.iqser.red.service.persistence.service.v1.api.model.dossiertemplate.do import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.springframework.transaction.annotation.Isolation; -import org.springframework.transaction.annotation.Transactional; @Service @RequiredArgsConstructor @@ -171,6 +169,17 @@ public class DossierPersistenceService { public List findAllDossiers() { return dossierRepository.findAll(); + + } + + + public List findAllDossiers(List dossierIds) { + + if (!dossierIds.isEmpty()) { + return dossierRepository.findAllById(dossierIds); + } else { + return Collections.emptyList(); + } } diff --git a/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/controller/DossierController.java b/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/controller/DossierController.java index 3b4956594..2e2e6215c 100644 --- a/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/controller/DossierController.java +++ b/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/controller/DossierController.java @@ -4,6 +4,7 @@ import static com.iqser.red.service.persistence.management.v1.processor.exceptio import static com.iqser.red.service.persistence.management.v1.processor.utils.MagicConverter.convert; import java.time.OffsetDateTime; +import java.util.Collections; import java.util.List; import java.util.Set; import java.util.stream.Collectors; @@ -143,10 +144,8 @@ public class DossierController implements DossierResource { DossierInformation dossierInformation = new DossierInformation(); - var dossiers = dossierService.getAllDossiers(); - if (filteredDossierIds != null) { - dossiers = dossiers.stream().filter(d -> filteredDossierIds.contains(d.getId())).collect(Collectors.toList()); - } + var dossiers = dossierService.getAllDossiers(filteredDossierIds != null ? filteredDossierIds : Collections.emptyList()); + dossiers.forEach(d -> { if (d.getHardDeletedTime() != null) { dossierInformation.setNumberOfHardDeletedDossiers(dossierInformation.getNumberOfHardDeletedDossiers() + 1); diff --git a/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/service/DossierService.java b/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/service/DossierService.java index 3ebd370d2..370ade44c 100644 --- a/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/service/DossierService.java +++ b/persistence-service-v1/persistence-service-server-v1/src/main/java/com/iqser/red/service/peristence/v1/server/service/DossierService.java @@ -133,6 +133,12 @@ public class DossierService { } + public List getAllDossiers(List dossierIds) { + + return dossierPersistenceService.findAllDossiers(dossierIds); + } + + public List getAllDossiersForDossierTemplateId(String dossierTemplateId) { return dossierPersistenceService.findAllDossiersForDossierTemplateId(dossierTemplateId);