Fix [Invalid] รายชื่อลูกจ้างชั่วคราวไม่แสดงตามสิทธิ์ #131
This commit is contained in:
parent
64eb28af68
commit
9eac11ff30
1 changed files with 52 additions and 42 deletions
|
|
@ -1428,6 +1428,7 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
@Query() isRetire?: boolean,
|
||||
@Query() type?: string,
|
||||
) {
|
||||
let _data = await new permission().PermissionOrgList(request, "SYS_REGISTRY_TEMP");
|
||||
let queryLike =
|
||||
"CONCAT(profileEmployee.prefix, profileEmployee.firstName, ' ', profileEmployee.lastName) LIKE :keyword";
|
||||
if (searchField == "citizenId") {
|
||||
|
|
@ -1435,7 +1436,6 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
} else if (searchField == "position") {
|
||||
queryLike = "profileEmployee.position LIKE :keyword";
|
||||
}
|
||||
let _data = await new permission().PermissionList(request, "SYS_REGISTRY_TEMP");
|
||||
const findRevision = await this.orgRevisionRepo.findOne({
|
||||
where: { orgRevisionIsCurrent: true },
|
||||
});
|
||||
|
|
@ -1446,17 +1446,19 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
.createQueryBuilder("profileEmployee")
|
||||
.leftJoinAndSelect("profileEmployee.posLevel", "posLevel")
|
||||
.leftJoinAndSelect("profileEmployee.posType", "posType")
|
||||
.leftJoinAndSelect("profileEmployee.current_holders", "current_holders")
|
||||
.leftJoinAndSelect("profileEmployee.current_holderTemps", "current_holderTemps")
|
||||
.leftJoinAndSelect("profileEmployee.profileEmployeeEmployment", "profileEmployeeEmployment")
|
||||
.leftJoinAndSelect("current_holders.positions", "positions")
|
||||
.leftJoinAndSelect("current_holders.orgRoot", "orgRoot")
|
||||
.leftJoinAndSelect("current_holders.orgChild1", "orgChild1")
|
||||
.leftJoinAndSelect("current_holders.orgChild2", "orgChild2")
|
||||
.leftJoinAndSelect("current_holders.orgChild3", "orgChild3")
|
||||
.leftJoinAndSelect("current_holders.orgChild4", "orgChild4")
|
||||
.leftJoinAndSelect("current_holderTemps.positions", "positions")
|
||||
.leftJoinAndSelect("current_holderTemps.orgRoot", "orgRoot")
|
||||
.leftJoinAndSelect("current_holderTemps.orgChild1", "orgChild1")
|
||||
.leftJoinAndSelect("current_holderTemps.orgChild2", "orgChild2")
|
||||
.leftJoinAndSelect("current_holderTemps.orgChild3", "orgChild3")
|
||||
.leftJoinAndSelect("current_holderTemps.orgChild4", "orgChild4")
|
||||
.andWhere(
|
||||
_data.root != undefined && _data.root != null
|
||||
? `current_holders.orgRootId IN (:...root)`
|
||||
? _data.root[0] != null
|
||||
? `current_holderTemps.orgRootId IN (:...root)`
|
||||
: `current_holderTemps.orgRootId is null`
|
||||
: "1=1",
|
||||
{
|
||||
root: _data.root,
|
||||
|
|
@ -1464,7 +1466,9 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
)
|
||||
.andWhere(
|
||||
_data.child1 != undefined && _data.child1 != null
|
||||
? `current_holders.orgChild1Id IN (:...child1)`
|
||||
? _data.child1[0] != null
|
||||
? `current_holderTemps.orgChild1Id IN (:...child1)`
|
||||
: `current_holderTemps.orgChild1Id is null`
|
||||
: "1=1",
|
||||
{
|
||||
child1: _data.child1,
|
||||
|
|
@ -1472,7 +1476,9 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
)
|
||||
.andWhere(
|
||||
_data.child2 != undefined && _data.child2 != null
|
||||
? `current_holders.orgChild2Id IN (:...child2)`
|
||||
? _data.child2[0] != null
|
||||
? `current_holderTemps.orgChild2Id IN (:...child2)`
|
||||
: `current_holderTemps.orgChild2Id is null`
|
||||
: "1=1",
|
||||
{
|
||||
child2: _data.child2,
|
||||
|
|
@ -1480,7 +1486,9 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
)
|
||||
.andWhere(
|
||||
_data.child3 != undefined && _data.child3 != null
|
||||
? `current_holders.orgChild3Id IN (:...child3)`
|
||||
? _data.child3[0] != null
|
||||
? `current_holderTemps.orgChild3Id IN (:...child3)`
|
||||
: `current_holderTemps.orgChild3Id is null`
|
||||
: "1=1",
|
||||
{
|
||||
child3: _data.child3,
|
||||
|
|
@ -1488,7 +1496,9 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
)
|
||||
.andWhere(
|
||||
_data.child4 != undefined && _data.child4 != null
|
||||
? `current_holders.orgChild4Id IN (:...child4)`
|
||||
? _data.child4[0] != null
|
||||
? `current_holderTemps.orgChild4Id IN (:...child4)`
|
||||
: `current_holderTemps.orgChild4Id is null`
|
||||
: "1=1",
|
||||
{
|
||||
child4: _data.child4,
|
||||
|
|
@ -1518,19 +1528,19 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
keyword2: `${posLevel}`,
|
||||
},
|
||||
)
|
||||
.andWhere(
|
||||
isProbation != undefined && isProbation != null
|
||||
? `profile.isProbation = ${isProbation}`
|
||||
: "1=1",
|
||||
)
|
||||
.andWhere(
|
||||
isRetire != undefined && isRetire != null
|
||||
? isRetire == true
|
||||
? `profile.dateRetire IS null`
|
||||
: `profile.dateRetire IS NOT NULL`
|
||||
: "1=1",
|
||||
)
|
||||
.andWhere("profileEmployee.employeeClass LIKE :type", {
|
||||
// .andWhere(
|
||||
// isProbation != undefined && isProbation != null
|
||||
// ? `profileEmployee.isProbation = ${isProbation}`
|
||||
// : "1=1",
|
||||
// )
|
||||
// .andWhere(
|
||||
// isRetire != undefined && isRetire != null
|
||||
// ? isRetire == true
|
||||
// ? `profileEmployee.dateRetire IS null`
|
||||
// : `profileEmployee.dateRetire IS NOT NULL`
|
||||
// : "1=1",
|
||||
// )
|
||||
.andWhere("profileEmployee.employeeClass = :type", {
|
||||
type: "TEMP",
|
||||
})
|
||||
.skip((page - 1) * pageSize)
|
||||
|
|
@ -1539,29 +1549,29 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
const data = await Promise.all(
|
||||
record.map((_data) => {
|
||||
const shortName =
|
||||
_data.current_holders.length == 0
|
||||
_data.current_holderTemps.length == 0
|
||||
? null
|
||||
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != null &&
|
||||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild4 !=
|
||||
: _data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id) != null &&
|
||||
_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.orgChild4 !=
|
||||
null
|
||||
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild4.orgChild4ShortName} ${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != null &&
|
||||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)
|
||||
? `${_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.orgChild4.orgChild4ShortName} ${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
: _data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id) != null &&
|
||||
_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)
|
||||
?.orgChild3 != null
|
||||
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild3.orgChild3ShortName} ${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != null &&
|
||||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)
|
||||
? `${_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.orgChild3.orgChild3ShortName} ${_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
: _data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id) != null &&
|
||||
_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)
|
||||
?.orgChild2 != null
|
||||
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild2.orgChild2ShortName} ${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != null &&
|
||||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)
|
||||
? `${_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.orgChild2.orgChild2ShortName} ${_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
: _data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id) != null &&
|
||||
_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)
|
||||
?.orgChild1 != null
|
||||
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild1.orgChild1ShortName} ${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) !=
|
||||
? `${_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.orgChild1.orgChild1ShortName} ${_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
: _data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id) !=
|
||||
null &&
|
||||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)
|
||||
_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)
|
||||
?.orgRoot != null
|
||||
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgRoot.orgRootShortName} ${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
? `${_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.orgRoot.orgRootShortName} ${_data.current_holderTemps.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
|
||||
: null;
|
||||
const dateEmployment =
|
||||
_data.profileEmployeeEmployment.length == 0
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue