hrms-api-org/src/entities/CommandOperator.ts
2026-02-03 12:22:55 +07:00

117 lines
No EOL
2.5 KiB
TypeScript

import { Entity, Column, JoinColumn, ManyToOne, Double } from "typeorm";
import { EntityBase } from "./base/Base";
import { Command } from "./Command";
@Entity("commandOperator")
export class CommandOperator extends EntityBase {
@Column({
nullable: true,
comment: "คีย์นอก(FK)ของตาราง profile",
length: 40,
default: null,
})
profileId: string;
@Column({
nullable: true,
comment: "คำนำหน้า",
length: 255,
default: null,
})
prefix: string;
@Column({
nullable: true,
comment: "ชื่อ",
length: 255,
default: null,
})
firstName: string;
@Column({
nullable: true,
comment: "สกุล",
length: 255,
default: null,
})
lastName: string;
@Column({
nullable: true,
comment: "เลขที่ตำแหน่ง",
length: 255,
default: null,
})
posNo: string;
@Column({
nullable: true,
comment: "ประเภท",
length: 255,
default: null,
})
posType: string;
@Column({
nullable: true,
comment: "ระดับ",
length: 255,
default: null,
})
posLevel: string;
@Column({
nullable: true,
comment: "ตำแหน่งในสายงาน",
length: 255,
default: null,
})
position: string;
@Column({
nullable: true,
comment: "ตำแหน่งทางการบริหาร",
length: 255,
default: null,
})
positionExecutive: string;
@Column({
nullable: true,
comment: "บทบาทของเจ้าหน้าที่ดำเนินการ เช่น ผอ.สกจ. / รักษาการ ผอ.สกจ. / ผอ. กบห. / รักษาการ ผอ. กบห. / ผอ. ส่วน",
length: 255,
default: null,
})
roleName: string;
@Column({
nullable: true,
comment: "ลำดับบทบาทของเจ้าหน้าที่ดำเนินการ",
default: null,
})
orderNo: number;
@Column({
length: 40,
comment: "คีย์นอก(FK)ของตาราง command",
})
commandId: string;
@ManyToOne(() => Command, (command) => command.commandOperators)
@JoinColumn({ name: "commandId" })
command: Command;
}
export class CreateCommandOperatorDto {
profileId: string;
prefix?: string;
firstName?: string;
lastName?: string;
posNo?: string;
posType?: string;
posLevel?: string;
position?: string;
positionExecutive?: string;
roleName: string;
}