50 lines
1.1 KiB
TypeScript
50 lines
1.1 KiB
TypeScript
import { ApiProperty } from '@nestjs/swagger';
|
|
import { LeaveApprovalStatus, LeaveTypes } from '@prisma/client';
|
|
|
|
export class LeaveRequestEntity {
|
|
@ApiProperty({
|
|
example: 1,
|
|
description: 'Leave request`s unique id(auto-incremented)',
|
|
})
|
|
id: number;
|
|
|
|
@ApiProperty({
|
|
example: 42,
|
|
description: 'ID of concerned employee',
|
|
})
|
|
employee_id: number;
|
|
|
|
@ApiProperty({
|
|
example: 'SICK',
|
|
enum: LeaveTypes,
|
|
description: 'type of leave request for an accounting perception',
|
|
})
|
|
leave_type: LeaveTypes;
|
|
|
|
@ApiProperty({
|
|
example: '22/06/2463',
|
|
description: 'Leave request`s start date',
|
|
})
|
|
start_date_time: Date;
|
|
|
|
@ApiProperty({
|
|
example: '25/03/3019',
|
|
description: 'Leave request`s end date (optionnal)',
|
|
required: false,
|
|
})
|
|
end_date_time?: Date;
|
|
|
|
@ApiProperty({
|
|
example: 'My precious',
|
|
description: 'Leave request employee`s comment',
|
|
})
|
|
comment: string;
|
|
|
|
@ApiProperty({
|
|
example: 'PENDING',
|
|
enum: LeaveApprovalStatus,
|
|
description: 'Leave request`s approval status',
|
|
})
|
|
approval_status: LeaveApprovalStatus;
|
|
}
|