Julien Martin bbf73458cb feat: Intégration de la base de données PostgreSQL depuis YNOV
- Structure complète: utilisateurs, parents, assmat, enfants, contrats
- Migrations SQL avec enums et contraintes
- Seed: 1 super_admin (admin@ptits-pas.fr)
- Mot de passe: 4dm1n1strateur (hash bcrypt)
2025-11-24 15:44:39 +01:00

158 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 PtitsPas, 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 lOpenAPI / 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 daccord) |
| `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 lassistante 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 dun événement proche |
---
**Mainteneur** : Équipe BDD
**Dernière mise à jour** : Sprint 1 — Ticket 9 (ENUMS)