refactor(front): centralise la règle de statut et les colonnes dupliquées

Le seuil de 10 erreurs qui fait basculer un monitoring en « Critique »
était réécrit dans trois fichiers (MonitoringCard, MonitoringDetail,
VueConso), la version de VueConso ne renvoyant qu'une couleur. Faire
évoluer ce seuil imposait de corriger trois endroits sans en oublier.
Il vit maintenant dans utils/statutMonitoring.js, avec la constante
SEUIL_ATTENTION nommée.

Les colonnes du tableau de monitorings étaient également identiques
entre VueConso et ServiceMonitorings : extraites dans
utils/monitoringColumns.jsx.
This commit is contained in:
2026-08-15 14:29:09 +02:00
parent 270283e96d
commit 8b8121ca1c
6 changed files with 50 additions and 57 deletions
@@ -9,15 +9,9 @@ import LoadingSpinner from '../../components/common/LoadingSpinner';
import ErrorMessage from '../../components/common/ErrorMessage';
import Badge from '../../components/common/Badge';
import Button from '../../components/common/Button';
import { getStatutMonitoring } from '../../utils/statutMonitoring';
import styles from './MonitoringDetail.module.css';
/* Détermine le statut selon le nombre d'erreurs */
function getStatut(nbErreurs) {
if (nbErreurs === 0) return { label: 'OK', variant: 'ok' };
if (nbErreurs < 10) return { label: 'Attention', variant: 'warning' };
return { label: 'Critique', variant: 'critical' };
}
export default function MonitoringDetail() {
const { id } = useParams();
const navigate = useNavigate();
@@ -72,7 +66,7 @@ export default function MonitoringDetail() {
if (loading) return <LoadingSpinner message="Chargement du monitoring..." />;
if (erreur) return <ErrorMessage message={erreur} />;
const statut = getStatut(count);
const statut = getStatutMonitoring(count);
return (
<div className={styles.page}>