96 lines
1.3 KiB
TypeScript
96 lines
1.3 KiB
TypeScript
import { IsString, IsOptional, IsEnum, IsNumber, IsInt } from 'class-validator';
|
|
|
|
export class CreateStudentDto {
|
|
@IsString()
|
|
name: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
phone?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
idNumber?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
gender?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
ethnicity?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
emergencyContact?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
emergencyPhone?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
organization?: string;
|
|
|
|
@IsOptional()
|
|
@IsNumber()
|
|
tenantId?: number;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
supervisor?: string;
|
|
@IsOptional()
|
|
@IsInt()
|
|
departmentId?: number;
|
|
|
|
@IsOptional()
|
|
@IsInt()
|
|
classId?: number;
|
|
}
|
|
|
|
export class UpdateStudentDto {
|
|
@IsOptional()
|
|
@IsString()
|
|
name?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
phone?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
idNumber?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
gender?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
ethnicity?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
emergencyContact?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
emergencyPhone?: string;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
organization?: string;
|
|
|
|
@IsOptional()
|
|
@IsNumber()
|
|
tenantId?: number;
|
|
|
|
@IsOptional()
|
|
@IsString()
|
|
supervisor?: string;
|
|
|
|
@IsOptional()
|
|
@IsEnum(['active', 'graduated', 'withdrawn'])
|
|
status?: string;
|
|
}
|