70 lines
1.5 KiB
TypeScript
70 lines
1.5 KiB
TypeScript
export class ShiftDto {
|
|
date: string;
|
|
type: string;
|
|
start_time: string;
|
|
end_time : string;
|
|
comment: string;
|
|
is_approved: boolean;
|
|
is_remote: boolean;
|
|
}
|
|
|
|
export class ExpenseDto {
|
|
type: string;
|
|
amount: number;
|
|
mileage: number;
|
|
comment: string;
|
|
total_mileage: number;
|
|
total_expense: number;
|
|
is_approved: boolean;
|
|
supervisor_comment: string;
|
|
}
|
|
|
|
export type DayShiftsDto = ShiftDto[];
|
|
|
|
export class DetailedShifts {
|
|
shifts: DayShiftsDto;
|
|
regular_hours: number;
|
|
evening_hours: number;
|
|
overtime_hours: number;
|
|
emergency_hours: number;
|
|
comment: string;
|
|
short_date: string;
|
|
break_durations?: number;
|
|
}
|
|
|
|
export class DayExpensesDto {
|
|
expense: ExpenseDto[] = [];
|
|
mileage: ExpenseDto[] = [];
|
|
per_diem: ExpenseDto[] = [];
|
|
on_call: ExpenseDto[] = [];
|
|
}
|
|
|
|
export class WeekDto {
|
|
is_approved: boolean;
|
|
shifts: {
|
|
sun: DetailedShifts;
|
|
mon: DetailedShifts;
|
|
tue: DetailedShifts;
|
|
wed: DetailedShifts;
|
|
thu: DetailedShifts;
|
|
fri: DetailedShifts;
|
|
sat: DetailedShifts;
|
|
}
|
|
expenses: {
|
|
sun: DayExpensesDto;
|
|
mon: DayExpensesDto;
|
|
tue: DayExpensesDto;
|
|
wed: DayExpensesDto;
|
|
thu: DayExpensesDto;
|
|
fri: DayExpensesDto;
|
|
sat: DayExpensesDto;
|
|
}
|
|
}
|
|
|
|
export class TimesheetPeriodDto {
|
|
weeks: WeekDto[];
|
|
employee_full_name: string;
|
|
}
|
|
|
|
|