feat(auth): add profile and QR card identification endpoints
This commit is contained in:
@@ -131,6 +131,12 @@ En terminal interactif (VS Code), `migrate dev` fonctionne normalement (taper `y
|
||||
- Réutilise l'architecture en couches et l'auth simulée déjà en place.
|
||||
- Vérifié au runtime : Marie 1 (`EN_COURS`, son `CLOTURE` exclu), Lucas 1 (`EN_RETARD`), Sofia 0 (son `RETOUR_NON_CONFORME` exclu), 401 sans en-tête.
|
||||
|
||||
### Étape 16 — Block 4 : profil et identification
|
||||
- `GET /api/auth/me` (protégé) : renvoie le profil complet de l'utilisateur courant (role + campus).
|
||||
- `GET /api/auth/carte/:qr` (public) : identification par QR code (RG02/RG03) ; contrôles carte active, non expirée et compte actif ; renvoie le profil.
|
||||
- Refactor du routage : `currentUser` appliqué par sous-routeur (au lieu d'un middleware global) pour laisser la route d'identification publique.
|
||||
- Vérifié au runtime : `/me` 200 (profil Marie) et 401 sans en-tête ; `/carte` QR valide 200 sans en-tête (route publique), QR inconnu 404.
|
||||
|
||||
---
|
||||
|
||||
## Dette technique en attente
|
||||
@@ -141,8 +147,10 @@ En terminal interactif (VS Code), `migrate dev` fonctionne normalement (taper `y
|
||||
2. `MaterielAccessoire` -> `@@unique([materielId, accessoireId])` (un accessoire une seule fois par matériel)
|
||||
3. `Materiel.statut` -> `@default("DISPONIBLE")` (un matériel neuf est disponible, RG07)
|
||||
4. Tailles de colonnes `@db.NVarChar(n)` (actuellement `NVARCHAR(1000)` partout)
|
||||
5. Block 1 : middleware d'erreurs global, logs, ESLint + Prettier, Swagger/OpenAPI
|
||||
5. Swagger/OpenAPI (Block 1, reporté après les endpoints)
|
||||
6. Auth réelle Azure AD (Block 3) — remplacera l'auth simulée par en-tête
|
||||
7. DTO de sortie : les endpoints renvoient l'entité Prisma brute (`microsoftId`, timestamps exposés) — à filtrer avant la prod
|
||||
|
||||
---
|
||||
|
||||
*Dernière mise à jour : 2026-06-18 — Endpoint "mes emprunts en cours" en place.*
|
||||
*Dernière mise à jour : 2026-06-22 — Profil et identification par QR en place (3/6 du Block 4).*
|
||||
|
||||
Reference in New Issue
Block a user