1
0
Fork 0
mirror of https://github.com/s-frick/effigenix.git synced 2026-03-28 13:49:36 +01:00

fix(inventory): Aktiv/Inaktiv-Filter für Lagerorte-Liste

ListStorageLocations ignorierte active=false und gab stattdessen
alle Lagerorte zurück. Jetzt wird bei gesetztem active-Parameter
korrekt nach aktivem/inaktivem Status gefiltert.
This commit is contained in:
Sebastian Frick 2026-02-24 08:46:17 +01:00
parent e25d4437d9
commit 2811836039

View file

@ -20,11 +20,17 @@ public class ListStorageLocations {
if (storageType != null) { if (storageType != null) {
return findByStorageType(storageType, active); return findByStorageType(storageType, active);
} }
if (Boolean.TRUE.equals(active)) { if (active == null) {
return mapResult(storageLocationRepository.findActive());
}
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<StorageLocationError, List<StorageLocation>> findByStorageType(String storageType, Boolean active) { private Result<StorageLocationError, List<StorageLocation>> findByStorageType(String storageType, Boolean active) {
StorageType type; StorageType type;
@ -35,8 +41,10 @@ public class ListStorageLocations {
} }
var result = mapResult(storageLocationRepository.findByStorageType(type)); var result = mapResult(storageLocationRepository.findByStorageType(type));
if (result.isSuccess() && Boolean.TRUE.equals(active)) { if (result.isSuccess() && active != null) {
return Result.success(result.unsafeGetValue().stream().filter(StorageLocation::active).toList()); return Result.success(result.unsafeGetValue().stream()
.filter(loc -> loc.active() == active)
.toList());
} }
return result; return result;
} }