From 227143d13f0be716b8d131d9434a2202a4edc498 Mon Sep 17 00:00:00 2001 From: Scarriffle Date: Wed, 29 Jul 2026 13:41:19 +0200 Subject: [PATCH] Web: Chargen zeigen ihren Lagerort (und lassen ihn aendern) Die Chargen-Tabelle hatte keine Lagerort-Spalte - dadurch wirkte es, als koenne man Chargen keinem Ort zuordnen (geht laengst ueber den Lagerort beim Einlagern). Neue Spalte "Lagerort" zeigt den Ort je Charge; beim Bearbeiten laesst er sich per Dropdown aendern (z.B. 2 Glaeser Pesto in Schrank A, 2 in Schrank B). Co-Authored-By: Claude Opus 4.8 --- web/src/pages/ProductForm.jsx | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/web/src/pages/ProductForm.jsx b/web/src/pages/ProductForm.jsx index 4a7748b..4151a4d 100644 --- a/web/src/pages/ProductForm.jsx +++ b/web/src/pages/ProductForm.jsx @@ -15,6 +15,7 @@ import LocationMinStock from "../components/LocationMinStock"; import { DynamicFields, FIELD_TYPES } from "../fields"; import ObjektBestand from "../components/ObjektBestand"; import Einzelstuecke from "../components/Einzelstuecke"; +import { locationOptions, locationPathById } from "../locationPath"; import { daysUntil, expiryRowClass, fmt, fromMonthInput, gebinde, isExpired, relativeExpiry, toMonthInput, unitShort, @@ -996,6 +997,7 @@ export default function ProductForm() { Menge MHD + Lagerort Eingelagert @@ -1219,6 +1224,21 @@ function LotsCard({ product, lots, baseShort, warnDays, isAdmin, onChanged, onEr )} + + {editing ? ( + + ) : ( + l.location_id + ? (locationPathById(l.location_id, locations) || "?") + : + )} + {new Date(l.created_at).toLocaleDateString("de-DE")} {isAdmin && (editing ? ( @@ -1240,7 +1260,7 @@ function LotsCard({ product, lots, baseShort, warnDays, isAdmin, onChanged, onEr ); })} - {lots.length === 0 && Keine Chargen im Bestand.} + {lots.length === 0 && Keine Chargen im Bestand.}