diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/FileRepository.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/FileRepository.java index b62454f89..3d574dc3e 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/FileRepository.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/persistence/repository/FileRepository.java @@ -169,7 +169,7 @@ public interface FileRepository extends JpaRepository { @Query("select count(f) from FileEntity f inner join DossierEntity d on d.id = f.dossierId where d.id = :dossierId" + " and ((f.deleted is not null and f.hardDeletedTime is null) or " + - " (d.softDeletedTime is not null and d.hardDeletedTime is null)) and d.archivedTime is null") + " (d.softDeletedTime is not null and d.hardDeletedTime is null))") int countSoftDeletedFilesPerDossierId(String dossierId); diff --git a/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/DossierStatsTest.java b/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/DossierStatsTest.java index 5066a586c..5c74ee675 100644 --- a/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/DossierStatsTest.java +++ b/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/DossierStatsTest.java @@ -12,6 +12,7 @@ import org.junit.Before; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; +import com.iqser.red.service.peristence.v1.server.integration.client.DossierClient; import com.iqser.red.service.peristence.v1.server.integration.client.DossierStatsClient; import com.iqser.red.service.peristence.v1.server.integration.client.FileClient; import com.iqser.red.service.peristence.v1.server.integration.service.DossierTemplateTesterAndProvider; @@ -42,6 +43,9 @@ public class DossierStatsTest extends AbstractPersistenceServerServiceTest { @Autowired private FileClient fileClient; + @Autowired + private DossierClient dossierClient; + @Autowired private DossierStatsClient dossierStatsClient; @@ -142,4 +146,26 @@ public class DossierStatsTest extends AbstractPersistenceServerServiceTest { assertThat(dossierStats.getLastFileUpdateDate()).isEqualTo(OLDER_1); assertThat(dossierStats.getFileManipulationDate()).isEqualTo(OLDER_2); } + + @Test + public void testArchivedAndDeletedDossierStats() { + + DossierStats dossierStats = dossierStatsClient.getDossierStats(dossier1.getId()); + assertThat(dossierStats.getNumberOfFiles()).isEqualTo(2); + + dossierClient.archiveDossiers(Set.of(dossier1.getId())); + dossierStats = dossierStatsClient.getDossierStats(dossier1.getId()); + assertThat(dossierStats.getNumberOfFiles()).isEqualTo(2); + + dossierClient.delete(dossier1.getId()); + + var allDossiers = dossierClient.getAllDossiers(true, true); + assertThat(allDossiers.size()).isEqualTo(2); + assertThat(dossierClient.getSoftDeletedDossiers().size()).isEqualTo(1); + + dossierStats = dossierStatsClient.getDossierStats(dossier1.getId()); + assertThat(dossierStats.getNumberOfSoftDeletedFiles()).isEqualTo(2); + + + } }