100 lines
2.9 KiB
Markdown
100 lines
2.9 KiB
Markdown
# 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
|