43 lines
1.3 KiB
TypeScript
43 lines
1.3 KiB
TypeScript
import {
|
|
Entity, PrimaryColumn, Column, OneToOne, JoinColumn
|
|
} from 'typeorm';
|
|
import { Users } from './users.entity';
|
|
|
|
@Entity('assistantes_maternelles')
|
|
export class AssistanteMaternelle {
|
|
// PK = FK vers utilisateurs.id
|
|
@PrimaryColumn('uuid', { name: 'id_utilisateur' })
|
|
user_id: string;
|
|
|
|
@OneToOne(() => Users, user => user.assistanteMaternelle, { onDelete: 'CASCADE' })
|
|
@JoinColumn({ name: 'id_utilisateur', referencedColumnName: 'id' })
|
|
user: Users;
|
|
|
|
@Column({ name: 'numero_agrement', length: 50, nullable: true })
|
|
approval_number?: string;
|
|
|
|
@Column({ name: 'date_naissance', type: 'date', nullable: true })
|
|
birthdate?: Date;
|
|
|
|
@Column({ name: 'ville_naissance', length: 100, nullable: true })
|
|
birthplace_city?: string;
|
|
|
|
@Column({ name: 'pays_naissance', length: 2, nullable: true })
|
|
birthplace_country?: string;
|
|
|
|
@Column({ name: 'nir_chiffre', length: 15, nullable: true })
|
|
nir?: string;
|
|
|
|
@Column({ name: 'nb_max_enfants', type: 'int', nullable: true })
|
|
max_children?: number;
|
|
|
|
@Column({ name: 'biographie', type: 'text', nullable: true })
|
|
biography?: string;
|
|
|
|
@Column({ name: 'disponible', type: 'boolean', default: true, nullable: true })
|
|
available?: boolean;
|
|
|
|
@Column({ name: 'ville_residence', length: 100, nullable: true })
|
|
residence_city?: string;
|
|
}
|