# Centrale : grille d'état des connexions

Nouvelle page `/centrale/etat_connexion` : une tuile par centrale active qui affiche son état de connexion, la dernière communication, les versions logicielles transmises et le volume livré du jour.

## Règles

- **Connectée** : dernière communication il y a `SEUIL_CONNEXION_MINUTES` minutes ou moins (3 min). C'est le même seuil que l'alerte « Centrales déconnectées » du bandeau, désormais partagé par une constante de `centrale_controller`.
- **Déconnectée** : dernière communication plus ancienne que le seuil. La tuile a une bordure rouge.
- **Jamais connectée** : `centrale_heure_derniere_communication` est NULL. La tuile est traitée comme une déconnexion.
- **Volume du jour** : `SUM(t_bl.bl_qte_livree)` et `COUNT(*)` des BL dont `bl_date_livraison` = aujourd'hui et `bl_annule != 1`, groupés par `centrale_id`.
- **Versions** : `centrale_version_bhp_gestion`, `_bhp_process`, `_prog_automate`, `_trans_cm_web`, `_bhp`. Seules les versions renseignées sont affichées. Si aucune ne l'est, la tuile indique « Versions non transmises ».
- Seules les centrales actives sont prises en compte (scope global `active` du modèle).
- Droit : même contrôle que la liste des centrales (`profil_centrale = 0` → 401) + middlewares `auth:sanctum`, `interne`.

## Affichage

- Les tuiles déconnectées s'affichent en premier, puis par code centrale.
- Filtres Toutes / Connectées / Déconnectées, avec compteurs.
- Rafraîchissement automatique toutes les 60 s (`$.getJSON`), avec l'heure de la dernière actualisation.

## Fichiers

- `app/Http/Controllers/centrale_controller.php` : constante `SEUIL_CONNEXION_MINUTES` (utilisée aussi par `centrale_connectee()`), méthodes `etat_connexion()` (vue) et `etat_connexion_donnees()` (JSON).
- `routes/web/centrale.php` : routes `centrale.etat_connexion` et `centrale.etat_connexion_donnees`.
- `resources/views/centrale/etat_connexion.blade.php` : nouvelle vue (Bootstrap 4 + jQuery, CSS limité à `.etat-centrales`).
- `resources/views/centrale/index.blade.php` : bouton « État des connexions ».
- `resources/views/partials/step_navigation.blade.php` : 4e étape « État des centrales » dans la navigation du dashboard (Dashboard → Plan de charge → Suivi de livraison → État des centrales, flèches ← → du clavier comprises). La vue `etat_connexion` inclut ce partial.
- `public/inc/js/centrale_connectee.js` : bouton « Voir l'état de toutes les centrales » dans le panneau d'alerte du bandeau.

## Hors périmètre

- Aucune migration : uniquement des colonnes existantes.
- Pas d'alerte « version à mettre à jour » : il n'existe pas de version de référence en base.
