From bdf9d0be4fceb730711553a7582f46c9e6eed3c8 Mon Sep 17 00:00:00 2001 From: vdorge Date: Mon, 25 Aug 2025 11:12:39 +0000 Subject: [PATCH] =?UTF-8?q?T=C3=A9l=C3=A9verser=20les=20fichiers=20vers=20?= =?UTF-8?q?"docs"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/ENUMS.md | 157 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 157 insertions(+) create mode 100644 docs/ENUMS.md diff --git a/docs/ENUMS.md b/docs/ENUMS.md new file mode 100644 index 0000000..c24e516 --- /dev/null +++ b/docs/ENUMS.md @@ -0,0 +1,157 @@ + +# ENUMS.md — Référentiel des valeurs énumérées (Sprint 1) + +Ce document recense **toutes les valeurs énumérées** utilisées dans la base P’titsPas, leur **sens fonctionnel**, les **colonnes concernées** et les **transitions** attendues côté métier / API. + +> Objectif : garantir la **cohérence** entre la DB, le backend (NestJS) et le frontend (Flutter). +> Toute nouvelle valeur ou renommage **doit** être ajouté ici **avant** migration DB. + +--- + +## Conventions générales + +- Les valeurs ENUM sont **en minuscules** et **sans espace** (snake_case si nécessaire). +- Côté DB, elles sont implémentées via **types ENUM PostgreSQL** *ou* via `CHECK` (selon ce qui est en place dans `01_init.sql`). +- Côté API, ces valeurs sont **renvoyées telles quelles** et **documentées** dans l’OpenAPI / DTO. + +--- + +## 1) Rôle utilisateur — `role` + +**Tables/colonnes** : `utilisateurs.role` +**Valeurs autorisées** : + +| Valeur | Description | +|---|---| +| `super_admin` | Compte technique initial / administration globale | +| `gestionnaire` | Gestion / validation des comptes, supervision | +| `parent` | Parent ou co-parent | +| `am` | Assistante maternelle | + +--- + +## 2) Statut utilisateur — `statut` + +**Tables/colonnes** : `utilisateurs.statut` +**Valeurs autorisées** : + +| Valeur | Description | +|---|---| +| `en_attente` | Compte créé mais non validé | +| `accepte` | Compte validé et actif | +| `rejete` | Demande refusée (peut être recréée ultérieurement) | + +--- + +## 3) Statut enfant — `statut` + +**Tables/colonnes** : `enfants.statut` +**Valeurs autorisées** : + +| Valeur | Description | +|---|---| +| `a_naitre` | Enfant à naître (date prévue renseignée) | +| `actif` | Enfant pris en charge / en cours de garde | +| `scolarise` | Enfant scolarisé, garde potentiellement périscolaire | + +**Contraintes associées** : +- `a_naitre` → **`date_prevue_naissance` obligatoire** +- `actif`/`scolarise` → **`date_naissance` obligatoire** + +--- + +## 4) Statut dossier — `statut` + +**Tables/colonnes** : `dossiers.statut` +**Valeurs autorisées (MVP)** : + +| Valeur | Description | +|---|---| +| `envoye` | Dossier soumis par le parent (état initial) | +| `en_cours` | Échanges en cours entre parent et AM | +| `clos` | Dossier clôturé (contrat généré ou abandon) | + +--- + +## 5) Statut contrat — `statut` + +**Tables/colonnes** : `contrats.statut` +**Valeurs autorisées** : + +| Valeur | Description | +|---|---| +| `brouillon` | Contrat en préparation | +| `valide` | Contrat finalisé (signatures complètes) | +| `archive` | Contrat obsolète / terminé | + +--- + +## 6) Statut avenant — `statut` + +**Tables/colonnes** : `avenants_contrats.statut` +**Valeurs autorisées** : + +| Valeur | Description | +|---|---| +| `propose` | Avenant proposé (en attente d’accord) | +| `valide` | Avenant accepté et appliqué | +| `rejete` | Avenant refusé | + +--- + +## 7) Type d’événement — `type` + +**Tables/colonnes** : `evenements.type` +**Valeurs autorisées** : + +| Valeur | Description | +|---|---| +| `absence_enfant` | Enfant absent | +| `conge_am` | Congé de l’assistante maternelle | +| `conge_parent` | Congé du parent | +| `arret_maladie_am` | Arrêt maladie AM | +| `evenement_rpe` | Événement RPE | + +--- + +## 8) Statut d’événement — `statut` + +**Tables/colonnes** : `evenements.statut` +**Valeurs autorisées** : + +| Valeur | Description | +|---|---| +| `propose` | Événement proposé | +| `valide` | Événement validé | +| `rejete` | Événement refusé | + +--- + +## 9) Statut de validation compte — `statut` + +**Tables/colonnes** : `validations.statut` +**Valeurs autorisées** : + +| Valeur | Description | +|---|---| +| `accepte` | Compte validé | +| `rejete` | Compte refusé | + +--- + +## 10) Type de notification — `type` + +**Tables/colonnes** : `notifications.type` +**Valeurs proposées** : + +| Valeur | Description | +|---|---| +| `nouveau_message` | Nouveau message sur un dossier | +| `validation_compte` | Résultat de la validation de compte | +| `maj_contrat` | Contrat mis à jour (avenant / signature) | +| `evenement_a_venir` | Rappel d’un événement proche | + +--- + +**Mainteneur** : Équipe BDD +**Dernière mise à jour** : Sprint 1 — Ticket 9 (ENUMS)