Merge branch 'develop' of github.com:Frappet/hrms-api-org into develop
This commit is contained in:
commit
1af0cd483d
4 changed files with 193 additions and 16 deletions
|
|
@ -1718,25 +1718,25 @@ export class ProfileEmployeeController extends Controller {
|
||||||
if (orgRoot) {
|
if (orgRoot) {
|
||||||
nodeCondition = "profileSalary.orgRoot = :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) {
|
} else if (node === 1 && nodeId) {
|
||||||
orgChild1 = await this.child1Repository.findOne({where: { id: nodeId }});
|
orgChild1 = await this.child1Repository.findOne({where: { id: nodeId }});
|
||||||
if (orgChild1) {
|
if (orgChild1) {
|
||||||
nodeCondition = "profileSalary.orgChild1 = :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) {
|
} else if (node === 2 && nodeId) {
|
||||||
orgChild2 = await this.child2Repository.findOne({where: { id: nodeId }});
|
orgChild2 = await this.child2Repository.findOne({where: { id: nodeId }});
|
||||||
if (orgChild2) {
|
if (orgChild2) {
|
||||||
nodeCondition = "profileSalary.orgChild2 = :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) {
|
} else if (node === 3 && nodeId) {
|
||||||
orgChild3 = await this.child3Repository.findOne({where: { id: nodeId }});
|
orgChild3 = await this.child3Repository.findOne({where: { id: nodeId }});
|
||||||
if (orgChild3) {
|
if (orgChild3) {
|
||||||
nodeCondition = "profileSalary.orgChild3 = :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) {
|
} else if (node === 4 && nodeId) {
|
||||||
orgChild4 = await this.child4Repository.findOne({where: { id: nodeId }});
|
orgChild4 = await this.child4Repository.findOne({where: { id: nodeId }});
|
||||||
if (orgChild4) {
|
if (orgChild4) {
|
||||||
|
|
@ -1750,27 +1750,32 @@ export class ProfileEmployeeController extends Controller {
|
||||||
if (orgRootPms) {
|
if (orgRootPms) {
|
||||||
pmsCondition = "profileSalary.orgRoot = :orgRoot";
|
pmsCondition = "profileSalary.orgRoot = :orgRoot";
|
||||||
}
|
}
|
||||||
|
if (isAll == false) nodeAll = " AND profileSalary.orgChild1 IS NULL";
|
||||||
} else if (_data.child1) {
|
} else if (_data.child1) {
|
||||||
orgChild1Pms = await this.child1Repository.findOne({where: { id: _data.child1 }});
|
orgChild1Pms = await this.child1Repository.findOne({where: { id: _data.child1 }});
|
||||||
if (orgChild1Pms) {
|
if (orgChild1Pms) {
|
||||||
pmsCondition = "profileSalary.orgChild1 = :orgChild1";
|
pmsCondition = "profileSalary.orgChild1 = :orgChild1";
|
||||||
}
|
}
|
||||||
|
if (isAll == false) nodeAll = " AND profileSalary.orgChild2 IS NULL";
|
||||||
} else if (_data.child2) {
|
} else if (_data.child2) {
|
||||||
orgChild2Pms = await this.child2Repository.findOne({where: { id: _data.child2 }});
|
orgChild2Pms = await this.child2Repository.findOne({where: { id: _data.child2 }});
|
||||||
if (orgChild2Pms) {
|
if (orgChild2Pms) {
|
||||||
pmsCondition = "profileSalary.orgChild2 = :orgChild2";
|
pmsCondition = "profileSalary.orgChild2 = :orgChild2";
|
||||||
}
|
}
|
||||||
|
if (isAll == false) nodeAll = " AND profileSalary.orgChild3 IS NULL";
|
||||||
} else if (_data.child3) {
|
} else if (_data.child3) {
|
||||||
orgChild3Pms = await this.child3Repository.findOne({where: { id: _data.child3 }});
|
orgChild3Pms = await this.child3Repository.findOne({where: { id: _data.child3 }});
|
||||||
if (orgChild3Pms) {
|
if (orgChild3Pms) {
|
||||||
pmsCondition = "profileSalary.orgChild3 = :orgChild3";
|
pmsCondition = "profileSalary.orgChild3 = :orgChild3";
|
||||||
}
|
}
|
||||||
|
if (isAll == false) nodeAll = " AND profileSalary.orgChild4 IS NULL";
|
||||||
} else if (_data.child4) {
|
} else if (_data.child4) {
|
||||||
orgChild4Pms = await this.child4Repository.findOne({where: { id: _data.child4 }});
|
orgChild4Pms = await this.child4Repository.findOne({where: { id: _data.child4 }});
|
||||||
if (orgChild4Pms) {
|
if (orgChild4Pms) {
|
||||||
pmsCondition = "profileSalary.orgChild4 = :orgChild4";
|
pmsCondition = "profileSalary.orgChild4 = :orgChild4";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
pmsCondition = pmsCondition + nodeAll;
|
||||||
// const findRevision = await this.orgRevisionRepo.findOne({
|
// const findRevision = await this.orgRevisionRepo.findOne({
|
||||||
// where: { orgRevisionIsCurrent: true },
|
// where: { orgRevisionIsCurrent: true },
|
||||||
// });
|
// });
|
||||||
|
|
@ -1800,6 +1805,7 @@ export class ProfileEmployeeController extends Controller {
|
||||||
.orWhere("profileEmployee.isRetirement = :isRetirement", { isRetirement: true });
|
.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("profileSalary.order = (SELECT MAX(ps.order) FROM profileSalary ps WHERE ps.profileEmployeeId = profileEmployee.id)")
|
||||||
|
|
||||||
// .andWhere(
|
// .andWhere(
|
||||||
|
|
@ -1885,19 +1891,19 @@ export class ProfileEmployeeController extends Controller {
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
.andWhere(pmsCondition, {
|
.andWhere(pmsCondition, {
|
||||||
orgRoot: orgRootPms ? orgRootPms.orgRootName : undefined,
|
orgRootPms: orgRootPms ? orgRootPms.orgRootName : "",
|
||||||
orgChild1: orgChild1Pms ? orgChild1Pms.orgChild1Name : undefined,
|
orgChild1Pms: orgChild1Pms ? orgChild1Pms.orgChild1Name : "",
|
||||||
orgChild2: orgChild2Pms ? orgChild2Pms.orgChild2Name : undefined,
|
orgChild2Pms: orgChild2Pms ? orgChild2Pms.orgChild2Name : "",
|
||||||
orgChild3: orgChild3Pms ? orgChild3Pms.orgChild3Name : undefined,
|
orgChild3Pms: orgChild3Pms ? orgChild3Pms.orgChild3Name : "",
|
||||||
orgChild4: orgChild4Pms ? orgChild4Pms.orgChild4Name : undefined,
|
orgChild4Pms: orgChild4Pms ? orgChild4Pms.orgChild4Name : "",
|
||||||
})
|
})
|
||||||
|
|
||||||
.andWhere(nodeCondition, {
|
.andWhere(nodeCondition, {
|
||||||
orgRoot: orgRoot ? orgRoot.orgRootName : undefined,
|
orgRoot: orgRoot ? orgRoot.orgRootName : "",
|
||||||
orgChild1: orgChild1 ? orgChild1.orgChild1Name : undefined,
|
orgChild1: orgChild1 ? orgChild1.orgChild1Name : "",
|
||||||
orgChild2: orgChild2 ? orgChild2.orgChild2Name : undefined,
|
orgChild2: orgChild2 ? orgChild2.orgChild2Name : "",
|
||||||
orgChild3: orgChild3 ? orgChild3.orgChild3Name : undefined,
|
orgChild3: orgChild3 ? orgChild3.orgChild3Name : "",
|
||||||
orgChild4: orgChild4 ? orgChild4.orgChild4Name : undefined,
|
orgChild4: orgChild4 ? orgChild4.orgChild4Name : "",
|
||||||
})
|
})
|
||||||
// .andWhere(`current_holders.orgRevisionId LIKE :orgRevisionId`, {
|
// .andWhere(`current_holders.orgRevisionId LIKE :orgRevisionId`, {
|
||||||
// orgRevisionId: findRevision.id,
|
// orgRevisionId: findRevision.id,
|
||||||
|
|
|
||||||
|
|
@ -209,7 +209,7 @@ export class ProfileSalary extends EntityBase {
|
||||||
comment: "refId",
|
comment: "refId",
|
||||||
default: null,
|
default: null,
|
||||||
})
|
})
|
||||||
refId: number;
|
refId: string;
|
||||||
|
|
||||||
@Column({
|
@Column({
|
||||||
comment: "วันที่",
|
comment: "วันที่",
|
||||||
|
|
|
||||||
|
|
@ -222,7 +222,7 @@ export class ProfileSalaryTemp extends EntityBase {
|
||||||
comment: "refId",
|
comment: "refId",
|
||||||
default: null,
|
default: null,
|
||||||
})
|
})
|
||||||
refId: number;
|
refId: string;
|
||||||
|
|
||||||
@Column({
|
@Column({
|
||||||
comment: "วันที่",
|
comment: "วันที่",
|
||||||
|
|
|
||||||
171
src/entities/view/viewPosMaster.ts
Normal file
171
src/entities/view/viewPosMaster.ts
Normal file
|
|
@ -0,0 +1,171 @@
|
||||||
|
import { ViewColumn, ViewEntity } from "typeorm";
|
||||||
|
|
||||||
|
@ViewEntity({
|
||||||
|
expression: `SELECT
|
||||||
|
posMaster.id,
|
||||||
|
posMaster.posMasterNoPrefix,
|
||||||
|
posMaster.posMasterNo,
|
||||||
|
posMaster.posMasterNoSuffix,
|
||||||
|
posMaster.orgRootId,
|
||||||
|
posMaster.orgChild1Id,
|
||||||
|
posMaster.orgChild2Id,
|
||||||
|
posMaster.orgChild3Id,
|
||||||
|
posMaster.orgChild4Id,
|
||||||
|
posMaster.current_holderId,
|
||||||
|
profile.id as profileId,
|
||||||
|
profile.prefix,
|
||||||
|
profile.firstName,
|
||||||
|
profile.lastName,
|
||||||
|
profile.citizenId,
|
||||||
|
profile.position,
|
||||||
|
profile.amount,
|
||||||
|
profile.dateRetire,
|
||||||
|
profile.birthDate,
|
||||||
|
orgRoot.id as rootId,
|
||||||
|
orgRoot.orgRootShortName,
|
||||||
|
orgChild1.id as child1Id,
|
||||||
|
orgChild1.orgChild1Name,
|
||||||
|
orgChild2.id as child2Id,
|
||||||
|
orgChild2.orgChild2Name,
|
||||||
|
orgChild3.id as child3Id,
|
||||||
|
orgChild3.orgChild3Name,
|
||||||
|
orgChild4.id as child4Id,
|
||||||
|
orgChild4.orgChild4Name,
|
||||||
|
position.id as positionId,
|
||||||
|
position.positionIsSelected,
|
||||||
|
position.posExecutiveId,
|
||||||
|
position.isSpecial,
|
||||||
|
posExecutive.id as posExecutiveId,
|
||||||
|
posExecutive.posExecutiveName,
|
||||||
|
profileDiscipline.id as profileDisciplineId,
|
||||||
|
profileDiscipline.date as disCriplineDate,
|
||||||
|
profileLeave.id as profileLeaveId,
|
||||||
|
profileAssessment.id as profileAssessmentId,
|
||||||
|
profileAssessment.pointSum,
|
||||||
|
posLevel.id as posLevelId,
|
||||||
|
posLevel.posLevelName,
|
||||||
|
posType.id as posTypeId,
|
||||||
|
posType.posTypeName
|
||||||
|
FROM
|
||||||
|
posMaster
|
||||||
|
LEFT JOIN
|
||||||
|
profile ON posMaster.current_holderId = profile.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgRoot ON posMaster.orgRootId = orgRoot.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgChild1 ON posMaster.orgChild1Id = orgChild1.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgChild2 ON posMaster.orgChild2Id = orgChild2.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgChild3 ON posMaster.orgChild3Id = orgChild3.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgChild4 ON posMaster.orgChild4Id = orgChild4.id
|
||||||
|
LEFT JOIN
|
||||||
|
position ON posMaster.id = position.posMasterId
|
||||||
|
LEFT JOIN
|
||||||
|
posExecutive ON position.posExecutiveId = posExecutive.id
|
||||||
|
LEFT JOIN
|
||||||
|
profileDiscipline ON profileDiscipline.profileId = profile.id
|
||||||
|
LEFT JOIN
|
||||||
|
profileLeave ON profileLeave.profileId = profile.id
|
||||||
|
LEFT JOIN
|
||||||
|
profileAssessment ON profileAssessment.profileId = profile.id
|
||||||
|
LEFT JOIN
|
||||||
|
posLevel ON profile.posLevelId = posLevel.id
|
||||||
|
LEFT JOIN
|
||||||
|
posType ON profile.posTypeId = posType.id
|
||||||
|
WHERE
|
||||||
|
posMaster.current_holderId IS NOT NULL
|
||||||
|
ORDER BY
|
||||||
|
profile.citizenId ASC
|
||||||
|
`,
|
||||||
|
})
|
||||||
|
|
||||||
|
export class viewPosMaster {
|
||||||
|
@ViewColumn()
|
||||||
|
id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posMasterNoPrefix: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posMasterNo: number;
|
||||||
|
@ViewColumn()
|
||||||
|
posMasterNoSuffix: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgRootId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild1Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild2Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild3Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild4Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
current_holderId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
profileId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
prefix: string;
|
||||||
|
@ViewColumn()
|
||||||
|
firstName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
lastName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
citizenId: number;
|
||||||
|
@ViewColumn()
|
||||||
|
position: string;
|
||||||
|
@ViewColumn()
|
||||||
|
amount: number;
|
||||||
|
@ViewColumn()
|
||||||
|
dateRetire: Date;
|
||||||
|
@ViewColumn()
|
||||||
|
birthDate: Date;
|
||||||
|
@ViewColumn()
|
||||||
|
rootId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgRootShortName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
child1Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild1Name: string;
|
||||||
|
@ViewColumn()
|
||||||
|
child2Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild2Name: string;
|
||||||
|
@ViewColumn()
|
||||||
|
child3Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild3Name: string;
|
||||||
|
@ViewColumn()
|
||||||
|
child4Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild4Name: string;
|
||||||
|
@ViewColumn()
|
||||||
|
positionId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
positionIsSelected: boolean;
|
||||||
|
@ViewColumn()
|
||||||
|
posExecutiveId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
isSpecial: boolean;
|
||||||
|
@ViewColumn()
|
||||||
|
posExcutiveId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
profileDisciplineId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
disCriplineDate: Date;
|
||||||
|
@ViewColumn()
|
||||||
|
profileLeaveId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
profileAssessmentId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
pointSum: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posLevelId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posLevelName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posTypeId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posTypeName: string;
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue