From d5d65db5808c1b17b18846dea4b651ff82ed61c2 Mon Sep 17 00:00:00 2001 From: AdisakKanthawilang Date: Thu, 19 Dec 2024 20:01:31 +0700 Subject: [PATCH] #873 (1),(3) --- src/controllers/EmployeePositionController.ts | 18 ++++++++++++++++++ .../ProfileEmployeeTempController.ts | 1 + 2 files changed, 19 insertions(+) diff --git a/src/controllers/EmployeePositionController.ts b/src/controllers/EmployeePositionController.ts index 80c3cf56..6fe61849 100644 --- a/src/controllers/EmployeePositionController.ts +++ b/src/controllers/EmployeePositionController.ts @@ -1087,6 +1087,9 @@ export class EmployeePositionController extends Controller { .leftJoinAndSelect("posMaster.current_holder", "current_holder") .leftJoinAndSelect("posMaster.next_holder", "next_holder") .leftJoinAndSelect("posMaster.orgRevision", "orgRevision") + .leftJoinAndSelect("posMaster.positions", "positions") + .leftJoinAndSelect("positions.posType", "posType") + .leftJoinAndSelect("positions.posLevel", "posLevel") .where(conditions) .orWhere( new Brackets((qb) => { @@ -1132,6 +1135,21 @@ export class EmployeePositionController extends Controller { .andWhere(revisionCondition); }), ) + .orWhere( + new Brackets((qb) => { + qb.andWhere( + body.keyword != null && body.keyword != "" + ? `CONCAT(posType.posTypeShortName,' ',posLevel.posLevelName) like '%${body.keyword}%'` + : "1=1", + { + keyword: `%${body.keyword}%`, + }, + ) + .andWhere(checkChildConditions) + .andWhere(typeCondition) + .andWhere(revisionCondition); + }), + ) .orderBy("posMaster.posMasterOrder", "ASC") .skip((body.page - 1) * body.pageSize) .take(body.pageSize) diff --git a/src/controllers/ProfileEmployeeTempController.ts b/src/controllers/ProfileEmployeeTempController.ts index eb707207..e20eaa7d 100644 --- a/src/controllers/ProfileEmployeeTempController.ts +++ b/src/controllers/ProfileEmployeeTempController.ts @@ -864,6 +864,7 @@ export class ProfileEmployeeTempController extends Controller { } Object.assign(record, body); + record.prefixMain = record.prefix; record.createdUserId = request.user.sub; record.createdFullName = request.user.name; record.createdAt = new Date();