hrms-mgt/src/modules/09_leave/interface/response/leave.ts
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 8dc473eec0 refactor(leave): validate isAct commander
2026-05-11 15:54:10 +07:00

112 lines
3.4 KiB
TypeScript

interface DataRows {
id: string; //*Id การยื่นขอลา
leaveTypeName: string | null; //Name ประเภทการลา
leaveTypeId: string; //Id ประเภทการลา
fullName: string; //คำนำหน้า ชื่อ นามสกุล คนขอลา
dateSendLeave: string | null; //วันที่ยื่นใบลา
status: string | null; //ส
}
interface ListLeave {
id: string; //*Id การยื่นขอลา
leaveTypeName: string | null; //Name ประเภทการลา
leaveTypeId: string; //Id ประเภทการลา
fullName: string; //คำนำหน้า ชื่อ นามสกุล คนขอลา
dateSendLeave: Date | null; //วันที่ยื่นใบลา
status: string | null; //ส
leaveSubTypeName: string; //ส
leaveRange: string; //ส
leaveRangeEnd: string; //ส
citizenId?: string;
leaveStartDate?: Date | null;
leaveEndDate?: Date | null;
agency?: string;
profileType?: string;
org?: string;
position?: string;
level?: string;
hajjDayStatus?: boolean;
leaveTotal: number; //จำนวนวันที่ลา
}
interface FormData {
id: string;
leaveType: string;
name: string;
Date: string;
status: string;
}
interface RowsType {
commanders: SeqTypeRow[];
approvers: SeqTypeRow[];
}
interface SeqTypeRow {
seq: number;
prefix: string;
firstName: string;
lastName: string;
positionName: string;
positionSign?: string;
profileId: string;
keycloakId: string;
approveStatus: string;
comment: string;
keyId?: string;
isAct?: boolean;
}
interface DataDateMonthObject {
month: number;
year: number;
}
interface LeaveType {
code: string;
createdAt: Date;
createdFullName: string;
createdUserId: string;
id: string;
lastUpdateFullName: string;
lastUpdateUserId: string;
lastUpdatedAt: Date | null;
limit: Number;
name: string;
}
interface FormReject {
id: string; //*Id การยื่นขอลา
leaveTypeName: string; //Name ประเภทการลา
fullName: string; //คำนำหน้า ชื่อ นามสกุล คนขอลา
status: string; //สถานะการของลา
leaveDocDelete: string; //เอกสารการยกเลิกการลา
leaveReasonDelete: string; //เหตุผลการยกเลิกการลา
leaveWrote: string; //เขียนที่
leaveAddress: string; //สถานที่ติดต่อขณะลา
leaveNumber: string; //หมายเลขที่ติดต่อขณะลา
leaveDetail: string; //รายละเอียดการลา
leaveTotal: number; //จำนวนวันที่ลา
leaveStartDate: Date; //วัน เดือน ปีเริ่มต้นลา
leaveEndDate: Date; //วัน เดือน ปีสิ้นสุดลา
leaveDirectorComment?: string; //ความคิดเห็นของผู้บังคับบัญชา
}
interface ResCalendar {
dateSendLeave: Date;
fullName: string;
id: string;
keycloakId: string;
leaveEndDate: Date;
leaveStartDate: Date;
leaveTypeId: string;
leaveTypeName: string;
status: string;
}
export type {
DataRows,
FormData,
DataDateMonthObject,
ListLeave,
LeaveType,
FormReject,
ResCalendar,
SeqTypeRow,
RowsType,
};