2.7 KiB
2.7 KiB
Phase 4G — Customer Portal (Mein Bereich)
Sechstes Päckchen aus Phase 4. Folgt auf 4E (Profile/Settings).
Status: ✅ abgeschlossen · Aufwand: ~½ Tag · Risiko: niedrig–mittel
Scope
Liste / Detail / Helper:
resources/views/livewire/customer/invoices.blade.php(194 Z.)resources/views/livewire/customer/tokens.blade.php(212 Z.)resources/views/livewire/customer/bookings.blade.php(52 Z.)resources/views/livewire/customer/company-switcher.blade.php(91 Z., sitzt in der Sidebar)resources/views/livewire/customer/press-kits/index.blade.php(119 Z.)resources/views/livewire/customer/press-kits/show.blade.php(734 Z., großes Detail-Cockpit)
NICHT in diesem Päckchen:
customer/press-releases/*— schon in 4A/4B/4C.customer/dashboard.blade.php— schon in Phase 2.customer/profile.blade.php,customer/security.blade.php— schon in 4E.- Admin-Bereich (Päckchen 4F).
Ziel
Alle Customer-Pages im Hub-Vokabular:
- Page-Header „User Backend"-Pille + Eyebrow „Mein Bereich · …" + H1 + Subtitle.
- KPI/Summary-Reihe wo Stats existieren
(
<x-portal.stat-card>). - Tabellen, Listen, Forms in
.panelmit.panel-head. - Flash-Boxen (success/info/warn/error) auf Hub-Token.
- Hub-Badges statt
flux:badge(außer dort wo speziell begründet). - Empty-States als Hub-Icon-Box.
- Company-Switcher: bleibt funktional, optisch Hub-Akzent.
Was explizit NICHT angefasst wird
- Volt-Logik in allen Dateien.
<flux:select variant="combobox">,<flux:input>usw.- Konfirm-/Edit-Modals in
press-kits/show.blade.php(falls vorhanden). - Bestimmte Strings, die Tests assertieren:
- tokens: „API-Tokens" (Heading), „API-Tokens werden erst freigeschaltet" (Hinweis).
- invoices: „Hinweis zu Rechnungen", „Rechnungsadresse im Profil pflegen", „Öffnen".
- company-switcher: „Firma öffnen",
route('me.press-kits.show', …). - press-kits.show: „Abrechnung", „Statistik" (Tab-Labels bzw. Section-Headings).
Akzeptanzkriterien
- Plan
customer/invoicescustomer/tokenscustomer/bookings(Coming-Soon-Stub)customer/company-switcher(Sidebar-Komponente)customer/press-kits/indexcustomer/press-kits/show(Stammdaten/Kontakte/PMs/ Abrechnung/Statistik im Hub-Stil; Forms inline behalten)CustomerPortalTest,CustomerCompanyContextTest,PanelConsolidationTestgrün (29 Tests, 131 Assertions).- Volle Suite: 230 passed, 3 skipped, 1 pre-existing fail
(
ApiDocumentationTest, fehlendedocs/api/v1.yml). - Build (portal: 418 kB CSS, 44 kB JS) + Pint clean + PROGRESS.