Inventur — Produkte (Sub-Route)
Zweck
Sub-Route /inventories/:id/products ist die Erfassungs-Sicht der IST-Mengen waehrend einer Inventur. Pro Eintrag wird SOLL-Menge (aus dem Bestand zum Stichtag), IST-Menge (vor Ort gezaehlt) und Differenz angezeigt.
Berechtigungen (CASL)
| Action | Subject | Wirkung | Keycloak-Rolle |
|---|---|---|---|
view | FE_Inventory, Inventory, InventoryProduct | Liste sichtbar | — |
update | InventoryProduct | IST-Menge erfassen | APP_SPEAMCORE_UPDATE_INVENTORY_PRODUCT |
Schritt-für-Schritt-Anleitung
- Inventur (
/inventories/:id) → Tab Produkte. - Pro Produkt IST-Menge erfassen — Differenz wird automatisch berechnet.
- Inventur abschliessen — Differenzen werden als Bestandsbewegungen gebucht.
Inline-Bearbeitung der Zaehl-Positionen
Die Liste der Inventur-Positionen ist inline-editierbar — kein separates Modal pro Position. Pro Zeile pflegen Sie:
| Spalte | Eingabe | Wirkung |
|---|---|---|
currentAmount | read-only Snapshot | Bestand zum Zeitpunkt des apply-warehouse-products-Aufrufs. |
countedAmount | Numerisch | Tatsaechlich gezaehlte Menge. Default leer = noch nicht gezaehlt. |
comment | Textarea | Kommentar zur Differenz (z. B. „Bruch", „Schwund", „Inventurfehler"). |
countedAt | Auto | Zeitstempel beim ersten Eintrag von countedAmount. |
countedById | Auto | Mitarbeiter, der die Position gezaehlt hat. |
Beim Inventur-Abschluss (siehe Inventuren) werden alle Positionen mit currentAmount != countedAmount automatisch als ProductMovement mit type = inventory-correction gebucht.
Wiederverwendbare Konzepte
Verknuepfungen zu anderen Modulen
- Inventuren — Eltern-Modul.
- Lager — Inventuren — Sub-Sicht im Lager-Kontext.
- Produkt-Bewegungen — Korrektur-Buchungen.
API/Schnittstellen
| Methode | Endpoint | Zweck | CASL |
|---|---|---|---|
GET | /api/inventory-products?filter[inventoryId] | Liste | view InventoryProduct |
PATCH | /api/inventory-products/:id | IST-Menge | update InventoryProduct |
Versionshinweise
- 2026-04-30: Initiale Veroeffentlichung.