@extends('layouts.app') @section('title', 'Tableau de bord') @section('breadcrumb') @endsection @section('content') {{-- ===================== KPIs PRINCIPAUX ===================== --}}
{{ number_format($totalAnimals) }}
Cheptel total ({{ $activeLots }} lots)
{{ $mortalityRate }}%
Mortalité ce mois
{{ number_format($eggsToday) }}
Œufs collectés aujourd'hui
{{ number_format($monthlyProduction) }}
Production ce mois
{{-- ===================== LIGNE FINANCIÈRE ===================== --}}
{{ number_format($monthlyRevenue, 0, ',', ' ') }} FCFA
Chiffre d'affaires du mois
{{ number_format($monthlyExpenses, 0, ',', ' ') }} FCFA
Dépenses du mois
{{ number_format($monthlyMargin, 0, ',', ' ') }} FCFA
Marge brute du mois
{{-- ===================== INDICATEURS SECONDAIRES ===================== --}}
Stock bas
Articles sous seuil minimum
{{ $lowStockItems }}
Vaccinations à venir
Dans les 7 prochains jours
{{ $upcomingVaccinations }}
Tâches en cours
En attente ou en cours
{{ $pendingTasks }}
Alertes non lues
Nécessitant attention
{{ $unreadAlerts }}
{{-- ===================== GRAPHIQUES LIGNE 1 ===================== --}}
{{-- Revenus vs Dépenses (6 mois) --}}
Revenus vs Dépenses — 6 derniers mois
{{-- Mortalité (6 mois) --}}
Mortalité — 6 mois
{{-- ===================== GRAPHIQUES LIGNE 2 ===================== --}}
{{-- Production par type --}}
Production par type — mois en cours
@if(count($chartProductionLabels) > 0) @else

Aucune production enregistrée ce mois.

@endif
{{-- Dépenses par catégorie --}}
Dépenses par catégorie — mois en cours
@if(count($chartExpCatLabels) > 0) @else

Aucune dépense enregistrée ce mois.

@endif
{{-- ===================== STOCK CRITIQUE + TÂCHES EN RETARD ===================== --}}
{{-- Stock critique --}}
Stock critique
Voir le stock
@forelse($criticalStockList as $item)
{{ $item->name }}
Seuil : {{ $item->minimum_quantity }} {{ $item->unit }}
{{ $item->current_quantity }} {{ $item->unit }}
@empty
Aucun article en rupture.
@endforelse
{{-- Tâches en retard --}}
Tâches en retard
Toutes les tâches
@forelse($overdueTasks as $task)
{{ $task->title }}
Assigné à : {{ $task->assignee->name ?? 'N/A' }}
{{ ucfirst($task->priority) }}
{{ $task->due_date->format('d/m/Y') }}
@empty
Aucune tâche en retard.
@endforelse
{{-- ===================== CHEPTEL + ALERTES + VENTES ===================== --}}
{{-- Cheptel par espèce --}}
Cheptel par espèce
Lots
@forelse($lotsBySpecies as $item)
{{ $item->species->name ?? 'N/A' }} {{ number_format($item->total) }} têtes
@empty

Aucun lot actif.

@endforelse
{{-- Alertes récentes --}}
Alertes récentes
Toutes
@forelse($recentAlerts as $alert)
{{ $alert->title }} {{ $alert->created_at->diffForHumans() }}
{{ Str::limit($alert->message, 70) }}
@empty

Aucune alerte.

@endforelse
{{-- Dernières ventes --}}
Dernières ventes
Toutes
@forelse($recentSales as $sale)
{{ $sale->code }}
{{ $sale->customer->name ?? 'Anonyme' }}
{{ number_format($sale->total_amount, 0, ',', ' ') }} F
{{ ucfirst($sale->status) }}
@empty
Aucune vente.
@endforelse
@endsection @push('scripts') @endpush