From fe14ad99e1a8509a6215435475b976519e191689 Mon Sep 17 00:00:00 2001 From: Manus Date: Wed, 10 Jun 2026 11:40:54 +0000 Subject: [PATCH] =?UTF-8?q?Checkpoint:=20Ajout=20de=20libelle=5Fcourt=20et?= =?UTF-8?q?=20libelle=5Fdetail=20dans=20data=5Fopex.json=20et=20data=5Fope?= =?UTF-8?q?x=5F2025.json=20pour=20tous=20les=2035=20postes.=20Les=20th=20d?= =?UTF-8?q?u=20tableau=20=C3=89tablissements=20affichent=20maintenant=20le?= =?UTF-8?q?=20nom=20court=20en=20gras=20(ex:=20LIFEN)=20et=20la=20descript?= =?UTF-8?q?ion=20en=20dessous=20(ex:=20Plateforme=20eSant=C3=A9=20Envois),?= =?UTF-8?q?=20sans=20le=20pr=C3=A9fixe=20SAAS/Maintenance/etc.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- client/src/data_opex.json | 140 ++++++++++++++++++++++++--------- client/src/data_opex_2025.json | 132 +++++++++++++++++++++++-------- client/src/pages/DsiOpex.tsx | 13 ++- 3 files changed, 214 insertions(+), 71 deletions(-) diff --git a/client/src/data_opex.json b/client/src/data_opex.json index 749c5fb..98176f7 100644 --- a/client/src/data_opex.json +++ b/client/src/data_opex.json @@ -13,7 +13,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 30000.0, - "montant_previsionnel_2026": 30000.0 + "montant_previsionnel_2026": 30000.0, + "libelle_court": "AGEVAL", + "libelle_detail": "Gestion de la qualité" }, { "col_idx": 6, @@ -26,7 +28,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 46000.0, - "montant_previsionnel_2026": 52100.0 + "montant_previsionnel_2026": 52100.0, + "libelle_court": "OCTIME", + "libelle_detail": "Gestion de temps" }, { "col_idx": 7, @@ -39,7 +43,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 2400.0, - "montant_previsionnel_2026": 0.0 + "montant_previsionnel_2026": 0.0, + "libelle_court": "FIGGO", + "libelle_detail": "Gestion congés" }, { "col_idx": 8, @@ -52,7 +58,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 1700.0, - "montant_previsionnel_2026": 1980.0 + "montant_previsionnel_2026": 1980.0, + "libelle_court": "CLEEMY", + "libelle_detail": "Gestion notes de frais" }, { "col_idx": 9, @@ -65,7 +73,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 14500.0, - "montant_previsionnel_2026": 14500.0 + "montant_previsionnel_2026": 14500.0, + "libelle_court": "ISI-APP", + "libelle_detail": "Gestion de parc" }, { "col_idx": 10, @@ -78,7 +88,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 5000.0, - "montant_previsionnel_2026": 5000.0 + "montant_previsionnel_2026": 5000.0, + "libelle_court": "DLD", + "libelle_detail": "Conformité RGPD" }, { "col_idx": 11, @@ -91,7 +103,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 11200.0, - "montant_previsionnel_2026": 40000.0 + "montant_previsionnel_2026": 40000.0, + "libelle_court": "Signature", + "libelle_detail": "Électronique" }, { "col_idx": 12, @@ -104,7 +118,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 141000.0, - "montant_previsionnel_2026": 221022.0 + "montant_previsionnel_2026": 221022.0, + "libelle_court": "M365", + "libelle_detail": "Licences" }, { "col_idx": 13, @@ -117,7 +133,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 16000.0, - "montant_previsionnel_2026": 16000.0 + "montant_previsionnel_2026": 16000.0, + "libelle_court": "SXS SAGE", + "libelle_detail": "Gestion trésorerie" }, { "col_idx": 14, @@ -130,7 +148,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 11000.0, - "montant_previsionnel_2026": 11000.0 + "montant_previsionnel_2026": 11000.0, + "libelle_court": "LIFEN", + "libelle_detail": "Plateforme eSanté Envois" }, { "col_idx": 15, @@ -143,7 +163,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 3500.0, - "montant_previsionnel_2026": 3500.0 + "montant_previsionnel_2026": 3500.0, + "libelle_court": "LIFEN", + "libelle_detail": "Plateforme eSanté Réceptions" }, { "col_idx": 16, @@ -156,7 +178,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 178750.0, - "montant_previsionnel_2026": 196500.0 + "montant_previsionnel_2026": 196500.0, + "libelle_court": "NOVRH", + "libelle_detail": "" }, { "col_idx": 17, @@ -169,7 +193,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 54000.0, - "montant_previsionnel_2026": 54000.0 + "montant_previsionnel_2026": 54000.0, + "libelle_court": "NOVRH", + "libelle_detail": "Assistance" }, { "col_idx": 18, @@ -182,7 +208,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2026": 40000.0 + "montant_previsionnel_2026": 40000.0, + "libelle_court": "Coffre fort", + "libelle_detail": "Numérique" }, { "col_idx": 19, @@ -195,7 +223,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 51000.0, - "montant_previsionnel_2026": 68000.0 + "montant_previsionnel_2026": 68000.0, + "libelle_court": "DUI", + "libelle_detail": "Pôle HEP" }, { "col_idx": 20, @@ -208,7 +238,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2026": 30000.0 + "montant_previsionnel_2026": 30000.0, + "libelle_court": "DUI", + "libelle_detail": "Bon Pasteur" }, { "col_idx": 21, @@ -221,7 +253,9 @@ "type": "Téléphonie VoIP", "compte": "626200", "budget_n1": 62000.0, - "montant_previsionnel_2026": 33600.0 + "montant_previsionnel_2026": 33600.0, + "libelle_court": "VoIP", + "libelle_detail": "Trunks + Liens + Canaux" }, { "col_idx": 22, @@ -234,7 +268,9 @@ "type": "Loc. Infra Data Center", "compte": "613512", "budget_n1": 53000.0, - "montant_previsionnel_2026": 53000.0 + "montant_previsionnel_2026": 53000.0, + "libelle_court": "Data Center", + "libelle_detail": "Infra + Liens Internet" }, { "col_idx": 23, @@ -247,7 +283,9 @@ "type": "Liens Internet", "compte": "626203", "budget_n1": 14000.0, - "montant_previsionnel_2026": 14000.0 + "montant_previsionnel_2026": 14000.0, + "libelle_court": "Liens Internet", + "libelle_detail": "Siège Data Center" }, { "col_idx": 24, @@ -260,7 +298,9 @@ "type": "Prestation", "compte": "628400", "budget_n1": 3500.0, - "montant_previsionnel_2026": 3500.0 + "montant_previsionnel_2026": 3500.0, + "libelle_court": "TMA", + "libelle_detail": "Réglementaire" }, { "col_idx": 25, @@ -273,7 +313,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 52200.0, - "montant_previsionnel_2026": 29000.0 + "montant_previsionnel_2026": 29000.0, + "libelle_court": "Maintenance", + "libelle_detail": "Applicatifs" }, { "col_idx": 26, @@ -286,7 +328,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 3000.0, - "montant_previsionnel_2026": 5400.0 + "montant_previsionnel_2026": 5400.0, + "libelle_court": "FLEXICLOUD", + "libelle_detail": "Maintenance" }, { "col_idx": 27, @@ -299,7 +343,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 520.0, - "montant_previsionnel_2026": 1764.0 + "montant_previsionnel_2026": 1764.0, + "libelle_court": "Télémaintenance", + "libelle_detail": "Abonnement" }, { "col_idx": 28, @@ -312,7 +358,9 @@ "type": "Prestation", "compte": "628400", "budget_n1": null, - "montant_previsionnel_2026": 20000.0 + "montant_previsionnel_2026": 20000.0, + "libelle_court": "Assistance N3", + "libelle_detail": "Technique" }, { "col_idx": 29, @@ -325,7 +373,9 @@ "type": "Prestation", "compte": "628400", "budget_n1": 16000.0, - "montant_previsionnel_2026": 0.0 + "montant_previsionnel_2026": 0.0, + "libelle_court": "Crédit jours", + "libelle_detail": "Technicien" }, { "col_idx": 30, @@ -338,7 +388,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 21000.0, - "montant_previsionnel_2026": 28000.0 + "montant_previsionnel_2026": 28000.0, + "libelle_court": "VEEAM", + "libelle_detail": "Maintenance" }, { "col_idx": 31, @@ -351,7 +403,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 55000.0, - "montant_previsionnel_2026": 55000.0 + "montant_previsionnel_2026": 55000.0, + "libelle_court": "WATCHGUARD", + "libelle_detail": "Maintenance" }, { "col_idx": 32, @@ -364,7 +418,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 29400.0, - "montant_previsionnel_2026": 29400.0 + "montant_previsionnel_2026": 29400.0, + "libelle_court": "EPDR WG", + "libelle_detail": "Maintenance" }, { "col_idx": 33, @@ -377,7 +433,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 36000.0, - "montant_previsionnel_2026": 36000.0 + "montant_previsionnel_2026": 36000.0, + "libelle_court": "DARKTRACE", + "libelle_detail": "Maintenance" }, { "col_idx": 34, @@ -390,7 +448,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 24000.0, - "montant_previsionnel_2026": 24000.0 + "montant_previsionnel_2026": 24000.0, + "libelle_court": "DARKTRACE", + "libelle_detail": "ANTIGENA" }, { "col_idx": 35, @@ -403,7 +463,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": 25000.0, - "montant_previsionnel_2026": 25000.0 + "montant_previsionnel_2026": 25000.0, + "libelle_court": "DARKTRACE", + "libelle_detail": "Protection mails" }, { "col_idx": 36, @@ -416,7 +478,9 @@ "type": "Prestation", "compte": "628400", "budget_n1": null, - "montant_previsionnel_2026": 60000.0 + "montant_previsionnel_2026": 60000.0, + "libelle_court": "NEOEDGE", + "libelle_detail": "SIEM / SOC" }, { "col_idx": 37, @@ -429,7 +493,9 @@ "type": "Petits matériels", "compte": "606241", "budget_n1": 12000.0, - "montant_previsionnel_2026": 12000.0 + "montant_previsionnel_2026": 12000.0, + "libelle_court": "Petit matériel", + "libelle_detail": "Autres dépenses" }, { "col_idx": 38, @@ -442,7 +508,9 @@ "type": "Liens internet", "compte": "626203", "budget_n1": 7512.0, - "montant_previsionnel_2026": 7512.0 + "montant_previsionnel_2026": 7512.0, + "libelle_court": "4G", + "libelle_detail": "Abonnement" }, { "col_idx": 39, @@ -455,7 +523,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": 36900.0, - "montant_previsionnel_2026": 36900.0 + "montant_previsionnel_2026": 36900.0, + "libelle_court": "GAMMEO", + "libelle_detail": "Maintenance" } ], "etablissements": [ diff --git a/client/src/data_opex_2025.json b/client/src/data_opex_2025.json index 54cf365..8b092f3 100644 --- a/client/src/data_opex_2025.json +++ b/client/src/data_opex_2025.json @@ -13,7 +13,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 30000.0 + "montant_previsionnel_2025": 30000.0, + "libelle_court": "AGEVAL", + "libelle_detail": "Gestion de la qualité" }, { "col_idx": 6, @@ -26,7 +28,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 46000.0 + "montant_previsionnel_2025": 46000.0, + "libelle_court": "OCTIME", + "libelle_detail": "Gestion de temps" }, { "col_idx": 7, @@ -39,7 +43,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 2400.0 + "montant_previsionnel_2025": 2400.0, + "libelle_court": "FIGGO", + "libelle_detail": "Gestion congés" }, { "col_idx": 8, @@ -52,7 +58,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 1700.0 + "montant_previsionnel_2025": 1700.0, + "libelle_court": "CLEEMY", + "libelle_detail": "Gestion frais professionnels" }, { "col_idx": 9, @@ -65,7 +73,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 14500.0 + "montant_previsionnel_2025": 14500.0, + "libelle_court": "ISI-APP", + "libelle_detail": "Gestion de parc" }, { "col_idx": 10, @@ -78,7 +88,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 5000.0 + "montant_previsionnel_2025": 5000.0, + "libelle_court": "DLD", + "libelle_detail": "Conformité RGPD" }, { "col_idx": 11, @@ -91,7 +103,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 11200.0 + "montant_previsionnel_2025": 11200.0, + "libelle_court": "Signature", + "libelle_detail": "Électronique" }, { "col_idx": 12, @@ -104,7 +118,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 141000.0 + "montant_previsionnel_2025": 141000.0, + "libelle_court": "M365", + "libelle_detail": "Licences" }, { "col_idx": 13, @@ -117,7 +133,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 16000.0 + "montant_previsionnel_2025": 16000.0, + "libelle_court": "SXS SAGE", + "libelle_detail": "Gestion trésorerie" }, { "col_idx": 14, @@ -130,7 +148,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 11000.0 + "montant_previsionnel_2025": 11000.0, + "libelle_court": "LIFEN", + "libelle_detail": "Plateforme eSanté Envois" }, { "col_idx": 15, @@ -143,7 +163,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 3500.0 + "montant_previsionnel_2025": 3500.0, + "libelle_court": "LIFEN", + "libelle_detail": "Plateforme eSanté Réceptions" }, { "col_idx": 16, @@ -156,7 +178,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 232750.0 + "montant_previsionnel_2025": 232750.0, + "libelle_court": "NOVRH", + "libelle_detail": "" }, { "col_idx": 17, @@ -169,7 +193,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 25000.0 + "montant_previsionnel_2025": 25000.0, + "libelle_court": "DARKTRACE", + "libelle_detail": "Protection mails" }, { "col_idx": 18, @@ -182,7 +208,9 @@ "type": "SAAS", "compte": "613511", "budget_n1": null, - "montant_previsionnel_2025": 51000.0 + "montant_previsionnel_2025": 51000.0, + "libelle_court": "DUI", + "libelle_detail": "Pôle HEP" }, { "col_idx": 19, @@ -195,7 +223,9 @@ "type": "Téléphonie VoIP", "compte": "626200", "budget_n1": null, - "montant_previsionnel_2025": 62000.0 + "montant_previsionnel_2025": 62000.0, + "libelle_court": "VoIP", + "libelle_detail": "Trunks + Liens + Canaux" }, { "col_idx": 20, @@ -208,7 +238,9 @@ "type": "Loc. Infra Data Center", "compte": "613512", "budget_n1": null, - "montant_previsionnel_2025": 53000.0 + "montant_previsionnel_2025": 53000.0, + "libelle_court": "Data Center", + "libelle_detail": "Infra + Liens Internet" }, { "col_idx": 21, @@ -221,7 +253,9 @@ "type": "Liens Internet", "compte": "626203", "budget_n1": null, - "montant_previsionnel_2025": 14000.0 + "montant_previsionnel_2025": 14000.0, + "libelle_court": "Liens Internet", + "libelle_detail": "Siège Data Center" }, { "col_idx": 22, @@ -234,7 +268,9 @@ "type": "Liens Internet", "compte": "626203", "budget_n1": null, - "montant_previsionnel_2025": 0.0 + "montant_previsionnel_2025": 0.0, + "libelle_court": "Abonnements", + "libelle_detail": "Liaisons internet siège et Data Center" }, { "col_idx": 23, @@ -247,7 +283,9 @@ "type": "Prestation", "compte": "628400", "budget_n1": null, - "montant_previsionnel_2025": 3500.0 + "montant_previsionnel_2025": 3500.0, + "libelle_court": "TMA", + "libelle_detail": "Réglementaire" }, { "col_idx": 24, @@ -260,7 +298,9 @@ "type": "Prestation", "compte": "628400", "budget_n1": null, - "montant_previsionnel_2025": 16000.0 + "montant_previsionnel_2025": 16000.0, + "libelle_court": "Crédit jours", + "libelle_detail": "Technicien" }, { "col_idx": 25, @@ -273,7 +313,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 52200.0 + "montant_previsionnel_2025": 52200.0, + "libelle_court": "Maintenance", + "libelle_detail": "Applicatifs" }, { "col_idx": 26, @@ -286,7 +328,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 0.0 + "montant_previsionnel_2025": 0.0, + "libelle_court": "D3i", + "libelle_detail": "+PSI (Résilié)" }, { "col_idx": 27, @@ -299,7 +343,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 0.0 + "montant_previsionnel_2025": 0.0, + "libelle_court": "OSIDOC", + "libelle_detail": " (A RESILIER)" }, { "col_idx": 28, @@ -312,7 +358,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 3000.0 + "montant_previsionnel_2025": 3000.0, + "libelle_court": "FLEXICLOUD", + "libelle_detail": "Maintenance" }, { "col_idx": 29, @@ -325,7 +373,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 520.0 + "montant_previsionnel_2025": 520.0, + "libelle_court": "Télémaintenance", + "libelle_detail": "Abonnement" }, { "col_idx": 30, @@ -338,7 +388,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 55000.0 + "montant_previsionnel_2025": 55000.0, + "libelle_court": "WATCHGUARD", + "libelle_detail": "Maintenance" }, { "col_idx": 31, @@ -351,7 +403,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 29400.0 + "montant_previsionnel_2025": 29400.0, + "libelle_court": "EPDR WG", + "libelle_detail": "Maintenance" }, { "col_idx": 32, @@ -364,7 +418,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 21000.0 + "montant_previsionnel_2025": 21000.0, + "libelle_court": "VEEAM", + "libelle_detail": "Maintenance" }, { "col_idx": 33, @@ -377,7 +433,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 36000.0 + "montant_previsionnel_2025": 36000.0, + "libelle_court": "DARKTRACE", + "libelle_detail": "Maintenance" }, { "col_idx": 34, @@ -390,7 +448,9 @@ "type": "Maintenance", "compte": "615610", "budget_n1": null, - "montant_previsionnel_2025": 24000.0 + "montant_previsionnel_2025": 24000.0, + "libelle_court": "DARKTRACE", + "libelle_detail": "ANTIGENA" }, { "col_idx": 35, @@ -403,7 +463,9 @@ "type": "Petits matériels", "compte": null, "budget_n1": null, - "montant_previsionnel_2025": 12000.0 + "montant_previsionnel_2025": 12000.0, + "libelle_court": "Petit matériel", + "libelle_detail": "Autres dépenses" }, { "col_idx": 36, @@ -416,7 +478,9 @@ "type": "Liens internet", "compte": null, "budget_n1": null, - "montant_previsionnel_2025": 7512.0 + "montant_previsionnel_2025": 7512.0, + "libelle_court": "4G", + "libelle_detail": "Abonnement" }, { "col_idx": 37, @@ -429,7 +493,9 @@ "type": "Maintenance", "compte": null, "budget_n1": null, - "montant_previsionnel_2025": 36900.0 + "montant_previsionnel_2025": 36900.0, + "libelle_court": "GAMMEO", + "libelle_detail": "Maintenance" } ], "etablissements": [], diff --git a/client/src/pages/DsiOpex.tsx b/client/src/pages/DsiOpex.tsx index fc788a8..ba62005 100644 --- a/client/src/pages/DsiOpex.tsx +++ b/client/src/pages/DsiOpex.tsx @@ -67,6 +67,8 @@ interface Poste { budget_n1: number | null; montant_previsionnel_2026?: number | null; montant_previsionnel_2025?: number | null; + libelle_court?: string; + libelle_detail?: string; } interface Etablissement { @@ -1333,10 +1335,15 @@ export default function DsiOpex() { }`} title={`${ligne.libelle} — ${isManuel ? 'Saisie manuelle' : 'Prorata C 6'} — ${formatEuros(ligne.montant)}`} > - - {ligne.libelle.length > 18 ? ligne.libelle.slice(0, 16) + '…' : ligne.libelle} + + {srcPoste?.libelle_court ?? ligne.libelle.split(' ')[0]} - {formatEuros(ligne.montant)} + {(srcPoste?.libelle_detail) && ( + + {srcPoste.libelle_detail} + + )} + {formatEuros(ligne.montant)} ); })}