From 1b0339bf1c12d410f29d91165f1792b39e16aaad Mon Sep 17 00:00:00 2001 From: tristan Date: Thu, 11 Jun 2026 07:08:03 +0000 Subject: [PATCH] =?UTF-8?q?chore(front)=20:=20i18n=20=C3=A9crans/onglets?= =?UTF-8?q?=20fournisseurs=20+=20sidebar=20fournisseur=20avant=20client=20?= =?UTF-8?q?(ERP-97)=20(#82)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ERP-97 (étape front 6/7 du M2, parallèle). **Stack sur #93** (MR #81) : base = `feature/ERP-93-suppliers-list` pour un diff isolé. À recibler sur `develop` une fois #93 mergée. ## Périmètre - **Sidebar** : `Répertoire fournisseurs` placé **avant** `Répertoire clients` (`config/sidebar.php`). Affichage conditionnel par `commercial.suppliers.view` (déjà câblé par #90), vérifié au navigateur. - **i18n écrans/onglets** : bloc `commercial.suppliers.*` complété (onglets Information/Contacts/Adresses/Transport/Comptabilité/Statistiques/Rapports/Échanges, titres Consultation/Modification, actions, `comingSoon`, toasts). Scaffolding pour #94/#95/#96. ## Déjà couvert (vérifié, non modifié) - Clé sidebar `sidebar.commercial.suppliers` : déjà présente. - Libellés audit-log `audit.entity.commercial_supplier{,address,contact,rib}` : **déjà présents** (ajoutés côté back avec les entités `#[Auditable]`). Garde-fou `AuditableEntitiesHaveI18nLabelTest` : OK (43 assertions). ## Tests - `make nuxt-test` : 284 passed. - `AuditableEntitiesHaveI18nLabelTest` (isolé) : OK. - Golden path : sidebar fournisseurs au-dessus de clients ✓. Reviewed-on: https://gitea.malio.fr/MALIO-DEV/Starseed/pulls/82 Co-authored-by: tristan Co-committed-by: tristan --- config/sidebar.php | 14 +++++------ frontend/i18n/locales/fr.json | 45 ++++++++++++++++++++++++++++++++++- 2 files changed, 51 insertions(+), 8 deletions(-) diff --git a/config/sidebar.php b/config/sidebar.php index f2baf26..9be6d4a 100644 --- a/config/sidebar.php +++ b/config/sidebar.php @@ -45,13 +45,6 @@ return [ 'label' => 'sidebar.commercial.section', 'icon' => 'mdi:account-arrow-left-outline', 'items' => [ - [ - 'label' => 'sidebar.commercial.clients', - 'to' => '/clients', - 'icon' => 'mdi:account-group-outline', - 'module' => 'commercial', - 'permission' => 'commercial.clients.view', - ], [ 'label' => 'sidebar.commercial.suppliers', 'to' => '/suppliers', @@ -59,6 +52,13 @@ return [ 'module' => 'commercial', 'permission' => 'commercial.suppliers.view', ], + [ + 'label' => 'sidebar.commercial.clients', + 'to' => '/clients', + 'icon' => 'mdi:account-group-outline', + 'module' => 'commercial', + 'permission' => 'commercial.clients.view', + ], ], ], // Section "Administration" : regroupe toutes les pages de configuration diff --git a/frontend/i18n/locales/fr.json b/frontend/i18n/locales/fr.json index 9b77a1d..b5c6298 100644 --- a/frontend/i18n/locales/fr.json +++ b/frontend/i18n/locales/fr.json @@ -72,7 +72,50 @@ }, "toast": { "error": "Une erreur est survenue. Réessayez.", - "exportError": "L'export du répertoire fournisseurs a échoué. Réessayez." + "exportError": "L'export du répertoire fournisseurs a échoué. Réessayez.", + "createSuccess": "Fournisseur créé avec succès", + "updateSuccess": "Fournisseur mis à jour avec succès", + "addComplete": "Fournisseur ajouté", + "archiveSuccess": "Fournisseur archivé avec succès", + "restoreSuccess": "Fournisseur restauré avec succès", + "restoreConflict": "Impossible de restaurer : un fournisseur actif portant ce nom existe déjà." + }, + "comingSoon": "À venir", + "tab": { + "information": "Information", + "contacts": "Contacts", + "addresses": "Adresses", + "transport": "Transport", + "accounting": "Comptabilité", + "statistics": "Statistiques", + "reports": "Rapports", + "exchanges": "Échanges" + }, + "action": { + "edit": "Modifier", + "archive": "Archiver", + "restore": "Restaurer" + }, + "consultation": { + "title": "Consultation fournisseur", + "back": "Retour au répertoire", + "loading": "Chargement du fournisseur…", + "notFound": "Fournisseur introuvable.", + "confirmArchive": { + "title": "Archiver le fournisseur", + "message": "Ce fournisseur n'apparaîtra plus dans le répertoire actif. Confirmer l'archivage ?" + }, + "confirmRestore": { + "title": "Restaurer le fournisseur", + "message": "Ce fournisseur réapparaîtra dans le répertoire actif. Confirmer la restauration ?" + } + }, + "edit": { + "title": "Modifier le fournisseur", + "back": "Retour au répertoire", + "loading": "Chargement du fournisseur…", + "notFound": "Fournisseur introuvable.", + "save": "Valider" } }, "clients": {