Warenwirtschaft: Review-Fix — toten Code in SalesController entfernt

usersDetail/customersDetail (samt users/usersStore/customersStore) waren
in einem großen Kommentarblock auskommentiert — die darin ergänzten
AP-33-shipped_status_locked-Guards also wirkungslos; der aktive Guard
sitzt in detail(). Block und die bereits auskommentierten Routen
ersatzlos entfernt.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Kevin Adametz 2026-07-20 13:19:26 +00:00
parent 50243a07b4
commit 93d5afca13
3 changed files with 1 additions and 230 deletions

View file

@ -282,6 +282,7 @@ Der Warenkorb kommt also **per Knopfdruck** (Fulfillment-Übergabe), nicht autom
| 20.07.2026 | **Review-Fix: Abwicklungs-Board (Rechte-Links, 500er-Cap, Kleinigkeiten)** | **(1) Copyreader-Links:** Bestellnummern in Abwicklung + API-Bestellungen verlinkten auf `admin_sales_detail` (admin ≥ 7) — für Versand-Mitarbeiter (copyreader, Kundenentscheid AP-33 Punkt 4) ein stiller Redirect nach `/home`; Link jetzt nur für Admins, sonst reiner Text. **(2) 500er-Cap:** Kacheln „Kommissionieren/Versandfertig" und deren Filter-Listen rechneten auf den neuesten 500 offenen Bestellungen — bei Rückstau wären ausgerechnet die **ältesten versandfertigen unsichtbar** gewesen, und der Hinweis-Banner verglich den Post-Filter-Count (erschien nie). Jetzt: Zähler + Filter über **alle** offenen Bestellungen, gekappt wird nur die Anzeige („neueste :n von :total" + „Alle anzeigen"). `whereDate()` → `whereBetween` (indexfähig, Vorbereitung Index-AP). **(3)** Packlisten-Toggle nutzt `data-order-id` statt Link-Text-Scraping; Gewicht über `formatNumber()`. | `OrderFulfillmentTest` +2 (copyreader ohne Link / admin mit Link; 18 grün) |
| 20.07.2026 | **Review-Fix: Rohstoffbestand — Badge vs. Rezeptur-Scope** | Der 17.07. gedrehte Default-Scope „recipe" blendet rezepturlose Rohstoffe aus, das Sidebar-Badge (`criticalIngredientCount`) zählt aber alle aktiven — ein kritischer Rohstoff außerhalb der Rezepturen ergab Badge „1", Seite „0 kritisch". Jetzt zeigt die recipe-Ansicht einen **Hinweis** („N kritische außerhalb der Herstellerrezepturen — Alle anzeigen"), sobald das Badge mehr zählt als die Liste; Empty-State-Text scope-abhängig korrigiert. Badge-Zählregel bewusst unverändert (global) — der Hinweis schließt die Lücke, ohne dass eine kritische Neuentwicklung ganz aus dem Badge fällt. | `RawMaterialStockTest` +1 (Hinweis im recipe-Scope, keiner im all-Scope; 20 grün) |
| 20.07.2026 | **Review-Fix: Performance — Indizes + schlanke API-Log-Seite** | **Indizes** (Migration `2026_07_20_100000`): `shopping_orders.shipped`/`shipped_at`/`created_at` (Board-Filter + Tages-Kacheln, vorher nur `txaction`/`shipping_option`) und `products.wp_number` (SKU-Auflösung der API-Bestellungen, vorher ohne Index). **API-Bestellungen-Seite:** lud für jede der bis zu 500 Zeilen das komplette JSON-`payload` und serialisierte es zusätzlich pretty-printed in Inline-`data`-Attribute (Mehr-MB-HTML). Jetzt: neue Spalte `positions_count` (Migration `2026_07_20_110000` mit Backfill), Liste selektiert **ohne payload**, der Inhalt lädt erst beim Öffnen des Modals über neuen `show`-Endpoint (`api-orders/{id}`); Cap-Hinweis „neueste :n von :total". | `ApiOrderLogTest` +2 (positions_count gesetzt, Inhalt on-demand; 11 grün) |
| 20.07.2026 | **Review-Fix: toten Code entfernt (SalesController)** | Der Review fand die AP-33-`shipped_status_locked`-Guards in `usersDetail()`/`customersDetail()` wirkungslos, weil beide Methoden samt `users()`/`usersStore()`/`customersStore()` in einem großen `/*…*/`-Block (Zeilen 197-414) auskommentiert waren — die zugehörigen Routen ebenfalls (bereits auskommentiert in `web.php`). Der aktive Guard sitzt korrekt in `detail()`. Toten Methoden-Block und die auskommentierten Routen ersatzlos entfernt (−219 Zeilen); nichts Aktives referenzierte sie (Verlinkungen nur in `_bak`-Views). | Volle Suite unverändert **296 grün, 1107 Assertions** |
| _offen_ | AP-32 | Versand im System: DHL-Etiketten per API — **neu aufgenommen + Ansatz dokumentiert (§4, 15.07.2026)**; Klärungspunkte (DHL-Konto, Versandprodukte, Druck-Setup) für nächste Anforderungsrunde notiert. **Zwischenstand 17.07.2026: Brückenlösung aktiv** (Label aus dem Shop, s. Protokollzeile) — deckt den Versand-Flow ab, bis die DHL-Klärungen da sind | – |
| _offen_ | AP-14/15/16/17 | Audit-Trail, Blockrechte, 2FA, WaWi-Einstellungen | – |