Firstlines: Seite und Dashboard-Kachel zaehlen wieder dieselbe Menge
Beim Formulieren der Kundenrueckmeldung aufgefallen: der vorige Commit hat die Inkonsistenz an einer Stelle behoben und an einer anderen wieder eingebaut. Die Kachel zaehlt ueber isActiveConsultant() (Mitgliedsebene + gesetztes Abrechnungskonto), die Kopfzeile der Firstlines-Seite zaehlte aber ueber isActiveAccount() (Konto in der Zukunft). Bei abgelaufenen Jahresgebuehren nannten Kachel und Seite damit unterschiedliche Zahlen - genau das, was der Fix vermeiden sollte. firstlines() bekommt den BackofficeDashboardService injiziert und nutzt dieselbe Regel. Test um beide Randfaelle erweitert (abgelaufenes vs. gar kein Abrechnungskonto), damit die Doppel-Definition nicht zurueckkommt. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
cee4a2e0eb
commit
8dc0361fec
6 changed files with 168 additions and 11 deletions
|
|
@ -12,6 +12,7 @@ use App\Services\Abo\PaylineForecastService;
|
|||
use App\Services\Abo\TeamAboOverviewService;
|
||||
use App\Services\AboHelper;
|
||||
use App\Services\AboOrderCart;
|
||||
use App\Services\Backoffice\BackofficeDashboardService;
|
||||
use App\Services\Backoffice\SalesVolumePoints;
|
||||
use App\Services\BusinessPlan\ExportBot;
|
||||
use App\Services\BusinessPlan\TreeCalcBot;
|
||||
|
|
@ -716,7 +717,7 @@ class TeamController extends Controller
|
|||
* mit Monats-Gesamtpunkten und Kontaktdaten — für alle Berater, verlinkt
|
||||
* von der Firstlines-Kachel der Monatsstatistik.
|
||||
*/
|
||||
public function firstlines(): View
|
||||
public function firstlines(BackofficeDashboardService $dashboardService): View
|
||||
{
|
||||
$user = User::find(\Auth::user()->id);
|
||||
$month = max(1, min(12, (int) Request::get('month', now()->month)));
|
||||
|
|
@ -752,7 +753,11 @@ class TeamController extends Controller
|
|||
'rows' => $rows,
|
||||
// Die Dashboard-Kachel zeigt nur aktive Berater; die Liste zeigt alle
|
||||
// (inaktive sind fürs Nachfassen gerade interessant) und weist beide Zahlen aus.
|
||||
'activeCount' => collect($rows)->where('is_active_account', true)->count(),
|
||||
// Zwingend dieselbe Regel wie die Kachel (isActiveConsultant), NICHT
|
||||
// isActiveAccount — sonst nennt die Seite eine andere Zahl als die Kachel.
|
||||
'activeCount' => $firstlines
|
||||
->filter(fn (User $member) => $dashboardService->isActiveConsultant($member))
|
||||
->count(),
|
||||
'selectedMonth' => $month,
|
||||
'selectedYear' => $year,
|
||||
'filterMonths' => HTMLHelper::getTransMonths(),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue