158 lines
4.1 KiB
Markdown
158 lines
4.1 KiB
Markdown
|
||
# 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)
|