diff --git a/DEVLOG.md b/DEVLOG.md index cc6e541..500ae5a 100644 --- a/DEVLOG.md +++ b/DEVLOG.md @@ -3369,3 +3369,16 @@ Keine Commits in dieser Session. - frontend/src/pages/admin/ObjektSection.tsx | 71 +++++++++++++++++++++++++++ --- +## 2026-09-04 21:23 – 21:24 (1m) +**Beschreibung:** Claude Code Session +**Projekt:** asb-material + +### Commits +- 411e67a Materialstamm-Bereinigung 2026-09-04: 17 Dubletten zusammengelegt + +### Geänderte Dateien +- DEVLOG.md | 144 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +- backend/scripts/material_bereinigung_2026-09-04.py | 110 +++++++++++++++++++++++++++++++++++++++++++++++++++ +- ergebnisse/material_bereinigung_log.md | 66 +++++++++++++++++++++++++++++++ + +--- diff --git a/backend/scripts/material_bereinigung_2026-09-04.py b/backend/scripts/material_bereinigung_2026-09-04.py index ea68af3..b6d4437 100644 --- a/backend/scripts/material_bereinigung_2026-09-04.py +++ b/backend/scripts/material_bereinigung_2026-09-04.py @@ -43,6 +43,9 @@ DUBLETTEN_PAARE = [ (170, 9), # "Schlingentupfer" / "Schlinggazetupfer" (62, 81), # "Verbandtuch 60x80" / "Verbandstuch 160x80" (Tippfehler) (48, 149), # "Elastische Binde" / "Elastische Binden" + (161, 102), # "Beatmungsmasken S" / "Beatmunsmaske" (Excel-Kontext: direkt + # nach "Beatmungsbeutel Kind" - Nutzer bestätigt Größe S, + # andere Rucksäcke führen Beatmungsmaske S/M/L einzeln) ] # Tabellen mit FK auf material.id (Stand 2026-09-04, siehe alembic-Migrationen). diff --git a/ergebnisse/material_bereinigung_log.md b/ergebnisse/material_bereinigung_log.md index 0c8cafc..35c2e86 100644 --- a/ergebnisse/material_bereinigung_log.md +++ b/ergebnisse/material_bereinigung_log.md @@ -11,7 +11,7 @@ Datenbereinigung, kein Schema-Wechsel). Ausgangslage: 172 Materialien, per Fuzzy-Matching (Normalisierung + `difflib`) auf Dubletten/Tippfehler geprüft. Skript: `material_bereinigung_2026-09-04.py`. -### Zusammengelegt (17 Paare, 172 → 155 Materialien) +### Zusammengelegt (18 Paare, 172 → 154 Materialien) | Behalten | Entfernt | Grund | |---|---|---| @@ -32,6 +32,7 @@ auf Dubletten/Tippfehler geprüft. Skript: `material_bereinigung_2026-09-04.py`. | Schlingentupfer | Schlinggazetupfer | Nutzer-Entscheidung: gleiches Material | | Verbandtuch 60x80 | Verbandstuch 160x80 | Nutzer-Entscheidung: Tippfehler ("1" zu viel) | | Elastische Binde | Elastische Binden | Nutzer-Entscheidung: reiner Plural-Unterschied | +| Beatmungsmasken S | Beatmunsmaske | Excel-Kontext + Nutzer-Bestätigung, siehe Nachtrag unten | Ein echter Konflikt trat bei "Aluderm Strips/Stripes" auf: beide Varianten waren bereits unabhängig in denselben Vorlagen (1, 4) bzw. demselben Objekt @@ -46,6 +47,15 @@ waren bereits unabhängig in denselben Vorlagen (1, 4) bzw. demselben Objekt als erste `geraet_instanz`-Zeile an der betroffenen Objektposition angelegt (Karte 14). +### Nachtrag 2026-09-04 (später): "Beatmunsmaske" geklärt + +**161 "Beatmungsmasken S"** ← **102 "Beatmunsmaske"** zusammengelegt (154 +Materialien). Klärung über Original-Excel (`Rettungsrucksack.xlsx`, Zeile 50): +"Beatmunsmaske" steht dort direkt nach "Beatmungsbeutel Kind" im +Kinder-Abschnitt der Liste – Nutzer bestätigt Größe S. Andere Rucksäcke +führen "Beatmungsmaske S/M/L" bereits einzeln, S/M/L bleiben eigenständige +Materialien (keine Zusammenlegung der Größen selbst). + ### Bewusst NICHT verändert (Nutzer-Entscheidung) - **151 "Rollenpflaster"** (ohne Größenangabe, neben 53 "gross", 106 @@ -53,11 +63,6 @@ waren bereits unabhängig in denselben Vorlagen (1, 4) bzw. demselben Objekt Rettungsrucksack) genutzt, keine Größe aus dem Kontext ableitbar – bleibt eigenständig, bis geklärt ist, welcher Größe die bestehenden Verwendungen entsprechen. -- **102 "Beatmunsmaske"** (Tippfehler, neben 161/162/163 "Beatmungsmasken - S/M/L"): wird in Vorlage/Objekt/Kontroll-Historie genutzt (Rettungsrucksack - Standard), aber unklar welcher Größe die bestehende Verwendung entspricht – - Nutzer-Feedback: "Schreibfehler, müssen wir uns nochmal anschauen". Noch - offen, bei nächster Gelegenheit klären und nachziehen. ### Bewusst als eigenständig bestätigt (kein Fund, nur Ähnlichkeits-Rauschen)