From 525a885e133b48e2171477b131d3be03b745e5ab Mon Sep 17 00:00:00 2001 From: Adisak Date: Thu, 19 Feb 2026 10:36:32 +0700 Subject: [PATCH] migration and #2317(2) --- src/controllers/ProfileEmployeeTempController.ts | 13 +++++++------ src/entities/EmployeePosType.ts | 3 +++ src/entities/ProfileEmployee.ts | 4 ++++ .../1771470195684-add_relation_posTypeTemp.ts | 15 +++++++++++++++ 4 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 src/migration/1771470195684-add_relation_posTypeTemp.ts diff --git a/src/controllers/ProfileEmployeeTempController.ts b/src/controllers/ProfileEmployeeTempController.ts index 58536ccb..6bde1171 100644 --- a/src/controllers/ProfileEmployeeTempController.ts +++ b/src/controllers/ProfileEmployeeTempController.ts @@ -1537,7 +1537,7 @@ export class ProfileEmployeeTempController extends Controller { let query = await this.profileRepo .createQueryBuilder("profileEmployee") .leftJoinAndSelect("profileEmployee.posLevelTemp", "posLevelTemp") - .leftJoinAndSelect("profileEmployee.posType", "posType") + .leftJoinAndSelect("profileEmployee.posTypeTemp", "posTypeTemp") .leftJoinAndSelect("profileEmployee.current_holderTemps", "current_holderTemps") .leftJoinAndSelect("profileEmployee.profileEmployeeEmployment", "profileEmployeeEmployment") .leftJoinAndSelect("current_holderTemps.positions", "positions") @@ -1606,7 +1606,7 @@ export class ProfileEmployeeTempController extends Controller { ) .andWhere( posType != undefined && posType != null && posType != "" - ? "posType.posTypeName LIKE :keyword1" + ? "posTypeTemp.posTypeName LIKE :keyword1" : "1=1", { keyword1: `${posType}`, @@ -1709,10 +1709,11 @@ export class ProfileEmployeeTempController extends Controller { citizenId: _data.citizenId, // posLevel: _data.posLevel == null ? null : _data.posLevel.posLevelName, posLevel: _data.posLevelTemp == null ? null : _data.posLevelTemp.posLevelName, - posType: _data.posType == null ? null : _data.posType.posTypeName, - posTypeShortName: _data.posType == null ? null : _data.posType.posTypeShortName, - posLevelId: _data.posLevel == null ? null : _data.posLevel.id, - posTypeId: _data.posType == null ? null : _data.posType.id, + // posType: _data.posType == null ? null : _data.posType.posTypeName, + posType: _data.posTypeTemp == null ? null : _data.posTypeTemp.posTypeName, + posTypeShortName: _data.posTypeTemp == null ? null : _data.posTypeTemp.posTypeShortName, + posLevelId: _data.posLevelTemp == null ? null : _data.posLevelTemp.id, + posTypeId: _data.posTypeTemp == null ? null : _data.posTypeTemp.id, positionId: _data.positionIdTemp, posmasterId: _data.posmasterIdTemp, position: _data.position, diff --git a/src/entities/EmployeePosType.ts b/src/entities/EmployeePosType.ts index 2fd02b2e..3e827fe6 100644 --- a/src/entities/EmployeePosType.ts +++ b/src/entities/EmployeePosType.ts @@ -39,6 +39,9 @@ export class EmployeePosType extends EntityBase { @OneToMany(() => ProfileEmployee, (profile) => profile.posType) profiles: ProfileEmployee[]; + + @OneToMany(() => ProfileEmployee, (profile) => profile.posTypeTemp) + profilesTemp: ProfileEmployee[]; } export class CreateEmployeePosType { diff --git a/src/entities/ProfileEmployee.ts b/src/entities/ProfileEmployee.ts index 3396d18c..50b6d78f 100644 --- a/src/entities/ProfileEmployee.ts +++ b/src/entities/ProfileEmployee.ts @@ -796,6 +796,10 @@ export class ProfileEmployee extends EntityBase { @JoinColumn({ name: "posLevelIdTemp" }) posLevelTemp: EmployeePosLevel; + @ManyToOne(() => EmployeePosType, (v) => v.profilesTemp) + @JoinColumn({ name: "posTypeIdTemp" }) + posTypeTemp: EmployeePosType; + @ManyToOne(() => EmployeePosType, (v) => v.profiles) posType: EmployeePosType; diff --git a/src/migration/1771470195684-add_relation_posTypeTemp.ts b/src/migration/1771470195684-add_relation_posTypeTemp.ts new file mode 100644 index 00000000..4772ded9 --- /dev/null +++ b/src/migration/1771470195684-add_relation_posTypeTemp.ts @@ -0,0 +1,15 @@ +import { MigrationInterface, QueryRunner } from "typeorm"; + +export class AddRelationPosTypeTemp1771470195684 implements MigrationInterface { + name = 'AddRelationPosTypeTemp1771470195684' + + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query(`ALTER TABLE \`profileEmployee\` ADD CONSTRAINT \`FK_bc2f7791abcc1e55a73b99216ca\` FOREIGN KEY (\`posTypeIdTemp\`) REFERENCES \`employeePosType\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`); + + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query(`ALTER TABLE \`profileEmployee\` DROP FOREIGN KEY \`FK_bc2f7791abcc1e55a73b99216ca\``); + } + +}