RED-4961: "numberOfSoftDeletedFiles" for soft-deleted archived-dossier is always 0

This commit is contained in:
Ali Oezyetimoglu 2022-08-10 15:41:33 +02:00
parent edad0b8c2d
commit 39c2dd0101
2 changed files with 27 additions and 1 deletions

View File

@ -169,7 +169,7 @@ public interface FileRepository extends JpaRepository<FileEntity, String> {
@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);

View File

@ -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);
}
}