Gegenstands-Verwaltung (Non-Food) neben Lebensmitteln
Die Kategorie bestimmt die Verwaltungsart (food/object). Gegenstaende: Menge je Lagerort statt Chargen/MHD, Umlagern (ohne Grund) und Entfernen mit Pflicht-Grund samt Entnahme-Statistik. Beliebig viele eigene Felder je Kategorie (vererbt an Unterkategorien), "gekauft bei" ueber eine verwaltbare Shop-Liste und ein Produktlink. Barcode-Lookup zusaetzlich ueber Open Products Facts. Der Lebensmittel-Teil (Chargen/MHD/FEFO) bleibt unveraendert. Umgesetzt in Backend (FastAPI, +Tests gruen), Web (React) und iOS (SwiftUI). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -839,3 +839,22 @@ select.zeitraum:hover { color: var(--text); }
|
||||
.aktion-zeile { display: flex; gap: 8px; align-items: center; }
|
||||
.aktion-zeile .btn { flex: 1; justify-content: center; }
|
||||
.aktion-menge { width: 72px; text-align: right; }
|
||||
|
||||
/* ---- Gegenstände (Non-Food): eigene Felder, Bestand je Ort, Umlagern ---- */
|
||||
.stack { display: flex; flex-direction: column; gap: var(--sp-3); }
|
||||
.clean-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--sp-2); }
|
||||
.clean-list li { display: flex; align-items: center; gap: var(--sp-2); padding: 6px 8px; background: var(--surface-2); border-radius: 8px; }
|
||||
.check-inline { display: flex; align-items: center; gap: var(--sp-2); }
|
||||
.check-inline input { width: auto; margin: 0; }
|
||||
.feldkopf { display: inline-flex; align-items: center; gap: var(--sp-2); flex-wrap: wrap; }
|
||||
tr.row-active { background: var(--surface-2); }
|
||||
|
||||
/* Bestand je Lagerort */
|
||||
.ort-zeile { display: flex; align-items: center; gap: var(--sp-2); padding: 6px 0; }
|
||||
.ort-zeile .name { flex: 1; }
|
||||
.ort-menge { width: 90px; text-align: right; }
|
||||
|
||||
/* Eingebettetes Unter-Panel (Umlagern-/Entfernen-Dialog) */
|
||||
.card-sub { border: 1px solid var(--border); border-radius: var(--radius); padding: var(--sp-3); background: var(--surface-2); }
|
||||
.card-sub .card-head { margin-top: 0; }
|
||||
.card-sub h3 { margin: 0; font-size: 15px; }
|
||||
|
||||
Reference in New Issue
Block a user