# mivita Payment Dashboard – Laravel Modul Aktivitäts- und Störungs-Dashboard für die Zahlungsanbieter (PAYONE, Stripe, PayPal, Mollie). --- ## Installation ### 1. Dateien kopieren Kopiere die Ordner in dein bestehendes Laravel-Projekt: ``` database/migrations/ → in dein database/migrations/ app/Models/ → PaymentIncident.php + IncidentActivity.php nach app/Models/ app/Http/Controllers/ → PaymentDashboardController.php nach app/Http/Controllers/ resources/views/ → Ordner dashboard/ und layouts/dashboard.blade.php routes/ → payment-dashboard.php ``` ### 2. Migration ausführen ```bash php artisan migrate ``` Erstellt drei Tabellen: - `payment_incidents` – Incidents / Störungen - `incident_activities` – Kommunikationsverlauf pro Incident - `provider_uptime_logs` – Uptime-Logs (für spätere Automatisierung) ### 3. Routes einbinden In `routes/web.php` ergänzen: ```php require base_path('routes/payment-dashboard.php'); ``` ### 4. Layout prüfen Das Dashboard hat ein eigenes Layout (`layouts/dashboard.blade.php`). Falls du ein bestehendes App-Layout verwenden willst, passe die `@extends`-Direktive in den Views entsprechend an. --- ## URLs | URL | Beschreibung | |----------------------------------|-------------------------------------| | `/payment-dashboard` | Entwickler-Ansicht (Kevin) | | `/payment-dashboard/management` | GF-Ansicht (Alois) – read-only | | `/payment-dashboard/{id}` | Incident-Detail mit Timeline | --- ## Features ### Entwickler-Ansicht - Alle offenen Incidents mit Schnell-Status-Update - Neuen Incident anlegen (Modal) - Kommunikations-Timeline (E-Mails, Tickets, Calls, Notizen) - Vollständige Incident-Tabelle mit Pagination - Anbieter-Übersicht (PAYONE, Stripe, PayPal, Mollie) ### GF-Ansicht (Alois) - Klare Ampel-Karten: Offene Störungen, betroffener Umsatz, PAYONE-Probleme - Anbieter-Status auf einen Blick - Aktive Störungen mit Schwere und Dauer - Letzte Vorfälle als Tabelle ### Incident-Detail - Vollständiger Kommunikationsverlauf als Timeline - Aktivitäten hinzufügen (E-Mail, Telefonat, Ticket, Notiz, Anbieter-Antwort) - Status direkt ändern (löst automatisch Aktivitätseintrag aus) --- ## Nächste Ausbaustufen (optional) - **Automatischer Uptime-Check**: Artisan Command, der PAYONE/Stripe-Endpunkte periodisch prüft und bei Ausfall automatisch einen Incident anlegt: ```bash php artisan payment:check-uptime ``` - **E-Mail-Benachrichtigung**: Bei neuem Critical-Incident automatisch Mail an kevin@adametz-media.de - **Rollen**: Middleware, die Alois nur auf `/management` weiterleitet --- ## Technik - Laravel (Blade Templates, Eloquent, Form Requests) - Kein zusätzliches JS-Framework – reines Blade + CSS - Dark Mode Design, responsive - Alle Labels auf Deutsch