RED-3630 - filtering

This commit is contained in:
Timo Bejan 2022-04-04 11:23:07 +03:00
parent 6f781008db
commit 7cf5a7914f
3 changed files with 15 additions and 10 deletions

View File

@ -53,7 +53,7 @@ public interface DossierResource {
@RequestParam(name = INCLUDE_DELETED_PARAM, defaultValue = "false", required = false) boolean includeDeleted);
@GetMapping(value = REST_PATH + INFO_PATH, produces = MediaType.APPLICATION_JSON_VALUE)
DossierInformation getDossierInformation();
DossierInformation getDossierInformation(@RequestBody List<String> filteredDossierIds);
@GetMapping(value = REST_PATH + DOSSIER_ID_PATH_PARAM, produces = MediaType.APPLICATION_JSON_VALUE)
Dossier getDossierById(@PathVariable(DOSSIER_ID_PARAM) String dossierId,

View File

@ -107,10 +107,15 @@ public class DossierController implements DossierResource {
}
@Override
public DossierInformation getDossierInformation() {
public DossierInformation getDossierInformation(@RequestBody List<String> filteredDossierIds) {
DossierInformation dossierInformation = new DossierInformation();
dossierService.getAllDossiers().forEach(d -> {
var dossiers = dossierService.getAllDossiers();
if (filteredDossierIds != null && filteredDossierIds.size() > 0) {
dossiers = dossiers.stream().filter(d -> filteredDossierIds.contains(d.getId())).collect(Collectors.toList());
}
dossiers.forEach(d -> {
if (d.getHardDeletedTime() != null) {
dossierInformation.setNumberOfHardDeletedDossiers(dossierInformation.getNumberOfHardDeletedDossiers() + 1);
} else if (d.getSoftDeletedTime() != null) {

View File

@ -113,7 +113,7 @@ public class DossierTest extends AbstractPersistenceServerServiceTest {
assertThatThrownBy(() -> dossierClient.undeleteDossiers(Sets.newHashSet(dossier.getId()))).isInstanceOf(FeignException.class);
var dossierInformation = dossierClient.getDossierInformation();
var dossierInformation = dossierClient.getDossierInformation(List.of());
assertThat(dossierInformation.getNumberOfActiveDossiers()).isEqualTo(0);
assertThat(dossierInformation.getNumberOfSoftDeletedDossiers()).isEqualTo(0);
assertThat(dossierInformation.getNumberOfHardDeletedDossiers()).isEqualTo(1);
@ -147,7 +147,7 @@ public class DossierTest extends AbstractPersistenceServerServiceTest {
assertThat(dossierClient.getArchivedDossiers()).hasSize(1);
assertThat(dossierClient.getSoftDeletedDossiers()).hasSize(0);
var dossierInformation = dossierClient.getDossierInformation();
var dossierInformation = dossierClient.getDossierInformation(List.of());
assertThat(dossierInformation.getNumberOfActiveDossiers()).isEqualTo(1);
assertThat(dossierInformation.getNumberOfSoftDeletedDossiers()).isEqualTo(0);
assertThat(dossierInformation.getNumberOfHardDeletedDossiers()).isEqualTo(0);
@ -158,7 +158,7 @@ public class DossierTest extends AbstractPersistenceServerServiceTest {
assertThat(dossierClient.getAllDossiers(false, false)).hasSize(2);
assertThat(dossierClient.getArchivedDossiers()).hasSize(0);
dossierInformation = dossierClient.getDossierInformation();
dossierInformation = dossierClient.getDossierInformation(List.of());
assertThat(dossierInformation.getNumberOfActiveDossiers()).isEqualTo(2);
assertThat(dossierInformation.getNumberOfSoftDeletedDossiers()).isEqualTo(0);
assertThat(dossierInformation.getNumberOfHardDeletedDossiers()).isEqualTo(0);
@ -171,7 +171,7 @@ public class DossierTest extends AbstractPersistenceServerServiceTest {
assertThat(dossierClient.getArchivedDossiers()).hasSize(2);
assertThat(dossierClient.getSoftDeletedDossiers()).hasSize(0);
dossierInformation = dossierClient.getDossierInformation();
dossierInformation = dossierClient.getDossierInformation(List.of());
assertThat(dossierInformation.getNumberOfActiveDossiers()).isEqualTo(0);
assertThat(dossierInformation.getNumberOfSoftDeletedDossiers()).isEqualTo(0);
assertThat(dossierInformation.getNumberOfHardDeletedDossiers()).isEqualTo(0);
@ -187,7 +187,7 @@ public class DossierTest extends AbstractPersistenceServerServiceTest {
assertThat(dossierClient.getArchivedDossiers()).hasSize(1);
assertThat(dossierClient.getSoftDeletedDossiers()).hasSize(1);
dossierInformation = dossierClient.getDossierInformation();
dossierInformation = dossierClient.getDossierInformation(List.of());
assertThat(dossierInformation.getNumberOfActiveDossiers()).isEqualTo(0);
assertThat(dossierInformation.getNumberOfSoftDeletedDossiers()).isEqualTo(1);
assertThat(dossierInformation.getNumberOfHardDeletedDossiers()).isEqualTo(0);
@ -201,7 +201,7 @@ public class DossierTest extends AbstractPersistenceServerServiceTest {
assertThat(dossierClient.getArchivedDossiers()).hasSize(0);
assertThat(dossierClient.getSoftDeletedDossiers()).hasSize(1);
dossierInformation = dossierClient.getDossierInformation();
dossierInformation = dossierClient.getDossierInformation(List.of());
assertThat(dossierInformation.getNumberOfActiveDossiers()).isEqualTo(1);
assertThat(dossierInformation.getNumberOfSoftDeletedDossiers()).isEqualTo(1);
assertThat(dossierInformation.getNumberOfHardDeletedDossiers()).isEqualTo(0);
@ -217,7 +217,7 @@ public class DossierTest extends AbstractPersistenceServerServiceTest {
assertThat(dossierClient.getArchivedDossiers()).hasSize(1);
assertThat(dossierClient.getSoftDeletedDossiers()).hasSize(0);
dossierInformation = dossierClient.getDossierInformation();
dossierInformation = dossierClient.getDossierInformation(List.of());
assertThat(dossierInformation.getNumberOfActiveDossiers()).isEqualTo(0);
assertThat(dossierInformation.getNumberOfSoftDeletedDossiers()).isEqualTo(0);
assertThat(dossierInformation.getNumberOfHardDeletedDossiers()).isEqualTo(1);