From d804666a9502acdfdb066c1f61124ca9bb237b61 Mon Sep 17 00:00:00 2001 From: Scarriffle Date: Wed, 22 Jul 2026 22:04:30 +0200 Subject: [PATCH] Keine Notiz mehr bei Gruppen-Codes, die zu einem Artikel gehoeren Seit am Code die Marke steht, ist die Notiz dort ueberfluessig - sie sagte dasselbe noch einmal und nahm nur Platz weg. Die Zeile zeigt jetzt Code, Kennzeichnung "Artikel" und Marke, sonst nichts. Bewusst nicht ueberall entfernt: Codes, die noch zu keinem Artikel gehoeren - also die von Hand hinterlegten, damit ein kuenftiger Scan in dieser Gruppe landet - haben gar keinen Artikel und damit auch keine Marke. Dort ist die Notiz die einzige Angabe, woran man den Code wiedererkennt ("Mehl bei Aldi"); sie bleibt deshalb erhalten. Der Hinweistext erklaert den Unterschied. Der Endpunkt zum Setzen der Notiz bleibt unveraendert - er wird fuer die Codes ohne Artikel weiterhin gebraucht. Getestet: Web-Build laeuft durch. Die Darstellung im Browser habe ich nicht selbst angesehen. Co-Authored-By: Claude Opus 4.8 --- web/src/components/BarcodeList.jsx | 26 +++++++++++++++----------- web/src/pages/Groups.jsx | 11 ++++++----- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/web/src/components/BarcodeList.jsx b/web/src/components/BarcodeList.jsx index b985837..72cb96c 100644 --- a/web/src/components/BarcodeList.jsx +++ b/web/src/components/BarcodeList.jsx @@ -54,22 +54,26 @@ export default function BarcodeList({
  • {b.code} - {/* Gehört der Code über einen Artikel zur Gruppe, steht das dabei – - eine Notiz ist trotzdem möglich. */} - {b.product_name && ( + {b.product_name ? ( + /* Gehört der Code zu einem Artikel, sagt dessen Marke bereits, + worum es geht – eine Notiz waere hier nur Dopplung. */ <> Artikel {besitzer(b)} - )} - {onEditNote && !disabled ? ( - { - const wert = e.target.value.trim(); - if (wert !== (b.note || "")) onEditNote(b.code, wert); - }} /> ) : ( - b.note && {b.note} + /* Codes ohne Artikel haben keine Marke. Hier ist die Notiz die + einzige Angabe, woran man den Code wiedererkennt. */ + onEditNote && !disabled ? ( + { + const wert = e.target.value.trim(); + if (wert !== (b.note || "")) onEditNote(b.code, wert); + }} /> + ) : ( + b.note && {b.note} + ) )} {/* Codes, die über einen Artikel hier stehen, lassen sich nicht diff --git a/web/src/pages/Groups.jsx b/web/src/pages/Groups.jsx index fce3075..3b99fc0 100644 --- a/web/src/pages/Groups.jsx +++ b/web/src/pages/Groups.jsx @@ -173,11 +173,12 @@ export default function Groups() { barcodes={selected.barcodes || []} productBarcodes={selected.product_barcodes || []} disabled={!isAdmin} - hint={"Codes der zugeordneten Artikel stehen automatisch hier und sind mit „Artikel“ " + - "gekennzeichnet; entfernen lassen sie sich nur, indem der Artikel die Gruppe " + - "wechselt. Eine Notiz kannst du bei jedem Code hinterlegen. Zusätzlich sind " + - "Codes möglich, die noch zu keinem Artikel gehören: Wird so einer beim " + - "Einlagern gescannt, landet der neu angelegte Artikel automatisch hier."} + hint={"Codes der zugeordneten Artikel stehen automatisch hier, gekennzeichnet mit " + + "„Artikel“ und der Marke; entfernen lassen sie sich nur, indem der Artikel " + + "die Gruppe wechselt. Zusätzlich sind Codes möglich, die noch zu keinem " + + "Artikel gehören – für die gibt es eine Notiz, weil ihnen die Marke fehlt. " + + "Wird so ein Code beim Einlagern gescannt, landet der neu angelegte Artikel " + + "automatisch hier."} onAdd={async (body) => { try { await api.addGroupBarcode(selected.id, body);