Checkpoint: Évolution v2 complète : nouveau profil Adhérent FEHAP, connexion locale par email/mot de passe (bcrypt), création manuelle d'utilisateurs par les gestionnaires, affectation d'établissements aux adhérents, page de choix de connexion (/login), refonte de la page Admin avec CRUD complet. 33 tests Vitest passés, zéro erreur TypeScript.
This commit is contained in:
25
todo.md
25
todo.md
@@ -31,3 +31,28 @@
|
||||
|
||||
## Tests
|
||||
- [x] Tests unitaires procédures tRPC (14 tests passés)
|
||||
|
||||
## Évolution v2 — Profil Adhérent FEHAP & Auth locale
|
||||
|
||||
### Base de données
|
||||
- [x] Étendre enum sonumRole : ajouter "adherent"
|
||||
- [x] Table local_users : id, userId (FK), passwordHash, createdAt
|
||||
- [x] Vérifier que la table users supporte les comptes créés manuellement (sans openId OAuth)
|
||||
|
||||
### Backend tRPC
|
||||
- [x] Procédure admin.createUser : créer un utilisateur manuellement (nom, email, rôle, mot de passe)
|
||||
- [x] Procédure admin.listUsers : liste complète des utilisateurs avec rôle et établissements
|
||||
- [x] Procédure admin.updateUser : modifier nom, email, rôle d'un utilisateur
|
||||
- [x] Procédure admin.deleteUser : supprimer un utilisateur
|
||||
- [x] Procédure admin.setAffectations : affecter un ou plusieurs établissements à un adhérent
|
||||
- [x] Procédure admin.removeEtablissement : retirer un établissement d'un adhérent (inclus dans setAffectations)
|
||||
- [x] Procédure auth.loginLocal : authentification par email + mot de passe (JWT session)
|
||||
- [x] Middleware : les adhérents FEHAP voient uniquement leurs établissements affectés
|
||||
|
||||
### Interface
|
||||
- [x] Page de choix de connexion : OAuth FEHAP vs Connexion locale
|
||||
- [x] Formulaire de connexion locale (email + mot de passe)
|
||||
- [x] Page admin : onglet "Gestion des utilisateurs" avec tableau et actions CRUD
|
||||
- [x] Page admin : affectations établissements inline dans le tableau utilisateurs
|
||||
- [x] Badge "Adhérent FEHAP" dans le header et la sidebar
|
||||
- [x] Vue "Mes Établissements" filtrée pour les adhérents (uniquement les établissements affectés)
|
||||
|
||||
Reference in New Issue
Block a user