{% extends 'layouts/admin_layout.html.twig' %} {% block title %}Tableau de Bord Décisionnel - GPIM{% endblock %} {% block stylesheets %} {{ parent() }} {% endblock %} {% block content %}
{# HEADER & FILTRE RAPIDE #}

Vue d'ensemble de l'activité au {{ "now"|date("d/m/Y H:i") }}

{# 1. ALERTES CRITIQUES (Dossiers Orphelins) #} {% if souscriptions_orphelines|length > 0 %}
{{ souscriptions_orphelines|length }} Nouveaux prospects en attente d'affectation
Ces clients ont souscrit en ligne mais n'ont pas encore de commercial attitré.
{% endif %} {# 2. KPI FINANCIERS ET STOCK #}
CHIFFRE D'AFFAIRES (CA)

{{ kpi.caGlobal|number_format(0, ',', ' ') }} FCFA

+3.4% vs mois dernier

TAUX DE RECOUVREMENT

{{ kpi.tauxRecouvrement|default(0)|round }}%

STOCK DISPONIBLE

{{ kpi.lotsDisponibles }} / {{ kpi.totalLots }}

Lots non réservés

ARRIÉRÉS DE PAIEMENT

{{ kpi.montantImpayes|number_format(0, ',', ' ') }}

Relances à effectuer

{# 3. ANALYSE GRAPHIQUE #}
Evolution des Encaissements vs Prévisions
Répartition du Stock par Statut
Vendus {{ kpi.percentVendu }}%
Disponibles {{ kpi.percentDispo }}%
Réservés {{ kpi.percentReserve }}%
{# 4. DERNIÈRES OPÉRATIONS #}
Flux de trésorerie récent (Paiements)
Voir tout
{% for p in derniers_paiements %} {# CORRECTION ENUM ICI #} {% endfor %}
Date Client / Lot Mode Montant Statut Justificatif
{{ p.datePaiement|date('d/m/Y') }}
{{ p.souscription.client.nom }}
{{ p.souscription.lot.numeroLot }}
{{ p.moyenPaiement.getLabel() }} {{ p.montant|number_format(0, ',', ' ') }} {% if p.estValide %} Validé {% else %} En attente {% endif %} {% if p.preuveUrl %} {% else %} N/A {% endif %}
{# MODALE D'AFFECTATION #} {% endblock %} {% block javascripts %} {{ parent() }} {% endblock %}