Abo: Bestellung extern als erledigt markieren (ohne Rechnung/Inkasso)
Neue Admin-Funktion fuer angehaltene Abo-Bestellungen, die der Kunde ausserhalb des Systems geliefert und verrechnet hat. Aktion (AboExternalCompletionService): - Punkte gutschreiben wie bei eingegangener Zahlung (SalesPointsVolume, idempotent gegen Doppelbuchung) - UserAboOrder auf neuen gruenen Status 8 "extern erledigt"; paid bleibt false - Bestellung: shipped=2 (Lieferung bestaetigt), keine Rechnung/kein Lieferschein - Blockade aufheben: Abo zurueck auf status=2 (okay), aktiv, next_date neu, damit der naechste Termin regulaer laeuft - wie bei regulaerer Ausfuehrung: IncentiveTracker + AboOneTimeService-Purge Einstiegspunkte: Button + Bestaetigungs-Modal auf der Kunden-Bestelldetailseite (SalesController) und auf der Abo-Detailseite (Admin\AboController@externDone, Route admin_abos_extern_done). Status 8 (gruen) in UserAbo/UserAboOrder, Labels de/en. Tests: tests/Feature/AboExternalCompletionTest (Happy Path, Idempotenz, bezahlt-/Nicht-Abo-Guards, Abo-Detail-Einstieg) - 5 gruen. Zusaetzlich: docs/2026-06-11-test-suite-vorbestehende-fehler.md - Diagnose der 93 vorbestehenden (von master geerbten) Test-Suite-Fehler. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
ccc6f85809
commit
4709dfde55
13 changed files with 609 additions and 59 deletions
|
|
@ -136,6 +136,7 @@ class UserAbo extends Model
|
|||
5 => 'abo_finish',
|
||||
6 => 'abo_inactive',
|
||||
7 => 'abo_grace',
|
||||
8 => 'abo_extern_done',
|
||||
];
|
||||
|
||||
public static $statusColors = [
|
||||
|
|
@ -147,6 +148,7 @@ class UserAbo extends Model
|
|||
5 => 'info',
|
||||
6 => 'warning',
|
||||
7 => 'danger',
|
||||
8 => 'success',
|
||||
];
|
||||
|
||||
public function user()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue