{{ $isDelegation ? 'Tableau de Bord de ' . $displayUser->firstname . ' ' . $displayUser->name : __('Dashboard') }}

@if($isDelegation)

⚠️ Mode Délégation Actif

@endif
@if($isDelegation) ⬅️ Retourner à mon dashboard @endif
{{-- CAS 1 : AFFICHAGE POUR LE SUPER ADMIN - Seulement si pas en mode délégation --}} @if(Auth::user()->isSuperAdmin() && !$isDelegation)

🛠 Console d'Administration Globale

{{-- Alerte Jours Fériés --}} @php $currentYear = date('Y'); $nextYear = $currentYear + 1; $month = (int)date('n'); $showAlert = false; $targetYear = $currentYear; if ($month == 12) { if (!\App\Models\JourFerie::whereYear('date_ferie', $nextYear)->exists()) { $showAlert = true; $targetYear = $nextYear; } } elseif ($month == 1) { if (!\App\Models\JourFerie::whereYear('date_ferie', $currentYear)->exists()) { $showAlert = true; $targetYear = $currentYear; } } @endphp @if($showAlert)
⚠️

Calendrier des jours fériés

Pensez à importer les jours fériés pour l'année {{ $targetYear }}.

Importer {{ $targetYear }}
@endif
@endif {{-- DASHBOARD AGENT (MOI OU DÉLÉGATION) --}} @if(!Auth::user()->isSuperAdmin() || $isDelegation) @if($displayUserAlert)
🖨️

Action Requise : Impression Synthèse {{ ucfirst(now()->subMonth()->translatedFormat('F Y')) }}

La déclaration du mois de {{ now()->subMonth()->translatedFormat('F Y') }} n'a pas encore été imprimée. Merci de la finaliser au plus vite.

Imprimer {{ ucfirst(now()->subMonth()->translatedFormat('F Y')) }}
@endif
{{-- COLONNE GAUCHE : DÉLÉGATIONS (Si présentes) --}} @if($delegateurs->count() > 0)

🤝 Délégations reçues

@foreach($delegateurs as $del) @php $isActive = ($isDelegation && $displayUser->id === $del->id_user); $isDisabled = ($del->is_online && !$isActive); @endphp @if($isDisabled)
👤
{{ strtoupper($del->user->name) }} {{ $del->user->firstname }}
En ligne
@else
👤
{{ strtoupper($del->user->name) }} {{ $del->user->firstname }} @if($del->has_alert) ! @endif @if($isActive) @endif
@endif @endforeach
{{ $delegateurs->count() }} agent(s) délégué(s)
@endif {{-- COLONNE CENTRALE : COMPTEURS --}}

📊 @php $soldeTotal = $compteurs->sum('solde_valide'); $totalExpiringSoon = $compteurs->where('is_expiring_soon', true)->sum('solde_restant'); $totalLost = $compteurs->where('is_expired', true)->sum('solde_restant'); // Groupement par catégorie pour le détail global $totalInitial = $compteurs->where('solde_initial', '>', 0)->sum('solde_valide'); $totalHS = $compteurs->where('heures_acquises', '>', 0)->filter(fn($c) => str_contains($c->libelle, 'HS'))->sum('solde_valide'); $totalAst = $compteurs->where('heures_acquises', '>', 0)->filter(fn($c) => str_contains($c->libelle, 'Astreinte'))->sum('solde_valide'); @endphp {{-- Header des compteurs : VUE GLOBALE --}}
{{-- Solde Disponible --}}
✅
Solde Disponible
{{ \App\Helpers\TimeHelper::decimalToHours($soldeTotal) }}
Initial
{{ \App\Helpers\TimeHelper::decimalToHours($totalInitial) }}
HS
{{ \App\Helpers\TimeHelper::decimalToHours($totalHS) }}
Ast.
{{ \App\Helpers\TimeHelper::decimalToHours($totalAst) }}
{{-- Expire Bientôt --}}
⚠️
À consommer d'urgence
{{ \App\Helpers\TimeHelper::decimalToHours($totalExpiringSoon) }}

Expire dans moins de 30 jours

{{-- Heures Perdues --}}
🚫
Heures Perdues
{{ \App\Helpers\TimeHelper::decimalToHours($totalLost) }}

Déjà expirées (non utilisables)

{{-- Info bulle --}}
💡
Vos compteurs sont calculés en temps réel selon la règle **FIFO** (First-In, First-Out). Vos consommations utilisent automatiquement vos heures les plus anciennes pour minimiser les pertes.

{{-- ACTIONS RAPIDES --}}

⏱ Saisir des heures

Interventions ou heures supp.

Déclarer

🌙 Saisir une astreinte

Période d'astreinte effectuée.

Déclarer

🧘 Mes récupérations

Heures déjà consommées.

Déclarer
{{-- COLONNE DROITE : INFOS AGENT --}}
👤

{{ $displayUser->firstname }} {{ $displayUser->name }}

{{ $displayUser->email }}

Service : {{ $displayUser->profileAgent?->serviceActuel?->service?->libelle_service ?? 'Non défini' }}
Rôle : @if($displayUser->profileAgent?->est_admin) Admin @elseif($displayUser->profileAgent?->est_rh) RH @else Agent @endif
@if(!$isDelegation)

💡 Le saviez-vous ?

Vous pouvez déléguer la saisie de vos heures à un collègue de votre service depuis les paramètres de votre profil.

Paramétrer ma délégation
@endif
@endif