This commit is contained in:
Bright 2025-03-05 16:07:14 +07:00
parent 1a39c0bfb1
commit 53e19272d8
5 changed files with 339 additions and 0 deletions

View file

@ -0,0 +1,88 @@
import {
Entity,
Column,
OneToMany,
JoinColumn,
ManyToOne,
Double,
ManyToMany,
JoinTable,
} from "typeorm";
import { EntityBase } from "./base/Base";
@Entity("tenureLevelEmployee")
export class TenureLevelEmployee extends EntityBase {
@Column({
nullable: true,
length: 40,
comment: "คีย์นอก(FK)ของตาราง profileEmployee",
default: null,
})
profileEmployeeId: string;
@Column({
nullable: true,
comment: "ระดับซี",
default: null,
length: 255,
})
positionCee: string;
@Column({
nullable: true,
comment: "จำนวนวัน",
default: null,
})
days_diff: number;
@Column({
nullable: true,
comment: "จำนวนปีดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Years: number;
@Column({
nullable: true,
comment: "จำนวนเดือนดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Months: number;
@Column({
nullable: true,
comment: "จำนวนวันดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Days: number;
@Column({
nullable: true,
comment: "ชื่อประเภทตำแหน่ง",
default: null,
length: 255,
})
positionType: string;
@Column({
nullable: true,
comment: "ชื่อระดับตำแหน่ง",
default: null,
length: 255,
})
positionLevel: string;
}
export class CreateTenureLevelOfficer {
profileEmployeeId: string;
positionCee: string | null;
days_diff: number | null;
Years: number | null;
Months: number | null;
Days: number | null;
positionType: string | null;
positionLevel: string | null;
}

View file

@ -0,0 +1,88 @@
import {
Entity,
Column,
OneToMany,
JoinColumn,
ManyToOne,
Double,
ManyToMany,
JoinTable,
} from "typeorm";
import { EntityBase } from "./base/Base";
@Entity("tenureLevelOfficer")
export class TenureLevelOfficer extends EntityBase {
@Column({
nullable: true,
length: 40,
comment: "คีย์นอก(FK)ของตาราง Profile",
default: null,
})
profileId: string;
@Column({
nullable: true,
comment: "ระดับซี",
default: null,
length: 255,
})
positionCee: string;
@Column({
nullable: true,
comment: "จำนวนวัน",
default: null,
})
days_diff: number;
@Column({
nullable: true,
comment: "จำนวนปีดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Years: number;
@Column({
nullable: true,
comment: "จำนวนเดือนดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Months: number;
@Column({
nullable: true,
comment: "จำนวนวันดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Days: number;
@Column({
nullable: true,
comment: "ชื่อประเภทตำแหน่ง",
default: null,
length: 255,
})
positionType: string;
@Column({
nullable: true,
comment: "ชื่อระดับตำแหน่ง",
default: null,
length: 255,
})
positionLevel: string;
}
export class CreateTenureLevelOfficer {
profileId: string;
positionCee: string | null;
days_diff: number | null;
Years: number | null;
Months: number | null;
Days: number | null;
positionType: string | null;
positionLevel: string | null;
}

View file

@ -0,0 +1,71 @@
import {
Entity,
Column,
OneToMany,
JoinColumn,
ManyToOne,
Double,
ManyToMany,
JoinTable,
} from "typeorm";
import { EntityBase } from "./base/Base";
@Entity("tenurePositionEmployee")
export class TenurePositionEmployee extends EntityBase {
@Column({
nullable: true,
length: 40,
comment: "คีย์นอก(FK)ของตาราง ProfileEmployee",
default: null,
})
profileEmployeeId: string;
@Column({
nullable: true,
comment: "ชื่อตำแหน่ง",
default: null,
length: 255,
})
positionName: string;
@Column({
nullable: true,
comment: "จำนวนวัน",
default: null,
})
days_diff: number;
@Column({
nullable: true,
comment: "จำนวนปีดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Years: number;
@Column({
nullable: true,
comment: "จำนวนเดือนดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Months: number;
@Column({
nullable: true,
comment: "จำนวนวันดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Days: number;
}
export class CreateTenurePositionEmployee {
profileEmployeeId: string;
positionName: string | null;
days_diff: number | null;
Years: number | null;
Months: number | null;
Days: number | null;
}

View file

@ -0,0 +1,71 @@
import {
Entity,
Column,
OneToMany,
JoinColumn,
ManyToOne,
Double,
ManyToMany,
JoinTable,
} from "typeorm";
import { EntityBase } from "./base/Base";
@Entity("tenurePositionOfficer")
export class TenurePositionOfficer extends EntityBase {
@Column({
nullable: true,
length: 40,
comment: "คีย์นอก(FK)ของตาราง Profile",
default: null,
})
profileId: string;
@Column({
nullable: true,
comment: "ชื่อตำแหน่ง",
default: null,
length: 255,
})
positionName: string;
@Column({
nullable: true,
comment: "จำนวนวัน",
default: null,
})
days_diff: number;
@Column({
nullable: true,
comment: "จำนวนปีดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Years: number;
@Column({
nullable: true,
comment: "จำนวนเดือนดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Months: number;
@Column({
nullable: true,
comment: "จำนวนวันดำรงตำแหน่งงปัจจุบัน",
default: null,
})
Days: number;
}
export class CreateTenurePositionOfficer {
profileId: string;
positionName: string | null;
days_diff: number | null;
Years: number | null;
Months: number | null;
Days: number | null;
}

View file

@ -0,0 +1,21 @@
import { MigrationInterface, QueryRunner } from "typeorm";
export class AddNewTable050320251741164808500 implements MigrationInterface {
name = 'AddNewTable050320251741164808500'
public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`CREATE TABLE \`tenurePositionEmployee\` (\`id\` varchar(36) NOT NULL, \`createdAt\` datetime(6) NOT NULL COMMENT 'สร้างข้อมูลเมื่อ' DEFAULT CURRENT_TIMESTAMP(6), \`createdUserId\` varchar(40) NOT NULL COMMENT 'User Id ที่สร้างข้อมูล' DEFAULT '00000000-0000-0000-0000-000000000000', \`lastUpdatedAt\` datetime(6) NOT NULL COMMENT 'แก้ไขข้อมูลล่าสุดเมื่อ' DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6), \`lastUpdateUserId\` varchar(40) NOT NULL COMMENT 'User Id ที่แก้ไขข้อมูล' DEFAULT '00000000-0000-0000-0000-000000000000', \`createdFullName\` varchar(200) NOT NULL COMMENT 'ชื่อ User ที่สร้างข้อมูล' DEFAULT 'string', \`lastUpdateFullName\` varchar(200) NOT NULL COMMENT 'ชื่อ User ที่แก้ไขข้อมูลล่าสุด' DEFAULT 'string', \`profileEmployeeId\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง ProfileEmployee', \`positionName\` varchar(255) NULL COMMENT 'ชื่อตำแหน่ง', \`days_diff\` int NULL COMMENT 'จำนวนวัน', \`Years\` int NULL COMMENT 'จำนวนปีดำรงตำแหน่งงปัจจุบัน', \`Months\` int NULL COMMENT 'จำนวนเดือนดำรงตำแหน่งงปัจจุบัน', \`Days\` int NULL COMMENT 'จำนวนวันดำรงตำแหน่งงปัจจุบัน', PRIMARY KEY (\`id\`)) ENGINE=InnoDB`);
await queryRunner.query(`CREATE TABLE \`tenurePositionOfficer\` (\`id\` varchar(36) NOT NULL, \`createdAt\` datetime(6) NOT NULL COMMENT 'สร้างข้อมูลเมื่อ' DEFAULT CURRENT_TIMESTAMP(6), \`createdUserId\` varchar(40) NOT NULL COMMENT 'User Id ที่สร้างข้อมูล' DEFAULT '00000000-0000-0000-0000-000000000000', \`lastUpdatedAt\` datetime(6) NOT NULL COMMENT 'แก้ไขข้อมูลล่าสุดเมื่อ' DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6), \`lastUpdateUserId\` varchar(40) NOT NULL COMMENT 'User Id ที่แก้ไขข้อมูล' DEFAULT '00000000-0000-0000-0000-000000000000', \`createdFullName\` varchar(200) NOT NULL COMMENT 'ชื่อ User ที่สร้างข้อมูล' DEFAULT 'string', \`lastUpdateFullName\` varchar(200) NOT NULL COMMENT 'ชื่อ User ที่แก้ไขข้อมูลล่าสุด' DEFAULT 'string', \`profileId\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง Profile', \`positionName\` varchar(255) NULL COMMENT 'ชื่อตำแหน่ง', \`days_diff\` int NULL COMMENT 'จำนวนวัน', \`Years\` int NULL COMMENT 'จำนวนปีดำรงตำแหน่งงปัจจุบัน', \`Months\` int NULL COMMENT 'จำนวนเดือนดำรงตำแหน่งงปัจจุบัน', \`Days\` int NULL COMMENT 'จำนวนวันดำรงตำแหน่งงปัจจุบัน', PRIMARY KEY (\`id\`)) ENGINE=InnoDB`);
await queryRunner.query(`CREATE TABLE \`tenureLevelEmployee\` (\`id\` varchar(36) NOT NULL, \`createdAt\` datetime(6) NOT NULL COMMENT 'สร้างข้อมูลเมื่อ' DEFAULT CURRENT_TIMESTAMP(6), \`createdUserId\` varchar(40) NOT NULL COMMENT 'User Id ที่สร้างข้อมูล' DEFAULT '00000000-0000-0000-0000-000000000000', \`lastUpdatedAt\` datetime(6) NOT NULL COMMENT 'แก้ไขข้อมูลล่าสุดเมื่อ' DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6), \`lastUpdateUserId\` varchar(40) NOT NULL COMMENT 'User Id ที่แก้ไขข้อมูล' DEFAULT '00000000-0000-0000-0000-000000000000', \`createdFullName\` varchar(200) NOT NULL COMMENT 'ชื่อ User ที่สร้างข้อมูล' DEFAULT 'string', \`lastUpdateFullName\` varchar(200) NOT NULL COMMENT 'ชื่อ User ที่แก้ไขข้อมูลล่าสุด' DEFAULT 'string', \`profileEmployeeId\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง profileEmployee', \`positionCee\` varchar(255) NULL COMMENT 'ระดับซี', \`days_diff\` int NULL COMMENT 'จำนวนวัน', \`Years\` int NULL COMMENT 'จำนวนปีดำรงตำแหน่งงปัจจุบัน', \`Months\` int NULL COMMENT 'จำนวนเดือนดำรงตำแหน่งงปัจจุบัน', \`Days\` int NULL COMMENT 'จำนวนวันดำรงตำแหน่งงปัจจุบัน', \`positionType\` varchar(255) NULL COMMENT 'ชื่อประเภทตำแหน่ง', \`positionLevel\` varchar(255) NULL COMMENT 'ชื่อระดับตำแหน่ง', PRIMARY KEY (\`id\`)) ENGINE=InnoDB`);
await queryRunner.query(`CREATE TABLE \`tenureLevelOfficer\` (\`id\` varchar(36) NOT NULL, \`createdAt\` datetime(6) NOT NULL COMMENT 'สร้างข้อมูลเมื่อ' DEFAULT CURRENT_TIMESTAMP(6), \`createdUserId\` varchar(40) NOT NULL COMMENT 'User Id ที่สร้างข้อมูล' DEFAULT '00000000-0000-0000-0000-000000000000', \`lastUpdatedAt\` datetime(6) NOT NULL COMMENT 'แก้ไขข้อมูลล่าสุดเมื่อ' DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6), \`lastUpdateUserId\` varchar(40) NOT NULL COMMENT 'User Id ที่แก้ไขข้อมูล' DEFAULT '00000000-0000-0000-0000-000000000000', \`createdFullName\` varchar(200) NOT NULL COMMENT 'ชื่อ User ที่สร้างข้อมูล' DEFAULT 'string', \`lastUpdateFullName\` varchar(200) NOT NULL COMMENT 'ชื่อ User ที่แก้ไขข้อมูลล่าสุด' DEFAULT 'string', \`profileId\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง Profile', \`positionCee\` varchar(255) NULL COMMENT 'ระดับซี', \`days_diff\` int NULL COMMENT 'จำนวนวัน', \`Years\` int NULL COMMENT 'จำนวนปีดำรงตำแหน่งงปัจจุบัน', \`Months\` int NULL COMMENT 'จำนวนเดือนดำรงตำแหน่งงปัจจุบัน', \`Days\` int NULL COMMENT 'จำนวนวันดำรงตำแหน่งงปัจจุบัน', \`positionType\` varchar(255) NULL COMMENT 'ชื่อประเภทตำแหน่ง', \`positionLevel\` varchar(255) NULL COMMENT 'ชื่อระดับตำแหน่ง', PRIMARY KEY (\`id\`)) ENGINE=InnoDB`);
}
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`DROP TABLE \`tenureLevelOfficer\``);
await queryRunner.query(`DROP TABLE \`tenureLevelEmployee\``);
await queryRunner.query(`DROP TABLE \`tenurePositionOfficer\``);
await queryRunner.query(`DROP TABLE \`tenurePositionEmployee\``);
}
}