{% extends 'app/base.html.twig' %} {% block title %}Stocks{% endblock %} {% set moisNoms = ['', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre'] %} {% set prevMois = mois - 1 %}{% set prevAnn = annee %} {% if prevMois < 1 %}{% set prevMois = 12 %}{% set prevAnn = annee - 1 %}{% endif %} {% set nextMois = mois + 1 %}{% set nextAnn = annee %} {% if nextMois > 12 %}{% set nextMois = 1 %}{% set nextAnn = annee + 1 %}{% endif %} {% block body %}

Stocks

Valorisation Clôture de mois Mouvements
{% if not modeHistorique %} Nouveau produit {% endif %}
{# ── Navigation mois ──────────────────────────────────────────────────── #}
{% if modeHistorique %} {{ moisNoms[mois] }} {{ annee }} Stock actuel {% else %} Stock actuel — {{ moisNoms[mois] }} {{ annee }} {% endif %} {% if moisDisponibles is not empty %} {% endif %}
{% if modeHistorique and dateValo %}
Vue archivée — valorisation du {{ dateValo|date('d/m/Y à H:i') }}. Les modifications ne sont pas disponibles.
{% elseif modeHistorique %}
Aucune valorisation archivée pour {{ moisNoms[mois] }} {{ annee }}.
{% endif %} {# ── Stats ─────────────────────────────────────────────────────────────── #}
Articles
{{ stocks|length }}
Alertes stock
{% if modeHistorique %}
{% else %}
{{ nbAlertes }}
{% endif %}
Valeur totale TTC
{{ valeur|number_format(2, ',', ' ') }} €
{# ── Barre de recherche ────────────────────────────────────────────────── #}
{# ── Filtre catégorie ──────────────────────────────────────────────────── #}
{# ── Tableau ───────────────────────────────────────────────────────────── #}
{% if stocks is empty %}
Aucun produit en stock
{% else %}
{% set totalValeur = 0 %} {% for s in stocks %} {% set valeurLigne = s.quantite * s.prix_unitaire %} {% set totalValeur = totalValeur + valeurLigne %} {% endfor %}
Produit Catégorie Quantité Unité Prix unit. TTC Valeur TTC Seuil alerte Mise à jour
{{ s.produit }} {{ s.categorie ?: '—' }} {{ s.quantite|number_format(3, ',', ' ') }} {{ s.unite }} {{ s.prix_unitaire|number_format(3, ',', ' ') }} € {{ valeurLigne|number_format(2, ',', ' ') }} € {{ s.seuil_alerte }} {{ s.date_maj ? s.date_maj|date('d/m/Y') : '—' }} {% if not modeHistorique %}
{% endif %}
Total visible : {{ totalValeur|number_format(2, ',', ' ') }} €
{% endif %}
{% endblock body %}