# Spec : Dossiers **Zone** : 2 — Dossiers (folders / cases) **Référence cartographie** : [SCREENS_AND_FUNCTIONS_MAP.md](../../SCREENS_AND_FUNCTIONS_MAP.md) section 2, actions 18.4 à 18.9. **Vocabulaire espace client (société = dossier permanent, dossier liste = opération)** : [MODELE_SOCIETES_ET_DOSSIERS_DOPERATION.md](../MODELE_SOCIETES_ET_DOSSIERS_DOPERATION.md). ## 1. Objectif - Gérer le cycle de vie des dossiers (création, consultation, modification, archivage, suppression) au sein de l’office actif. - Fournir listes, filtres, tri et accès aux dossiers archivés et supprimés. - Périmètre docv / enso identique ; libellés et options (ex. ancrage) selon paramétrage métier. ## 2. Écrans et routes | Écran | Route | Identifiant stable | Fonctions attendues | |-------|--------|---------------------|---------------------| | Liste des dossiers | `/folders` | `folders.list` | Liste paginée, filtres (statut, type, recherche), tri ; accès archivés/supprimés ; création. | | Sélection de dossier | `/folders/select` | `folders.select` | Choix d’un dossier pour une action contextuelle. | | Détail d’un dossier | `/folders/[folderUid]` | `folders.detail` | Fiche : en-tête, parties, documents, notes, partages, historique ; actions modifier, archiver, supprimer, ancrage. | | Dossiers archivés | `/folders/archived` | `folders.archived` | Liste archivés ; restauration ou consultation. | | Dossiers supprimés | `/folders/deleted` | `folders.deleted` | Liste corbeille ; restauration ou suppression définitive. | | Création / édition de dossier | modal ou route dédiée | `folders.create`, `folders.edit` | Formulaire nom, type, description, parties ; validation. | ## 3. Actions détaillées - **18.4 Liste des dossiers** : Afficher liste paginée ; filtrer par statut, type, recherche ; tri ; ouvrir détail ; accès archivés/supprimés ; créer (si droit). - **18.5 Sélection de dossier** : Afficher liste/recherche ; sélectionner et valider ; annuler. - **18.6 Détail dossier** : Consulter en-tête, parties, documents, notes, partages, historique ; modifier, archiver, supprimer, ancrage ; téléverser document, ajouter note, gérer partage/invités. - **18.7 Dossiers archivés** : Afficher liste ; restaurer (si droit) ; consulter détail. - **18.8 Dossiers supprimés** : Afficher liste ; restaurer ou supprimer définitivement (si droit). - **18.9 Création / édition** : Saisir nom, type, description, parties ; valider ; annuler. Droits : matrice rôle × ressource `folder` × actions (create, read, update, archive, delete). Conditions d’affichage : écrans archivés/supprimés selon paramétrage office ; ancrage si option activée. ## 4. Règles métier et contraintes - Validation : nom obligatoire ; type de dossier obligatoire et doit appartenir aux types configurés pour l’office ; statuts et transitions définis (ex. ouvert → en cours → archivé). - Archivage : un dossier archivé n’apparaît plus dans la liste principale ; restauration remet le dossier en liste principale. - Suppression : suppression logique (corbeille) ; suppression définitive irréversible ; pas de fallback silencieux sur erreur (message explicite). - Cohérence : un dossier appartient à un office ; les parties liées sont optionnelles à la création. ## 5. Paramétrage - Visibilité et ordre des écrans (liste, archivés, supprimés) par office ; libellés par type de dossier. - Actions : activation archivage, suppression définitive, ancrage par office ou type de dossier. - Référence : [PARAMETRAGE_ECRANS_ACTIONS.md](../PARAMETRAGE_ECRANS_ACTIONS.md). ## 6. Données et API - Entités : `Folder` (uid, office_uid, name, folder_type_uid, status, description, created_at, updated_at, archived_at, deleted_at), `FolderParty` (liaison dossier–partie). - **Implémentation docv actuelle (espace client)** : champs supplémentaires sur `folders` : **`folder_purpose`** (`client_operation` \| `dp_structure_demo`), **`operation_type`** (slug ou texte libre, type métier d’opération). Les dossiers « Jeu type … » (seed démo DP) sont des structures **`dp_structure_demo`** ; création utilisateur = **`client_operation`**. Voir [DOCV_API_ENSO_FRONT_MAP.md](../DOCV_API_ENSO_FRONT_MAP.md) (`POST` / `PATCH` / réponses dossier). - Endpoints : `GET/POST /folders`, `GET/PATCH/DELETE /folders/[folderUid]`, `POST /folders/[folderUid]/archive`, `POST /folders/[folderUid]/restore`, `DELETE /folders/[folderUid]/permanent` ; `GET /folders/archived`, `GET /folders/deleted`. - Dépendances : zone 4 (types de dossiers), zone 7 (parties) ; ancrage si activé (back). ## 7. Sécurité et accessibilité - Autorisation : accès limité aux dossiers de l’office actif (et partagés selon zone 7). - Données sensibles : pas d’affichage de données sensibles sans contrôle de droit. - Accessibilité : listes avec en-têtes de colonnes, tri au clavier ; formulaires avec labels et erreurs associées ; boutons d’action identifiables. ## 8. Impacts - Front : pages folders (liste, détail, archivés, supprimés, sélection), formulaires. - Back : module folders, règles métier statuts/archivage/suppression. - Shared : types Folder, statuts. - Dépendances : zones 3 (documents), 4 (types de dossiers), 7 (partage), 8 (notes). ## 9. Modalités de déploiement - Prérequis : types de dossiers existants (zone 4) ; migrations éventuelles pour statuts ou champs (selon modèle existant). - Déploiement standard ; pas d’étape spécifique hors flux standard. ## 10. Modalités d’analyse - Recette : création, édition, archivage, restauration, suppression logique et définitive ; filtres et tri sur la liste ; accès au détail et vérification des onglets (documents, notes, partages). - Logs : création, modification, archivage, suppression (audit). - Données : cohérence statut/archived_at/deleted_at en base.