{{-- Ressources --}} {{-- Loading --}}
@php $activeFiltersCount = 0; if (!empty($centre_id) && $centre_id != 0) $activeFiltersCount++; if (!empty($domaine_id) && $domaine_id != 0) $activeFiltersCount++; if (!empty($filiere_id) && $filiere_id != 0) $activeFiltersCount++; if (!empty($mode_admission) && $mode_admission != 0) $activeFiltersCount++; if (!empty($langue_id) && $langue_id != 0) $activeFiltersCount++; if (!empty($centre_diplome_id) && $centre_diplome_id != 0) $activeFiltersCount++; if (!empty($niveau_id) && $niveau_id != 0) $activeFiltersCount++; @endphp
{{-- HEADER --}}
P

Évolution du chiffre d'affaires

Analyse de la tendance annuelle, par centre, filière, diplôme et nationalité

{{ date('Y') }}
{{-- BARRE DE FILTRES --}}
@if($centre_id) {{ getCenterName($centre_id) }} @endif @if($domaine_id) {{ getDomaineName($domaine_id) }} @endif @if($filiere_id) {{ getFiliName($filiere_id) }} @endif @if($mode_admission) {{ getModeAd($mode_admission) }} @endif @if($langue_id) {{ getLangueName($langue_id) }} @endif @if($centre_diplome_id) {{ getCenterName($centre_diplome_id) }} @endif @if($niveau_id) {{ getNiveauName($niveau_id) }} @endif
{{-- PANEL FILTRES --}}
@if(auth()->user()->user_role_id == 7 || auth()->user()->user_role_id == 1)
@else
{{ $user_centre_nom }}
@endif
@if(auth()->user()->user_role_id == 7 || auth()->user()->user_role_id == 1)
@endif
@php $allVals = array_values($ca_last_years); $allKeys = array_keys($ca_last_years); $kpiTotal = array_sum($allVals); $kpiLastAn = end($allKeys); $kpiLastVal = end($allVals); $kpiPrevVal = count($allVals) > 1 ? $allVals[count($allVals)-2] : 0; $kpiDelta = $kpiPrevVal > 0 ? round(($kpiLastVal-$kpiPrevVal)/$kpiPrevVal*100,1) : 0; $kpiCentres = count($ca_last_center_years); $kpiNat = count($ca_last_nationalite_years); @endphp {{-- KPI --}}
CA total cumulé
{{ number_format($kpiTotal,0,',',' ') }}
toutes années
CA {{ $kpiLastAn }}
{{ number_format($kpiLastVal,0,',',' ') }}
{{ $kpiDelta>=0?'+':'' }}{{ $kpiDelta }}%vs année préc.
Centres actifs
{{ $kpiCentres }}
centre contributeurs
Nationalités
{{ $kpiNat }}
Top {{ $kpiNat }} pays
{{-- ROW 1 : Évolution CA + Donut diplôme --}}
Évolution du CA Courbe annuelle avec aire de tendance
Ligne + aire
Répartition diplôme {{ $kpiLastAn }}
Donut
{{-- ROW 2 : Centre + Filière (côte à côte) --}}
CA par centre Barres groupées
Barres
CA par filière Top 8 — courbes
Courbes
{{-- ROW 3 : Nationalité + Diplôme (aires) --}}
Évolution du CA par nationalité Top 12 — lignes épurées
Lignes
Évolution du CA par diplôme Aires lissées superposées
Aires lissées
{{-- ROW 4 : Top nationalités + Détail diplôme --}}
Top nationalités CA — {{ $kpiLastAn }}
@php $natPal = ['#185FA5','#1D9E75','#D85A30','#534AB7','#BA7517','#D4537E','#0F6E56','#639922', '#E24B4A','#2A9D8F','#8A2BE2','#F4A261']; $natColorMap = []; $natSortedKeys = array_keys($ca_last_nationalite_years); sort($natSortedKeys); foreach ($natSortedKeys as $idx => $kName) $natColorMap[$kName] = $natPal[$idx % count($natPal)]; $natLast = []; foreach ($ca_last_nationalite_years as $nom=>$vals) $natLast[$nom] = $vals[$kpiLastAn] ?? 0; arsort($natLast); $top8 = array_slice($natLast, 0, 8, true); $maxNat = max($top8 ?: [1]) ?: 1; @endphp
@foreach ($top8 as $nom=>$val) @php $i=$loop->index; $c=$natColorMap[$nom] ?? '#185FA5'; @endphp
{{ $i+1 }} {{ $nom }}
{{ number_format($val,0,',',' ') }}
@endforeach
CA par diplôme Détail — {{ $kpiLastAn }}
@php $dipPal = ['#185FA5','#1D9E75','#D85A30','#534AB7','#BA7517','#D4537E','#0F6E56','#639922']; $dipColorMap = []; $dipSortedKeys = array_keys($ca_last_diplome_years); sort($dipSortedKeys); foreach ($dipSortedKeys as $idx => $kName) $dipColorMap[$kName] = $dipPal[$idx % count($dipPal)]; $dipLast = []; foreach ($ca_last_diplome_years as $nom=>$vals) $dipLast[$nom] = $vals[$kpiLastAn] ?? 0; arsort($dipLast); $dipTop = array_slice($dipLast, 0, 7, true); $dipTot = array_sum($dipTop) ?: 1; @endphp
@foreach ($dipTop as $nom=>$val) @php $c = $dipColorMap[$nom] ?? '#185FA5'; @endphp
{{ $nom }}
{{ round($val/$dipTot*100) }}%
@endforeach