Lager — Lagerorte (Sub-Route)
Zweck
Sub-Route /warehouses/:id/locations ist die Pflege-Sicht der Lagerorte (Regale, Faecher, Bereiche) innerhalb des Lagers. Detail-Sicht /warehouses/:id/locations/:warehouseSpotId zeigt den konkreten Spot mit QR-Code zum Drucken.
WarehouseSpot.warehouseId ist nach Anlage immutable.
Voraussetzungen
Berechtigungen (CASL)
| Action | Subject | Wirkung | Keycloak-Rolle |
|---|---|---|---|
view | FE_Warehouse, Warehouse, FE_WarehouseSpot, WarehouseSpot | Liste/Detail aufrufbar | — |
create/update | WarehouseSpot | Lagerort pflegen | APP_SPEAMCORE_CREATE/UPDATE_WAREHOUSE_SPOT |
Schritt-für-Schritt-Anleitung
- Lager (
/warehouses/:id) → Tab Lagerorte. - + Spot legt einen leeren WarehouseSpot an, Detail öffnet sich.
- Name pflegen, Auto-Save laeuft.
- QR-Code-Anzeige rechts kann für Druck genutzt werden (Print und PDF — QR-Code-Layout aus Anpassung).

Anlege-Pattern (Lagerorte)
Lagerorte sind die physischen Plaetze innerhalb eines Lagers (Regale, Faecher). Pro Lagerort:
name(Pflicht) — z. B. „Regal A1", „Fach 03".parentLocationId(optional) — für hierarchische Lagerorte (Regal A → Fach 03).barcode— für Scanner-Workflow am Vor-Ort-Tablet.
Beim Wareneingang oder Material-Buchung kann pro Position ein Lagerort gewählt werden — für schnelles Auffinden bei spaeterer Material-Entnahme.
Wiederverwendbare Konzepte
Verknuepfungen zu anderen Modulen
- Lager — Eltern-Modul.
- Lager-Spots — globale Sicht (selten genutzt — Pflege über Lager).
- Druck und PDF — QR-Aufkleber.
- Betriebsmittel — koennen einen WarehouseSpot referenzieren.
API/Schnittstellen
| Methode | Endpoint | Zweck | CASL |
|---|---|---|---|
GET | /api/warehouse-spots?filter[warehouseId] | Liste | view WarehouseSpot |
POST | /api/warehouse-spots | Anlegen | create WarehouseSpot |
Versionshinweise
- 2026-04-30: Initiale Veroeffentlichung.