From 5d4727761f0cd19ae5b64330aaad4704bae7c36f Mon Sep 17 00:00:00 2001 From: AdisakKanthawilang Date: Tue, 1 Apr 2025 20:46:30 +0700 Subject: [PATCH] =?UTF-8?q?fix=20=E0=B8=9E=E0=B9=89=E0=B8=99=E0=B8=9E?= =?UTF-8?q?=E0=B8=99=E0=B8=B1=E0=B8=81=E0=B8=87=E0=B8=B2=E0=B8=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/controllers/ProfileEmployeeController.ts | 34 ++++++++++++-------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/src/controllers/ProfileEmployeeController.ts b/src/controllers/ProfileEmployeeController.ts index 666d0704..b096e7ec 100644 --- a/src/controllers/ProfileEmployeeController.ts +++ b/src/controllers/ProfileEmployeeController.ts @@ -1718,25 +1718,25 @@ export class ProfileEmployeeController extends Controller { if (orgRoot) { nodeCondition = "profileSalary.orgRoot = :orgRoot"; } - if (isAll == false) nodeAll = " AND profileSalary.orgChild1Id IS NULL"; + if (isAll == false) nodeAll = " AND profileSalary.orgChild1 IS NULL"; } else if (node === 1 && nodeId) { orgChild1 = await this.child1Repository.findOne({where: { id: nodeId }}); if (orgChild1) { nodeCondition = "profileSalary.orgChild1 = :orgChild1"; } - if (isAll == false) nodeAll = " AND profileSalary.orgChild2Id IS NULL"; + if (isAll == false) nodeAll = " AND profileSalary.orgChild2 IS NULL"; } else if (node === 2 && nodeId) { orgChild2 = await this.child2Repository.findOne({where: { id: nodeId }}); if (orgChild2) { nodeCondition = "profileSalary.orgChild2 = :orgChild2"; } - if (isAll == false) nodeAll = " AND profileSalary.orgChild3Id IS NULL"; + if (isAll == false) nodeAll = " AND profileSalary.orgChild3 IS NULL"; } else if (node === 3 && nodeId) { orgChild3 = await this.child3Repository.findOne({where: { id: nodeId }}); if (orgChild3) { nodeCondition = "profileSalary.orgChild3 = :orgChild3"; } - if (isAll == false) nodeAll = " AND profileSalary.orgChild4Id IS NULL"; + if (isAll == false) nodeAll = " AND profileSalary.orgChild4 IS NULL"; } else if (node === 4 && nodeId) { orgChild4 = await this.child4Repository.findOne({where: { id: nodeId }}); if (orgChild4) { @@ -1750,27 +1750,32 @@ export class ProfileEmployeeController extends Controller { if (orgRootPms) { pmsCondition = "profileSalary.orgRoot = :orgRoot"; } + if (isAll == false) nodeAll = " AND profileSalary.orgChild1 IS NULL"; } else if (_data.child1) { orgChild1Pms = await this.child1Repository.findOne({where: { id: _data.child1 }}); if (orgChild1Pms) { pmsCondition = "profileSalary.orgChild1 = :orgChild1"; } + if (isAll == false) nodeAll = " AND profileSalary.orgChild2 IS NULL"; } else if (_data.child2) { orgChild2Pms = await this.child2Repository.findOne({where: { id: _data.child2 }}); if (orgChild2Pms) { pmsCondition = "profileSalary.orgChild2 = :orgChild2"; } + if (isAll == false) nodeAll = " AND profileSalary.orgChild3 IS NULL"; } else if (_data.child3) { orgChild3Pms = await this.child3Repository.findOne({where: { id: _data.child3 }}); if (orgChild3Pms) { pmsCondition = "profileSalary.orgChild3 = :orgChild3"; } + if (isAll == false) nodeAll = " AND profileSalary.orgChild4 IS NULL"; } else if (_data.child4) { orgChild4Pms = await this.child4Repository.findOne({where: { id: _data.child4 }}); if (orgChild4Pms) { pmsCondition = "profileSalary.orgChild4 = :orgChild4"; } } + pmsCondition = pmsCondition + nodeAll; // const findRevision = await this.orgRevisionRepo.findOne({ // where: { orgRevisionIsCurrent: true }, // }); @@ -1800,6 +1805,7 @@ export class ProfileEmployeeController extends Controller { .orWhere("profileEmployee.isRetirement = :isRetirement", { isRetirement: true }); }) ) + .andWhere("profileEmployee.leaveCommandId Is NOT NULL") .andWhere("profileSalary.order = (SELECT MAX(ps.order) FROM profileSalary ps WHERE ps.profileEmployeeId = profileEmployee.id)") // .andWhere( @@ -1885,19 +1891,19 @@ export class ProfileEmployeeController extends Controller { }, ) .andWhere(pmsCondition, { - orgRoot: orgRootPms ? orgRootPms.orgRootName : undefined, - orgChild1: orgChild1Pms ? orgChild1Pms.orgChild1Name : undefined, - orgChild2: orgChild2Pms ? orgChild2Pms.orgChild2Name : undefined, - orgChild3: orgChild3Pms ? orgChild3Pms.orgChild3Name : undefined, - orgChild4: orgChild4Pms ? orgChild4Pms.orgChild4Name : undefined, + orgRootPms: orgRootPms ? orgRootPms.orgRootName : "", + orgChild1Pms: orgChild1Pms ? orgChild1Pms.orgChild1Name : "", + orgChild2Pms: orgChild2Pms ? orgChild2Pms.orgChild2Name : "", + orgChild3Pms: orgChild3Pms ? orgChild3Pms.orgChild3Name : "", + orgChild4Pms: orgChild4Pms ? orgChild4Pms.orgChild4Name : "", }) .andWhere(nodeCondition, { - orgRoot: orgRoot ? orgRoot.orgRootName : undefined, - orgChild1: orgChild1 ? orgChild1.orgChild1Name : undefined, - orgChild2: orgChild2 ? orgChild2.orgChild2Name : undefined, - orgChild3: orgChild3 ? orgChild3.orgChild3Name : undefined, - orgChild4: orgChild4 ? orgChild4.orgChild4Name : undefined, + orgRoot: orgRoot ? orgRoot.orgRootName : "", + orgChild1: orgChild1 ? orgChild1.orgChild1Name : "", + orgChild2: orgChild2 ? orgChild2.orgChild2Name : "", + orgChild3: orgChild3 ? orgChild3.orgChild3Name : "", + orgChild4: orgChild4 ? orgChild4.orgChild4Name : "", }) // .andWhere(`current_holders.orgRevisionId LIKE :orgRevisionId`, { // orgRevisionId: findRevision.id,