Inventory¶
Co je modul inventory¶
inventory je doména pro fyzický sklad, rezervace a obchodní dostupnost. Pokud si nejsi jistý, co přesně znamená "inventory", mysli na něj jako na vrstvu, která odpovídá na otázky:
- co skutečně fyzicky máme,
- kde to máme,
- kolik kusů je rezervováno,
- co umí dodat dodavatel,
- jakou dostupnost máme ukázat zákazníkovi.
Hlavní entity¶
inventory_itemstock_locationinventory_levelinventory_reservationsupplier_availabilityavailability_text
Jak to funguje¶
1. Inventory item¶
inventory_item je fyzická skladová reprezentace varianty. Je navázaná 1:1 na product_variant.
2. Stock locations¶
stock_location říká, v jakých skladech nebo lokacích držíš zboží.
3. Inventory levels¶
inventory_level drží počet kusů pro kombinaci inventory_item + location.
Pole mají odlišný význam:
stocked_quantity= fyzicky naskladněno,reserved_quantity= zablokováno pro objednávky,incoming_quantity= čeká se na příjem.
4. Reservations¶
inventory_reservation je zdroj pravdy o rezervacích. Trigger přepočítává reserved_quantity do cache v inventory_level.
To je důležité: rezervace se nemá odvozovat jen z nějakého sloupce, ale z explicitních záznamů.
5. Supplier availability¶
supplier_availability popisuje, co umí dodat externí dodavatel. To není totéž co vlastní sklad.
6. Availability text¶
availability_text je obchodní nebo UX vrstva. Tady se ukládá text a display stav, který uvidí zákazník, např. "Skladem" nebo "Na objednávku".
Co z toho plyne¶
- sklad != dostupnost,
- rezervace != fyzický počet,
- dodavatel != vlastní sklad,
- zákaznický text != interní stock data.
Právě proto existuje inventory jako samostatný modul a není to jen jeden sloupec quantity.