Backend: globale Einzelstueck-Liste (GET /items) + Bild-Version an Produkten
Neuer Endpoint GET /items liefert alle Einzelstuecke ueber alle Produkte, angereichert mit Produkt-, Kategorie-, Lagerort- und Shop-Angaben (Beziehungen vorgeladen). ItemOut bekommt category_id/category_name. ProductOut bekommt image_version (Epoch der letzten Bildaenderung, None ohne Bild) - identisch zum ETag der Bild-Route, damit Clients Bilder cachen und nur bei Aenderung neu laden. Grundlage fuer die neue Einzelstueck-Liste (Web+iOS) und den iOS-Bild-Cache. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -354,6 +354,9 @@ class ProductOut(BaseModel):
|
||||
# angereichert:
|
||||
stock: float = 0.0
|
||||
expired_count: int = 0
|
||||
# Epoch (Sekunden) der letzten Bildänderung, sonst None (= kein Bild). Der
|
||||
# Client cacht Bilder danach und lädt nur bei geänderter Version neu.
|
||||
image_version: int | None = None
|
||||
kind: str = ""
|
||||
unit_name: str = ""
|
||||
unit_factor: float = 1.0
|
||||
@@ -591,6 +594,8 @@ class ItemOut(BaseModel):
|
||||
# Für QR-Auflösung/Anzeige mitgeliefert:
|
||||
product_name: str | None = None
|
||||
product_brand: str | None = None
|
||||
category_id: int | None = None
|
||||
category_name: str | None = None
|
||||
documents: list[ItemDocumentOut] = []
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user