feat(backend): endpoint inscription parent + nettoyage code #9
🧹 NETTOYAGE CODE ÉTUDIANT: - Suppression console.log/error (4 occurrences) - Suppression code commenté inutile - Suppression champs obsolètes (mobile, telephone_fixe) - Correction password nullable dans Users entity ✨ NOUVELLES FONCTIONNALITÉS: - Ajout champs token_creation_mdp dans Users entity - Création RegisterParentDto (validation complète) - Endpoint POST /auth/register/parent - Méthode registerParent() avec transaction - Gestion Parent 1 + Parent 2 (co-parent optionnel) - Génération tokens UUID pour création MDP - Lecture durée token depuis AppConfigService - Création automatique entités Parents - Statut EN_ATTENTE par défaut - Intégration AppConfigModule dans AuthModule - Amélioration méthode login() (vérif statut + password null) 📋 WORKFLOW CDC CONFORME: - Inscription SANS mot de passe - Token envoyé par email (TODO) - Validation gestionnaire requise - Support co-parent avec même adresse Réf: docs/20_WORKFLOW-CREATION-COMPTE.md Ticket: #9 (ou #16)
This commit is contained in:
@@ -3,6 +3,7 @@ import { LoginDto } from './dto/login.dto';
|
||||
import { AuthService } from './auth.service';
|
||||
import { Public } from 'src/common/decorators/public.decorator';
|
||||
import { RegisterDto } from './dto/register.dto';
|
||||
import { RegisterParentDto } from './dto/register-parent.dto';
|
||||
import { ApiBearerAuth, ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger';
|
||||
import { AuthGuard } from 'src/common/guards/auth.guard';
|
||||
import type { Request } from 'express';
|
||||
@@ -30,11 +31,21 @@ export class AuthController {
|
||||
|
||||
@Public()
|
||||
@Post('register')
|
||||
@ApiOperation({ summary: 'Inscription' })
|
||||
@ApiOperation({ summary: 'Inscription (OBSOLÈTE - utiliser /register/parent)' })
|
||||
@ApiResponse({ status: 409, description: 'Email déjà utilisé' })
|
||||
async register(@Body() dto: RegisterDto) {
|
||||
return this.authService.register(dto);
|
||||
}
|
||||
|
||||
@Public()
|
||||
@Post('register/parent')
|
||||
@ApiOperation({ summary: 'Inscription Parent (étape 1/6)' })
|
||||
@ApiResponse({ status: 201, description: 'Inscription réussie' })
|
||||
@ApiResponse({ status: 409, description: 'Email déjà utilisé' })
|
||||
async registerParent(@Body() dto: RegisterParentDto) {
|
||||
return this.authService.registerParent(dto);
|
||||
}
|
||||
|
||||
@Public()
|
||||
@Post('refresh')
|
||||
@ApiBearerAuth('refresh_token')
|
||||
|
||||
Reference in New Issue
Block a user