hrms-api-eva/src/entities/Salary.ts

53 lines
2 KiB
TypeScript
Raw Normal View History

2024-12-04 17:25:34 +07:00
import { Entity, Column, ManyToOne, JoinColumn, OneToOne } from "typeorm";
import { EntityBase } from "./base/Base";
import { Evaluation } from "./Evaluation";
@Entity("salary")
export class Salary extends EntityBase {
@Column({
comment: "Id การทำรายการระบบประเมิน",
length: 40,
default: "00000000-0000-0000-0000-000000000000",
})
evaluationId: string;
@Column({ nullable: true, type: "datetime", comment: "วัน เดือน ปี รับตำแหน่ง" })
date: Date;
@Column({ nullable: true, type: "double precision", comment: "เงินเดือน" })
amount: number;
@Column({ nullable: true, type: "double precision", comment: "เงินประจำตำแหน่ง" })
positionSalaryAmount: number;
@Column({ nullable: true, type: "double precision", comment: "เงินค่าตอบแทนรายเดือน" })
mouthSalaryAmount: number;
@Column({ nullable: true, comment: "ตำแหน่ง" })
position: string;
@Column({ nullable: true, comment: "เลขที่ตำแหน่ง" })
posNo: string;
@Column({ nullable: true, comment: "ตำแหน่ง (รายละเอียด)" })
salaryClass: string;
@Column({ nullable: true, comment: "เอกสารอ้างอิง" })
salaryRef: string;
@Column({ nullable: true, comment: "เอกสารอ้างอิง (เลขที่คำสั่ง)" })
refCommandNo: string;
@Column({ nullable: true, type: "datetime", comment: "เอกสารอ้างอิง (ลงวันที่)" })
refCommandDate: Date;
@Column({ nullable: true, comment: "ประเภทตำแหน่งกรณีพิเศษ" })
salaryStatus: string;
@ManyToOne(() => Evaluation, (Evaluation) => Evaluation.salaries)
@JoinColumn({ name: "evaluationId" })
evaluation: Evaluation;
}
export type UpdateSalary = Partial<Salary>;