mivita/resources/lang/de/abo_history.php
Kevin ac3bd6e8ea Statistiken/Abo: Kundenfeedback 2026-07-24 komplett umgesetzt + Steuern: DATEV-Fixes 08+09/2025 (Sammel-Commit Branch-WIP)
Feedback-Umsetzung (dev/2026-07-22/feedback-analyse-2026-07-24.md, alle 10 Punkte):
- VIP-Statistik: eigener Berater ('ich', Linie 0) in Neue-Kundenabos- und beiden Top-10-Listen; Top-10-Umsatz sortiert nach abgerechneten Ist-Punkten + Abo-Anzahl-Spalte; Fußnote nicht-payline-wirksame Punkte (SalesVolumePoints::nonPaylinePoints)
- Führungskräfte-Liste: beide Sichten 'direkt' (an nächster FK abgeschnitten, additiv) und 'gesamt' (komplette Downline), Gesamt-Spalte nach Kundenzählweise
- Team-Abos: je Ebene 'abgerechnet (Monat)' und 'bis zum 25. erwartet'; Payline-Karte mit Teamabo-/Kundenabo-Zählern
- Incentive-Live-Ranking: Qualifizierte zuerst nummeriert (fixt auch isWinner rank<=max_winners)
- Porto: Netto-/Brutto-Kennzeichnung (Berater netto, Endkunden inkl. MwSt., portal_view-Flag; auch CRM-/Shop-Warenkorb + Checkout), Yard::shipping_tax-Fix
- Struktur-Ansicht: Abo-Badges 'A' (eigenes Abo) und '(n)' (Kundenabos) je Teampartner, gebatcht
- Abo-Löschung: Softdelete setzt active=0 (UserAbo deleting-Hook) + Bereinigungs-Migration für gelöschte-aber-aktive Abos
- Doku: technische Analyse + Kundinnen-Feedback-Dokument unter dev/2026-07-22/
- Tests: IncentiveRankingTest, TeamStructureAboBadgesTest, YardShippingTaxTest (neu); BackofficeStatisticsListsTest, TeamAboOverviewTest, PaylineForecastServiceTest, AboAdminDeleteTest, AboOneTimeViewTest erweitert

Außerdem enthalten (Branch-WIP vor dem Feedback): DATEV-Abgleich-Fixes 08+09/2025, USt-ID-Live-Validierung sowie restliche unkommittete Stände (u. a. Abo-Pause-Sprachkeys).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-24 13:56:02 +00:00

60 lines
2.2 KiB
PHP

<?php
return [
// Überschriften
'initial_composition' => 'Ursprüngliche Zusammenstellung',
'change_history' => 'Änderungsverlauf',
'no_initial_data' => 'Keine Ursprungsdaten vorhanden (Abo wurde vor Aktivierung der Historie erstellt)',
'no_changes' => 'Keine Änderungen vorhanden',
// Spalten
'col_date' => 'Datum',
'col_action' => 'Aktion',
'col_product' => 'Artikel',
'col_details' => 'Details',
'col_changed_by' => 'Geändert von',
'col_channel' => 'Bereich',
// Aktionen
'action_initial' => 'Ursprung',
'action_added' => 'Hinzugefügt',
'action_removed' => 'Entfernt',
'action_qty_changed' => 'Menge geändert',
'action_comp_changed' => 'Comp getauscht',
'action_comp_added' => 'Comp hinzugefügt',
'action_comp_removed' => 'Comp entfernt',
'action_rollback' => 'Zurückgesetzt',
// Beschreibungen
'desc_initial' => 'Menge: :qty',
'desc_added' => 'Menge: :qty',
'desc_removed' => 'Artikel entfernt',
'desc_qty_changed' => 'Menge von :from auf :to geändert',
'desc_comp_changed' => 'Ersetzt: :old',
'desc_comp_added' => 'Vom System hinzugefügt',
'desc_comp_removed' => 'Vom System entfernt',
'desc_rollback' => 'Auf Ursprung zurückgesetzt',
// Channels
'status_history_title' => 'Status-Änderungen (Pause & Kündigung)',
'status_paused' => 'Pausiert',
'status_cancelled' => 'Gekündigt',
'status_deactivated' => 'Deaktiviert',
'status_reactivated' => 'Reaktiviert',
'status_shift' => 'Ausführung von :from auf :to verschoben',
'channel_admin' => 'Admin',
'channel_user_me' => 'Berater',
'channel_user_ot' => 'Berater (Kunde)',
'channel_portal' => 'Kundenportal',
'channel_system' => 'System',
// Preistyp
'price_net' => 'netto',
'price_gross' => 'brutto',
// Rollback
'rollback_btn' => 'Auf Ursprung zurücksetzen',
'rollback_confirm' => 'Möchten Sie das Abo wirklich auf den Ursprungszustand zurücksetzen? Alle aktuellen Produkte werden durch die ursprüngliche Zusammenstellung ersetzt.',
'rollback_success' => 'Das Abo wurde erfolgreich auf den Ursprungszustand zurückgesetzt.',
'rollback_no_data' => 'Kein Rollback möglich: Keine Ursprungsdaten vorhanden.',
];