Lagerort-Auswahl zeigt gewaehlten uebergeordneten Ort wieder an

CategorySelect wandelte den Wert per Number() um - bei den neuen Lagerort-Codes (Zeichenkette) ergab das NaN, sodass die Anzeige auf 'keiner' zuruecksprang, obwohl korrekt gespeichert wurde. Wert jetzt unveraendert nehmen und typunabhaengig (String-Vergleich) markieren, damit Zahl-IDs (Kategorien) wie Code-IDs (Lagerorte) passen.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-07-27 12:22:57 +02:00
parent d518b4aa23
commit 4607e3a6a8

View File

@@ -34,7 +34,9 @@ export default function CategorySelect({
const isRoot = value == null || value === "";
const extra = extraOptions.find((o) => String(o.value) === String(value));
const selectedId = !isRoot && !extra ? Number(value) : null;
// Wert unverändert übernehmen: IDs können Zahlen (Kategorien) ODER
// Zeichenketten (Lagerort-Codes) sein Number() würde Codes zu NaN machen.
const selectedId = !isRoot && !extra ? value : null;
const label = isRoot ? rootLabel : extra ? extra.label : nameById[selectedId] ?? rootLabel;
function place() {
@@ -155,7 +157,7 @@ export default function CategorySelect({
)}
<button
type="button"
className={`tree-pop-opt ${selectedId === n.id ? "sel" : ""}`}
className={`tree-pop-opt ${String(selectedId) === String(n.id) ? "sel" : ""}`}
onClick={() => pick(n.id)}
>
{n.name}