diff --git a/backend/src/main/java/de/effigenix/application/inventory/ListStorageLocations.java b/backend/src/main/java/de/effigenix/application/inventory/ListStorageLocations.java index 7edc912..ed6507e 100644 --- a/backend/src/main/java/de/effigenix/application/inventory/ListStorageLocations.java +++ b/backend/src/main/java/de/effigenix/application/inventory/ListStorageLocations.java @@ -20,10 +20,16 @@ public class ListStorageLocations { if (storageType != null) { return findByStorageType(storageType, active); } - if (Boolean.TRUE.equals(active)) { - return mapResult(storageLocationRepository.findActive()); + if (active == null) { + return mapResult(storageLocationRepository.findAll()); } - return mapResult(storageLocationRepository.findAll()); + var result = mapResult(storageLocationRepository.findAll()); + if (result.isSuccess()) { + return Result.success(result.unsafeGetValue().stream() + .filter(loc -> loc.active() == active) + .toList()); + } + return result; } private Result> findByStorageType(String storageType, Boolean active) { @@ -35,8 +41,10 @@ public class ListStorageLocations { } var result = mapResult(storageLocationRepository.findByStorageType(type)); - if (result.isSuccess() && Boolean.TRUE.equals(active)) { - return Result.success(result.unsafeGetValue().stream().filter(StorageLocation::active).toList()); + if (result.isSuccess() && active != null) { + return Result.success(result.unsafeGetValue().stream() + .filter(loc -> loc.active() == active) + .toList()); } return result; }