---
suivi: 1545
date: 2026-09-15
sujet: Décompte en carte à droite sur la fiche facture
chantier: factures / depot / decompte
type: feature
statut: poussé
hash: 1ef66f89
fichiers:
  - resources/js/Components/Facture/FactureDecompteBloc.vue
  - resources/js/Pages/Factures/Show.vue
  - tests/Unit/FactureDecompte1541SourceTest.php
  - tests/Unit/FactureDecompte1545SourceTest.php
  - database/data/journal_mises_a_jour_post_2026_06_12.php
  - public/build/
  - docs/suivi/SUIVI_1545_decompte_carte_fiche_facture.md
---

# SUIVI #1545 — Décompte en carte à droite sur la fiche facture

## PROMPT ENVOYÉ

Le #1541 a posé le décompte en pleine largeur sous les infos.
Le passer en carte à droite (~270 px) dans le cadre facture,
montants alignés à droite, trois sous-sections, formule retirée
de la fiche (conservée en saisie). Sous ~860 px la carte passe
dessous, pleine largeur. Pas d’overflow-x-hidden. Présenter
et saisie inchangés. Rebase Vite. Push HECTAREG main.

## BASE GIT

HEAD = origin/main `ffb2bea7` (#1544) au départ. Rebase Vite
sur origin/main à jour AVANT `npm run build` (Factures/Show.vue
zone commune).

## FICHES LUES

- **#1541 LEÇON** — décompte écran non persisté ; recalcul saisie
  + calculateur ; reste = KPI déjà chargé ou rien. Conservé :
  mêmes props, presenter non touché.
- **#1271 LEÇON** — `overflow-x-hidden` masque un débordement au
  lieu de le corriger (récidive #1444). Layout par flex +
  `min-width: 0` + wrap à 860 px, jamais de masquage.
- **#1444** — même interdiction overflow sur Factures/Show.vue.
- **#1539** — Avancement du marché hors périmètre, inchangé
  (pleine largeur sous le duo infos/carte).
- **#1525 / #1299** — formule reconstitution : reste dans la
  saisie ; retirée de la fiche.

## SYNTHÈSE

`FactureDecompteBloc` devient une carte (brut / déduction /
à régler, net ambre détaché, reste en pied). Formule absente.
`Factures/Show.vue` : deux colonnes dans le cadre, carte 270 px
à droite au-dessus de 860 px. Lignes de retenue absentes et
KPI reste : même conditionnel #1541. Sans retenue, la section
Déduction disparaît, la carte reste.

## DÉPLOIEMENT-TEST

1. `git pull origin main`
2. `php artisan optimize:clear` + `view:clear` + `journal:sync`
3. Facture 1192 SIT 13 — carte à droite, mêmes montants, alignés
4. Facture sans retenue — section Déduction absente, carte visible
5. Largeur &lt; 860 px — carte sous les infos, rien de tronqué
6. Frais généraux — carte cohérente, pas de ligne marché
7. Avoir — montants négatifs
8. Mode sombre — lisibilité de la carte

Pas de migration. JAMAIS npm/composer/optimize/config:cache sur OVH.

## LEÇON

Un décompte pleine largeur aligne les montants trop loin des
libellés. Carte à largeur fixe + `justify-content: space-between`
sur chaque ligne. La formule de reconstitution n’a de sens que
là où l’on change les taux (saisie). Ne pas réintroduire
`overflow-x-hidden` pour caser la carte : flex-wrap à 860 px et
`min-width: 0` sur la colonne infos.
