diff --git a/src/entities/ProfileLeave.ts b/src/entities/ProfileLeave.ts index c9f060e3..89636da0 100644 --- a/src/entities/ProfileLeave.ts +++ b/src/entities/ProfileLeave.ts @@ -92,6 +92,7 @@ export class CreateProfileLeave { } export type UpdateProfileLeave = { + leaveTypeId?: string | null; dateLeave?: Date | null; leaveDays?: number | null; leverCount?: number | null; diff --git a/src/entities/ProfileLeaveHistory.ts b/src/entities/ProfileLeaveHistory.ts index d177f09e..1e43b4bd 100644 --- a/src/entities/ProfileLeaveHistory.ts +++ b/src/entities/ProfileLeaveHistory.ts @@ -1,264 +1,10 @@ import { Entity, Column, ManyToOne, JoinColumn } from "typeorm"; import { EntityBase } from "./base/Base"; import { Profile } from "./Profile"; -import { ProfileLeave } from "./ProfileLeave"; +import { ProfileLeave, CreateProfileLeave, UpdateProfileLeave } from "./ProfileLeave"; @Entity("profileLeaveHistory") -export class ProfileLeaveHistory extends EntityBase { - @Column({ - comment: "สถานะการใช้งาน", - default: false, - }) - isActive: boolean; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // restCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // restDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "ลาพักผ่อน (วัน)", - // default: null, - // }) - // sickCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "ลาป่วย (วัน)", - // default: null, - // }) - // sickDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // otherDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // personalCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "ลากิจส่วนตัว (วัน)", - // default: null, - // }) - // personalDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // studyCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // absentCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "ลาเข้ารับการตรวจเลือกหรือเข้ารับการเตรียมพล (วัน)", - // default: null, - // }) - // absentDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // agencyCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "ลาไปปฏิบัติงานในองค์การระหว่างประเทศ (วัน)", - // default: null, - // }) - // agencyDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // coupleCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "ลาติดตามคู่สมรส (วัน)", - // default: null, - // }) - // coupleDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // lateCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // lateDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // maternityCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "ลาคลอดบุตร (วัน)", - // default: null, - // }) - // maternityDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // militaryCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // militaryDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // ordainCount: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "ลาอุปสมบทหรือการลาประกอบพิธีฮัจย์ฯ (วัน)", - // default: null, - // }) - // ordainDay: number; - - // @Column({ - // nullable: true, - // type: "double", - // comment: "", - // default: null, - // }) - // otherCount: number; - - @Column({ - nullable: true, - type: "datetime", - comment: "วัน เดือน ปี ที่เริ่มลา", - default: null, - }) - dateStartLeave: Date; - - @Column({ - nullable: true, - type: "datetime", - comment: "วัน เดือน ปี ที่สิ้นสุดลา", - default: null, - }) - dateEndLeave: Date; - - @Column({ - nullable: true, - type: "double", - comment: "ลาครั้งที่", - default: null, - }) - numLeave: number; - - @Column({ - nullable: true, - type: "double", - comment: "ลามาแล้ว", - default: null, - }) - sumLeave: number; - - @Column({ - nullable: true, - type: "double", - comment: "รวมเป็น", - default: null, - }) - totalLeave: number; - - @Column({ - nullable: true, - comment: "สถานะ", - type: "text", - default: null, - }) - status: string; - - @Column({ - nullable: true, - length: 40, - comment: "คีย์นอก(FK)ของตาราง TypeLeave", - default: null, - }) - typeLeaveId: string; - - @Column({ - nullable: true, - comment: "เหตุผล", - type: "text", - default: null, - }) - reason: string; - +export class ProfileLeaveHistory extends ProfileLeave { @Column({ nullable: true, length: 40, @@ -272,105 +18,16 @@ export class ProfileLeaveHistory extends EntityBase { histories: ProfileLeave; } -export class CreateProfileLeaveHistory { - @Column() - isActive: boolean; - - // @Column() - // restCount: number | null; - - // @Column() - // restDay: number | null; - - // @Column() - // sickCount: number | null; - - // @Column() - // sickDay: number | null; - - // @Column() - // otherDay: number | null; - - // @Column() - // personalCount: number | null; - - // @Column() - // personalDay: number | null; - - // @Column() - // studyCount: number | null; - - // @Column() - // absentCount: number | null; - - // @Column() - // absentDay: number | null; - - // @Column() - // agencyCount: number | null; - - // @Column() - // agencyDay: number | null; - - // @Column() - // coupleCount: number | null; - - // @Column() - // coupleDay: number | null; - - // @Column() - // lateCount: number | null; - - // @Column() - // lateDay: number | null; - - // @Column() - // maternityCount: number | null; - - // @Column() - // maternityDay: number | null; - - // @Column() - // militaryCount: number | null; - - // @Column() - // militaryDay: number | null; - - // @Column() - // ordainCount: number | null; - - // @Column() - // ordainDay: number | null; - - // @Column() - // otherCount: number | null; - - @Column() - dateStartLeave: Date | null; - - @Column() - dateEndLeave: Date | null; - - @Column() - numLeave: number | null; - - @Column() - sumLeave: number | null; - - @Column() - totalLeave: number | null; - - @Column() - status: string | null; - - @Column("uuid") - typeLeaveId: string | null; - - @Column() - reason: string | null; - - @Column("uuid") +export class CreateProfileLeaveHistory extends CreateProfileLeave { profileLeaveId: string | null; } -export type UpdateProfileLeaveHistory = Partial; +export type UpdateProfileLeaveHistory = { + leaveTypeId?: string | null; + dateLeave?: Date | null; + leaveDays?: number | null; + leverCount?: number | null; + totalLeave?: number | null; + status?: string | null; + reason?: string | null; +};