@extends('layouts.app') @section('title','Tableau de bord') @section('page-title','Tableau de bord') @section('topbar-actions') {{ now()->isoFormat('dddd D MMMM YYYY') }} @endsection @section('content') {{-- ── Stats row ──────────────────────────────────────────── --}}
Clients totaux
{{ $stats['total_clients'] }}
{{ $stats['active_clients'] }} actifs · {{ $stats['prospect_clients'] }} prospects
Chiffre d'affaires
{{ number_format($stats['total_revenue'],0,',',' ') }}
XAF — ventes acceptées
Alertes stock
{{ $stats['low_stock'] }}
Produits sous le seuil
Ventes aujourd'hui
{{ $stats['today_sales'] }}
{{ number_format($stats['today_revenue'],0,',',' ') }} XAF
Docs brouillon
{{ $stats['pending_docs'] }}
En attente de traitement
Inactifs
{{ $stats['inactive_clients'] }}
Clients à relancer
{{-- ── Main grid ──────────────────────────────────────────── --}}
{{-- Recent Sales --}}
Dernières ventes
Voir tout →
@forelse($recentSales as $sale) @empty @endforelse
RéférenceClientMontantStatut
{{ $sale->reference }} {{ $sale->client?->name ?? '—' }} {{ number_format($sale->amount,0,',',' ') }} XAF {{ $sale->status_label }}

Aucune vente

{{-- Low stock --}}
Stock critique
Voir tout →
@forelse($lowStockProducts as $p) @empty @endforelse
ProduitRéf.StockSeuil
{{ $p->name }} {{ $p->reference }} {{ $p->stock }} {{ $p->alert_stock }}

Stocks OK ✓

{{-- ── Recent movements + Quick actions ──────────────────── --}}
{{-- Movements --}}
Derniers mouvements de stock
Voir tout →
@forelse($recentMovements as $mv) @empty @endforelse
ProduitTypeQtéParDate
{{ $mv->product?->name ?? '—' }} {{ $mv->type_label }} {{ $mv->type==='out' ? '-' : '+' }}{{ $mv->quantity }} {{ $mv->user?->name ?? '—' }} {{ $mv->created_at->format('d/m H:i') }}

Aucun mouvement

{{-- Quick actions --}}
Actions rapides
@endsection