#minor (2636 2637) Permettre l'export des actions aux opérateurs, administrateurs locaux #1439
Merged
superfeedboy merged 31 commits intodevelopfrom Mar 25, 2026
Merged
#minor (2636 2637) Permettre l'export des actions aux opérateurs, administrateurs locaux #1439superfeedboy merged 31 commits intodevelopfrom
superfeedboy merged 31 commits intodevelopfrom
Conversation
Contributor
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
refers to https://trello.com/c/8jz3Zzmv/2636 - Ajouter l'option 'access_action_finances' au rôle national_establisment - Créer la migration ajoutant la nouvelle option aux permissions - Permettre un accès sélectif au financements des actions aux acteurs nationaux
…sations utilisateur refers to https://trello.com/c/8jz3Zzmv/2636 - Ajouter l'affichage conditionnel des options en mode édition - Assurer la persistance de l'état des cases à cocher après l'enregistrement - Ajouter des indicateurs visuels (coche verte/croix rouge) en fonction de l'état des options - Corriger les problèmes de réactivité liés à Object.assign afin de préserver les références - Réinitialiser le formulaire lors du passage en mode édition pour afficher les valeurs actuelles des options - S'assurer que les options sont toujours traitées comme des tableaux
refers to https://trello.com/c/lzbVwxrI/2637 - Remplacer « departements.code » par « d.code » dans la clause WHERE - Remplacer « regions.code » par « r.code » dans la clause WHERE - Correction de l'erreur "référence non valide à une entrée de la clause FROM" - S'assurer que les alias correspondent à ceux utilisés dans la requête SQL principale
… financières sont exclues refers to https://trello.com/c/8jz3Zzmv/2636-liste-des-actions-permettre-lexport-des-actions-par-le-correspondant-admin-local - Déplacer la section "COMMENTAIRES" de la plage AF1:AG1 vers AD1:AF1 - Déplacer la section "MISE À JOUR" de la plage AH1:AI1 vers AG1:AH1 - Corriger l'absence de titres de section lorsque les colonnes financières ne sont pas incluses - Ajuster les plages de colonnes de 12 positions pour tenir compte de la suppression des colonnes financières
…s l'exportation d'actions refers to https://trello.com/c/8jz3Zzmv/2636-liste-des-actions-permettre-lexport-des-actions-par-le-correspondant-admin-local - Par défaut : l'année en cours - 1 si disponible - Sinon, sélectionner l'année passée la plus récente - Rendre par défaut à l'année la plus ancienne disponible s'il n'y a pas d'années passées - Corriger les problèmes de réactivité liés aux valeurs d'année calculées - Gérer la structure de l'objet Ref pour les données relatives aux années - Utiliser watch avec le drapeau immediate pour mettre à jour l'année sélectionnée
refers to https://trello.com/c/8jz3Zzmv/2636 - Utiliser le chargement différé pour le composant TableauDeBordView - Remplacer l'importation directe par la syntaxe d'importation dynamique () - Corriger l'erreur 'Impossible d'accéder à “TableauDeBordView” avant l'initialisation' - Prévenir les problèmes de dépendance circulaire au démarrage de l'application
…orrespondants sur leur territoire refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637
…s aux financements des actions refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637
… les nouvelles options refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637https://trello.com/c/lzbVwxrI/2637
…ns utilisateur refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637
refers to refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637
…actions - Déterminer les départements autorisés en fonction des zones d'intervention de l'utilisateur
… afichage de fiche utilisateur refers to refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637
…t de supprimer l'option elle-même refers to https://trello.com/c/8jz3Zzmv/2636 - Eviter une erreur de contrainte de clé étrangère. Si des utilisateurs ont déjà l'option "access_action_finances" assignée dans "user_permission_options", la migration down échouera.
refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637 - Ajoute `refreshView()` pour rafraîchir une vue SQL unique - Ajoute `refreshViewCascade()` pour rafraîchir plusieurs vues interdépendantes - Gère automatiquement les transactions et rollbacks - Utilise `reduce()` pour respecter les règles ESLint (pas de `for...of` avec `await`)"
refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637 - Refactorise 30000070-06 : 39 lignes → 5 lignes - Refactorise 30000106-03 : 39 lignes → 5 lignes - Améliore la maintenabilité et réduit la duplication de code
refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637 - Refactorise 30000051-01 : 64 lignes → 42 lignes - Simplifie la gestion de 6 vues SQL interdépendantes - Utilise une structure déclarative plus lisible"
f95ff93 to
a98e5b2
Compare
superfeedboy
requested changes
Mar 24, 2026
Contributor
superfeedboy
left a comment
There was a problem hiding this comment.
Quelques proposition d'évolution accessibilité/DSFR et modifications visuelles des options.
packages/api/server/models/actionModel/fetchReport/fetchReport.ts
Outdated
Show resolved
Hide resolved
packages/api/server/models/actionModel/fetchReport/fetchReport.ts
Outdated
Show resolved
Hide resolved
packages/api/server/services/action/exportActions.creerClasseurExcel.ts
Outdated
Show resolved
Hide resolved
...d/webapp/src/components/ListeDesActions/ListeDesActionsExport/ListeDesActionsExportModal.vue
Outdated
Show resolved
Hide resolved
...d/webapp/src/components/ListeDesActions/ListeDesActionsExport/ListeDesActionsExportModal.vue
Show resolved
Hide resolved
packages/frontend/webapp/src/components/FicheAcces/FicheAccesBody/FicheAccesBodyOptions.vue
Outdated
Show resolved
Hide resolved
packages/frontend/webapp/src/components/FicheAcces/FicheAccesBody/FicheAccesBodyOptions.vue
Outdated
Show resolved
Hide resolved
…nible refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637 Ajouter une vérification dynamique pour afficher le bouton "Modifier les options" uniquement si le rôle de l'utilisateur possède des options configurables dans permissions_description. Cela évite d'afficher un bouton inutile pour les rôles comme direct_collaborator qui n'ont pas d'options à gérer.
refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637 Remplacer CheckableGroup par des composants Checkbox individuels pour correspondre à la structure utilisée dans develop.
…escription refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637 Ajouter explicitement les permissions d'export des actions pour les rôles direct_collaborator (avec financements) et association (hors financements) dans leurs local_permissions respectives pour une meilleure documentation
refers to https://trello.com/c/8jz3Zzmv/2636 refers to https://trello.com/c/lzbVwxrI/2637 Remplacer le composant Button par DsfrButton. Corriger l'utilisation de la prop :loading qui n'existe pas dans DsfrButton en utilisant :disabled à la place pour désactiver le bouton pendant le chargement
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



🧾 Ticket Trello
https://trello.com/c/8jz3Zzmv/2636
https://trello.com/c/lzbVwxrI/2637
🛠 Description de la PR
Accorder aux opérateurs et aux correspondants l'autorisation d'exporter les actions concernant leur territoire
Permettre aux administrateurs de donner ou retirer sélectivement l'accès aux financements des actions pour les utilisateurs ayant le rôle "Acteur national", et corriger plusieurs bugs liés à l'export des actions.
Fonctionnalités
Option d'accès aux financements
access_action_financespour le rôle "Acteur national"Sélection intelligente de l'année par défaut
Corrections de bugs
Export des actions
Interface utilisateur
Détails techniques
Backend
Frontend
Object.assignpour préserver les référenceswatchavecimmediate: truepour la mise à jour des valeurs calculéesTests réalisés
Corrections de dernière minutes #1
Refactorisation : Mutualisation des migrations de rafraîchissement de vues SQL
Contexte
Plusieurs migrations utilisent un pattern répétitif pour rafraîchir des vues SQL :
Ce code était dupliqué dans de nombreuses migrations, rendant la maintenance difficile.
Changements
Nouvelles fonctions mutualisées
refreshView(viewName, createOldView, createNewView)refreshViewCascade(views[])reduce()pour respecter les règles ESLint{name, oldView, newView}Migrations refactorisées
30000070-0630000106-0330000051-01Bénéfices
Tests
30000106-03: fonctionne30000106-02: fonctionne30000106-01: fonctionneNotes techniques
reduce()au lieu defor...ofpour respecter les règles ESLint du projetCorrections de dernière minutes #2
Corriger l'affichage du bouton "Modifier les options" qui s'affichait pour des rôles n'ayant aucune option configurable (notamment
direct_collaborator).Modifications apportées
Frontend
FicheAccesActionModifyOptions.vue
hasAvailableOptionsqui vérifie si le rôle possède des options danspermissions_descriptionrolePermissions.options.length > 0FicheAccesBodyOptions.vue
developCheckableGrouppar des composantsCheckboxindividuelsvariant="checkbox",direction="col"et:activeModalExportLien.vue
ButtonparDsfrButton(disponible globalement):loadingn'existe pas dansDsfrButton:disabled="disabled || isLoading"à la placeBackend
direct_collaborator: "Exporter les actions" (avec financements)association: "Exporter les actions" (hors financements)30000106-01, cette modification améliore juste la documentationRésultat
direct_collaborator,external_observator, etc.)developDsfrButtonavec une prop inexistante📸 Captures d'écran
🚨 Notes pour la mise en production