From e0e0323f99972a6ac88f475fffc15a7aeb43ae86 Mon Sep 17 00:00:00 2001 From: Scarriffle Date: Sun, 26 Jul 2026 21:14:51 +0200 Subject: [PATCH] =?UTF-8?q?Web:=20Einzelst=C3=BCcke=20=E2=80=93=20Preis/Be?= =?UTF-8?q?lege=20immer=20sichtbar,=20Anlegen=20als=20Button?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Die Anlege-Maske war ein grosses, dauerhaft sichtbares Formular. Jetzt klappt sie hinter einen "Einzelstück anlegen"-Knopf. Dafuer werden Kaufpreis und Belege je Stueck nicht mehr ueber einen Aufklapp-Knopf versteckt, sondern direkt unter jeder Zeile angezeigt (leicht abgesetzte Detailzeile). Co-Authored-By: Claude Opus 4.8 --- web/src/components/Einzelstuecke.jsx | 54 +++++++++++++++------------- web/src/styles.css | 2 ++ 2 files changed, 31 insertions(+), 25 deletions(-) diff --git a/web/src/components/Einzelstuecke.jsx b/web/src/components/Einzelstuecke.jsx index 3cb5825..27997cb 100644 --- a/web/src/components/Einzelstuecke.jsx +++ b/web/src/components/Einzelstuecke.jsx @@ -37,7 +37,7 @@ export default function Einzelstuecke({ product, locations, shops, isAdmin, onCh const [items, setItems] = useState([]); const [addForm, setAddForm] = useState(EMPTY_ADD); const [remove, setRemove] = useState(null); // { item, reason, note } | null - const [expanded, setExpanded] = useState(null); // Item-ID mit offenem Detail (Preis/Belege) + const [showAdd, setShowAdd] = useState(false); // Anlege-Maske ein-/ausklappen const [suggestion, setSuggestion] = useState(null); // { itemId, date } aus PDF-Analyse const origin = window.location.origin; @@ -226,29 +226,22 @@ export default function Einzelstuecke({ product, locations, shops, isAdmin, onCh ) : {it.note || "–"}} -
- - {isAdmin && ( - <> - - - - )} -
+ {isAdmin && ( +
+ + +
+ )} - {expanded === it.id && ( - - + +
- )} ))} {items.length === 0 && Noch keine Einzelstücke.} @@ -327,9 +319,21 @@ export default function Einzelstuecke({ product, locations, shops, isAdmin, onCh - {isAdmin && ( + {isAdmin && !showAdd && ( + + )} + + {isAdmin && showAdd && (
-

Einzelstücke anlegen

+

Einzelstücke anlegen

+ +