hrms-api-salary/src/entities/SalaryRanks.ts

108 lines
2.1 KiB
TypeScript
Raw Normal View History

2024-02-15 14:47:06 +07:00
import { Entity, Column, ManyToOne, JoinColumn, OneToOne, OneToMany } from "typeorm";
import { EntityBase } from "./base/Base";
import { Salarys } from "./Salarys";
@Entity("salaryRanks")
export class SalaryRanks extends EntityBase {
@Column({
length: 40,
comment: "Id ผังเงินเดือน",
})
salaryId: string;
@Column({
type: "double",
comment: "เงินเดือนฐาน",
})
salary: number;
@Column({
nullable: true,
type: "double",
comment: "0.5 ขั้น",
default: null,
})
salaryHalf: number | null;
@Column({
nullable: true,
type: "double",
comment: "0.5 ขั้น(เงินพิเศษ)",
default: null,
})
salaryHalfSpecial: number | null;
@Column({
nullable: true,
type: "double",
comment: "1 ขั้น",
default: null,
})
salaryFull: number | null;
@Column({
nullable: true,
type: "double",
comment: "1 ขั้น(เงินพิเศษ)",
default: null,
})
salaryFullSpecial: number | null;
@Column({
nullable: true,
type: "double",
comment: "1.5 ขั้น",
default: null,
})
salaryFullHalf: number | null;
@Column({
nullable: true,
type: "double",
comment: "1.5 ขั้น(เงินพิเศษ)",
default: null,
})
salaryFullHalfSpecial: number | null;
@Column({
comment: "ทะลุขั้น",
})
isNext: boolean;
@ManyToOne(() => Salarys, (salarys) => salarys.salaryRanks_)
@JoinColumn({ name: "salaryId" })
salarys_: Salarys;
}
export class CreateSalaryRank {
@Column("uuid")
salaryId: string;
@Column()
salary: number;
@Column()
2024-02-19 10:25:45 +07:00
salaryHalf?: number | null;
2024-02-15 14:47:06 +07:00
@Column()
2024-02-19 10:25:45 +07:00
salaryHalfSpecial?: number | null;
2024-02-15 14:47:06 +07:00
@Column()
2024-02-19 10:25:45 +07:00
salaryFull?: number | null;
2024-02-15 14:47:06 +07:00
@Column()
2024-02-19 10:25:45 +07:00
salaryFullSpecial?: number | null;
2024-02-15 14:47:06 +07:00
@Column()
2024-02-19 10:25:45 +07:00
salaryFullHalf?: number | null;
2024-02-15 14:47:06 +07:00
@Column()
2024-02-19 10:25:45 +07:00
salaryFullHalfSpecial?: number | null;
2024-02-15 14:47:06 +07:00
@Column()
isNext: boolean;
}
2024-02-15 17:19:58 +07:00
export type UpdateSalaryRank = Partial<Pick<CreateSalaryRank, Exclude<keyof CreateSalaryRank, 'salaryId'>>>;