59 lines
1.8 KiB
TypeScript
59 lines
1.8 KiB
TypeScript
import { ApiProperty } from '@nestjs/swagger';
|
|
import { StatutUtilisateurType } from 'src/entities/users.entity';
|
|
|
|
/** Utilisateur AM sans données sensibles (pour dossier AM complet). Ticket #119 */
|
|
export class DossierAmUserDto {
|
|
@ApiProperty()
|
|
id: string;
|
|
@ApiProperty()
|
|
email: string;
|
|
@ApiProperty({ required: false })
|
|
prenom?: string;
|
|
@ApiProperty({ required: false })
|
|
nom?: string;
|
|
@ApiProperty({ required: false })
|
|
telephone?: string;
|
|
@ApiProperty({ required: false })
|
|
adresse?: string;
|
|
@ApiProperty({ required: false })
|
|
ville?: string;
|
|
@ApiProperty({ required: false })
|
|
code_postal?: string;
|
|
@ApiProperty({ required: false })
|
|
profession?: string;
|
|
@ApiProperty({ required: false })
|
|
date_naissance?: Date;
|
|
@ApiProperty({ required: false })
|
|
photo_url?: string;
|
|
@ApiProperty({ enum: StatutUtilisateurType })
|
|
statut: StatutUtilisateurType;
|
|
}
|
|
|
|
/** Dossier AM complet (fiche AM sans secrets). Ticket #119 */
|
|
export class DossierAmCompletDto {
|
|
@ApiProperty({ example: '2026-000003', description: 'Numéro de dossier AM' })
|
|
numero_dossier: string;
|
|
@ApiProperty({ type: DossierAmUserDto, description: 'Utilisateur (sans mot de passe ni tokens)' })
|
|
user: DossierAmUserDto;
|
|
@ApiProperty({ required: false })
|
|
numero_agrement?: string;
|
|
@ApiProperty({ required: false })
|
|
nir?: string;
|
|
@ApiProperty({ required: false })
|
|
biographie?: string;
|
|
@ApiProperty({ required: false })
|
|
disponible?: boolean;
|
|
@ApiProperty({ required: false })
|
|
ville_residence?: string;
|
|
@ApiProperty({ required: false })
|
|
date_agrement?: Date;
|
|
@ApiProperty({ required: false })
|
|
annees_experience?: number;
|
|
@ApiProperty({ required: false })
|
|
specialite?: string;
|
|
@ApiProperty({ required: false })
|
|
nb_max_enfants?: number;
|
|
@ApiProperty({ required: false })
|
|
place_disponible?: number;
|
|
}
|