ผังเงินเดือนลูกจ้าง

This commit is contained in:
Kittapath 2024-03-13 09:30:04 +07:00
parent 0cf3d3dc85
commit 87f29e22e9
7 changed files with 699 additions and 61 deletions

View file

@ -0,0 +1,80 @@
import { MigrationInterface, QueryRunner } from "typeorm";
export class AddTableSalaryEmployees1710296971419 implements MigrationInterface {
name = 'AddTableSalaryEmployees1710296971419'
public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`CREATE TABLE \`salaryEmployees\` (\`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', \`name\` varchar(255) NOT NULL COMMENT 'ชื่อผัง', \`group\` varchar(40) NOT NULL COMMENT 'กลุ่มบัญชีการจ้าง', \`isActive\` tinyint NOT NULL COMMENT 'สถานะการใช้งาน', \`date\` datetime NULL COMMENT 'ให้ไว้ ณ วันที่', \`startDate\` datetime NULL COMMENT 'วันที่มีผลบังคับใช้', \`endDate\` datetime NULL COMMENT 'วันที่สิ้นสุดบังคับใช้', \`details\` varchar(255) NULL COMMENT 'คำอธิบาย', PRIMARY KEY (\`id\`)) ENGINE=InnoDB`);
await queryRunner.query(`CREATE TABLE \`salaryRankEmployees\` (\`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', \`salaryEmployeeId\` varchar(40) NOT NULL COMMENT 'คีย์นอก(FK)ของตาราง salaryEmployee', \`step\` double NOT NULL COMMENT 'ลำดับขั้น', \`salaryMounth\` double NULL COMMENT 'ค่าจ้างรายเดือน', \`salaryDay\` double NULL COMMENT 'ค่าจ้างรายวัน', PRIMARY KEY (\`id\`)) ENGINE=InnoDB`);
await queryRunner.query(`ALTER TABLE \`salaryRanks\` DROP FOREIGN KEY \`FK_b6c5dca80c76486ebcadf6a4dd9\``);
await queryRunner.query(`ALTER TABLE \`salaryRanks\` CHANGE \`salaryId\` \`salaryId\` varchar(40) NOT NULL COMMENT 'คีย์นอก(FK)ของตาราง salary'`);
await queryRunner.query(`ALTER TABLE \`posLevel\` DROP FOREIGN KEY \`FK_66caa3d974b67a8a8b343d029b2\``);
await queryRunner.query(`ALTER TABLE \`posLevel\` CHANGE \`posTypeId\` \`posTypeId\` varchar(40) NOT NULL COMMENT 'คีย์นอก(FK)ของตาราง posType'`);
await queryRunner.query(`ALTER TABLE \`salarys\` DROP FOREIGN KEY \`FK_fa211557e2cbee0bb3bbef363f2\``);
await queryRunner.query(`ALTER TABLE \`salarys\` DROP FOREIGN KEY \`FK_683719e5363cc977da591556731\``);
await queryRunner.query(`ALTER TABLE \`salarys\` CHANGE \`posTypeId\` \`posTypeId\` varchar(40) NOT NULL COMMENT 'คีย์นอก(FK)ของตาราง posType'`);
await queryRunner.query(`ALTER TABLE \`salarys\` CHANGE \`posLevelId\` \`posLevelId\` varchar(40) NOT NULL COMMENT 'คีย์นอก(FK)ของตาราง posLevel'`);
await queryRunner.query(`ALTER TABLE \`salaryPeriod\` CHANGE \`revisionId\` \`revisionId\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง orgRevision'`);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` DROP FOREIGN KEY \`FK_7fd317035fe8d0e03dc2443cf36\``);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` CHANGE \`salaryPeriodId\` \`salaryPeriodId\` varchar(40) NOT NULL COMMENT 'คีย์นอก(FK)ของตาราง salaryPeriod'`);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` CHANGE \`rootId\` \`rootId\` varchar(40) NOT NULL COMMENT 'คีย์นอก(FK)ของตาราง orgRoot'`);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` CHANGE \`revisionId\` \`revisionId\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง orgRevision'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` DROP FOREIGN KEY \`FK_d925088feca62ab41c131a87914\``);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`salaryOrgId\` \`salaryOrgId\` varchar(40) NOT NULL COMMENT 'คีย์นอก(FK)ของตาราง salaryOrg'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`rootId\` \`rootId\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง orgRoot'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`root\` \`root\` varchar(255) NULL COMMENT 'ชื่อของหน่วยงาน'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child1Id\` \`child1Id\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง orgChild1'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child1\` \`child1\` varchar(255) NULL COMMENT 'ชื่อส่วนราชการ'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child2Id\` \`child2Id\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง orgChild2'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child2\` \`child2\` varchar(255) NULL COMMENT 'ชื่อส่วนราชการ'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child3Id\` \`child3Id\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง orgChild3'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child3\` \`child3\` varchar(255) NULL COMMENT 'ชื่อส่วนราชการ'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child4Id\` \`child4Id\` varchar(40) NULL COMMENT 'คีย์นอก(FK)ของตาราง orgChild4'`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child4\` \`child4\` varchar(255) NULL COMMENT 'ชื่อส่วนราชการ'`);
await queryRunner.query(`ALTER TABLE \`salaryRanks\` ADD CONSTRAINT \`FK_b6c5dca80c76486ebcadf6a4dd9\` FOREIGN KEY (\`salaryId\`) REFERENCES \`salarys\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`posLevel\` ADD CONSTRAINT \`FK_66caa3d974b67a8a8b343d029b2\` FOREIGN KEY (\`posTypeId\`) REFERENCES \`posType\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`salarys\` ADD CONSTRAINT \`FK_fa211557e2cbee0bb3bbef363f2\` FOREIGN KEY (\`posTypeId\`) REFERENCES \`posType\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`salarys\` ADD CONSTRAINT \`FK_683719e5363cc977da591556731\` FOREIGN KEY (\`posLevelId\`) REFERENCES \`posLevel\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` ADD CONSTRAINT \`FK_7fd317035fe8d0e03dc2443cf36\` FOREIGN KEY (\`salaryPeriodId\`) REFERENCES \`salaryPeriod\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` ADD CONSTRAINT \`FK_d925088feca62ab41c131a87914\` FOREIGN KEY (\`salaryOrgId\`) REFERENCES \`salaryOrg\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`salaryRankEmployees\` ADD CONSTRAINT \`FK_34faa444506fac48ba76ab1e8b0\` FOREIGN KEY (\`salaryEmployeeId\`) REFERENCES \`salaryEmployees\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE \`salaryRankEmployees\` DROP FOREIGN KEY \`FK_34faa444506fac48ba76ab1e8b0\``);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` DROP FOREIGN KEY \`FK_d925088feca62ab41c131a87914\``);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` DROP FOREIGN KEY \`FK_7fd317035fe8d0e03dc2443cf36\``);
await queryRunner.query(`ALTER TABLE \`salarys\` DROP FOREIGN KEY \`FK_683719e5363cc977da591556731\``);
await queryRunner.query(`ALTER TABLE \`salarys\` DROP FOREIGN KEY \`FK_fa211557e2cbee0bb3bbef363f2\``);
await queryRunner.query(`ALTER TABLE \`posLevel\` DROP FOREIGN KEY \`FK_66caa3d974b67a8a8b343d029b2\``);
await queryRunner.query(`ALTER TABLE \`salaryRanks\` DROP FOREIGN KEY \`FK_b6c5dca80c76486ebcadf6a4dd9\``);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child4\` \`child4\` varchar(255) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child4Id\` \`child4Id\` varchar(40) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child3\` \`child3\` varchar(255) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child3Id\` \`child3Id\` varchar(40) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child2\` \`child2\` varchar(255) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child2Id\` \`child2Id\` varchar(40) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child1\` \`child1\` varchar(255) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`child1Id\` \`child1Id\` varchar(40) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`root\` \`root\` varchar(255) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`rootId\` \`rootId\` varchar(40) NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` CHANGE \`salaryOrgId\` \`salaryOrgId\` varchar(40) NOT NULL`);
await queryRunner.query(`ALTER TABLE \`salaryProfile\` ADD CONSTRAINT \`FK_d925088feca62ab41c131a87914\` FOREIGN KEY (\`salaryOrgId\`) REFERENCES \`salaryOrg\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` CHANGE \`revisionId\` \`revisionId\` varchar(40) NULL COMMENT 'id revision'`);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` CHANGE \`rootId\` \`rootId\` varchar(40) NOT NULL COMMENT 'id หน่วยงาน'`);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` CHANGE \`salaryPeriodId\` \`salaryPeriodId\` varchar(40) NOT NULL`);
await queryRunner.query(`ALTER TABLE \`salaryOrg\` ADD CONSTRAINT \`FK_7fd317035fe8d0e03dc2443cf36\` FOREIGN KEY (\`salaryPeriodId\`) REFERENCES \`salaryPeriod\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`salaryPeriod\` CHANGE \`revisionId\` \`revisionId\` varchar(40) NULL COMMENT 'id revision'`);
await queryRunner.query(`ALTER TABLE \`salarys\` CHANGE \`posLevelId\` \`posLevelId\` varchar(40) NOT NULL COMMENT 'Id ระดับของตำแหน่ง'`);
await queryRunner.query(`ALTER TABLE \`salarys\` CHANGE \`posTypeId\` \`posTypeId\` varchar(40) NOT NULL COMMENT 'Id ประเภทของตำแหน่ง'`);
await queryRunner.query(`ALTER TABLE \`salarys\` ADD CONSTRAINT \`FK_683719e5363cc977da591556731\` FOREIGN KEY (\`posLevelId\`) REFERENCES \`posLevel\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`salarys\` ADD CONSTRAINT \`FK_fa211557e2cbee0bb3bbef363f2\` FOREIGN KEY (\`posTypeId\`) REFERENCES \`posType\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`posLevel\` CHANGE \`posTypeId\` \`posTypeId\` varchar(40) NOT NULL COMMENT 'เป็นระดับของประเภทตำแหน่งใด'`);
await queryRunner.query(`ALTER TABLE \`posLevel\` ADD CONSTRAINT \`FK_66caa3d974b67a8a8b343d029b2\` FOREIGN KEY (\`posTypeId\`) REFERENCES \`posType\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE \`salaryRanks\` CHANGE \`salaryId\` \`salaryId\` varchar(40) NOT NULL COMMENT 'Id ผังเงินเดือน'`);
await queryRunner.query(`ALTER TABLE \`salaryRanks\` ADD CONSTRAINT \`FK_b6c5dca80c76486ebcadf6a4dd9\` FOREIGN KEY (\`salaryId\`) REFERENCES \`salarys\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
await queryRunner.query(`DROP TABLE \`salaryRankEmployees\``);
await queryRunner.query(`DROP TABLE \`salaryEmployees\``);
}
}