diff --git a/src/controllers/EmployeePosTypeController.ts b/src/controllers/EmployeePosTypeController.ts index 1526ac0b..907a5d1a 100644 --- a/src/controllers/EmployeePosTypeController.ts +++ b/src/controllers/EmployeePosTypeController.ts @@ -194,8 +194,14 @@ export class EmployeePosTypeController extends Controller { async GetEmpTypeById(@Path() id: string) { const getEmpPosType = await this.employeePosTypeRepository.findOne({ relations: ["posLevels"], - select: ["id", "posTypeName", "posTypeRank", "posTypeShortName"], + select: ["id", "posTypeName", "posTypeRank", "posTypeShortName", "createdAt", "lastUpdatedAt", "lastUpdateFullName"], where: { id: id }, + order: { + createdAt: "DESC", + posLevels: { + createdAt: "DESC" + } + } }); if (!getEmpPosType) { throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลกลุ่มงานลูกจ้างประจำนี้"); @@ -213,7 +219,13 @@ export class EmployeePosTypeController extends Controller { posLevelName: empPosLevel.posLevelName, posLevelRank: empPosLevel.posLevelRank, posLevelAuthority: empPosLevel.posLevelAuthority, + createdAt: empPosLevel.createdAt, + lastUpdatedAt: empPosLevel.lastUpdatedAt, + lastUpdateFullName: empPosLevel.lastUpdateFullName })), + createdAt: getEmpPosType.createdAt, + lastUpdatedAt: getEmpPosType.lastUpdatedAt, + lastUpdateFullName: getEmpPosType.lastUpdateFullName }; return new HttpSuccess(mapGetEmpPosType); @@ -229,8 +241,14 @@ export class EmployeePosTypeController extends Controller { async GetEmpPosType() { const empPosType = await this.employeePosTypeRepository.find({ relations: ["posLevels"], - select: ["id", "posTypeName", "posTypeRank", "posTypeShortName"], - order: { posTypeRank: "ASC" }, + select: ["id", "posTypeName", "posTypeRank", "posTypeShortName", "createdAt", "lastUpdatedAt", "lastUpdateFullName"], + order: { + posTypeRank: "ASC", + createdAt: "DESC", + posLevels: { + createdAt: "DESC", + } + }, }); const mapEmpPosType = empPosType.map((item) => ({ @@ -245,7 +263,13 @@ export class EmployeePosTypeController extends Controller { posLevelName: empPosLevel.posLevelName, posLevelRank: empPosLevel.posLevelRank, posLevelAuthority: empPosLevel.posLevelAuthority, + createdAt: empPosLevel.createdAt, + lastUpdatedAt: empPosLevel.lastUpdatedAt, + lastUpdateFullName: empPosLevel.lastUpdateFullName })), + createdAt: item.createdAt, + lastUpdatedAt: item.lastUpdatedAt, + lastUpdateFullName: item.lastUpdateFullName })); return new HttpSuccess(mapEmpPosType); } diff --git a/src/controllers/EmployeePositionController.ts b/src/controllers/EmployeePositionController.ts index a265c8d8..eba57fe7 100644 --- a/src/controllers/EmployeePositionController.ts +++ b/src/controllers/EmployeePositionController.ts @@ -288,7 +288,13 @@ export class EmployeePositionController extends Controller { findData = await this.employeePosDictRepository.find({ where: { posDictName: Like(`%${keyword}%`) }, relations: ["posType", "posLevel"], - order: { posLevel: { posLevelName: "ASC" } }, + order: { + posLevel: { + posLevelName: "ASC", + createdAt: "DESC" + }, + createdAt: "DESC" + }, }); break; @@ -300,7 +306,13 @@ export class EmployeePositionController extends Controller { findData = await this.employeePosDictRepository.find({ where: { posTypeId: In(findEmpTypes.map((x) => x.id)) }, relations: ["posType", "posLevel"], - order: { posLevel: { posLevelName: "ASC" } }, + order: { + posLevel: { + posLevelName: "ASC", + createdAt: "DESC" + }, + createdAt: "DESC" + }, }); break; @@ -312,13 +324,25 @@ export class EmployeePositionController extends Controller { findData = await this.employeePosDictRepository.find({ where: { posLevelId: In(findEmpLevels.map((x) => x.id)) }, relations: ["posType", "posLevel"], - order: { posLevel: { posLevelName: "ASC" } }, + order: { + posLevel: { + posLevelName: "ASC", + createdAt: "DESC" + }, + createdAt: "DESC" + }, }); } else { //กรณีเลือกค้นหาจาก"ระดับชั้นงาน" แต่กรอกไม่ใช่ number ให้ปล่อยมาหมดเลย findData = await this.employeePosDictRepository.find({ relations: ["posType", "posLevel"], - order: { posLevel: { posLevelName: "ASC" } }, + order: { + posLevel: { + posLevelName: "ASC", + createdAt: "DESC" + }, + createdAt: "DESC" + }, }); } break; @@ -326,7 +350,13 @@ export class EmployeePositionController extends Controller { default: findData = await this.employeePosDictRepository.find({ relations: ["posType", "posLevel"], - order: { posLevel: { posLevelName: "ASC" } }, + order: { + posLevel: { + posLevelName: "ASC", + createdAt: "DESC" + }, + createdAt: "DESC" + }, }); break; } @@ -354,6 +384,9 @@ export class EmployeePositionController extends Controller { posTypeShortName: posTypeShortName, posLevelId: item.posLevelId, posLevelName: `${posTypeShortName} ${posLevelName}`, + createdAt: item.createdAt, + lastUpdatedAt: item.lastUpdatedAt, + lastUpdateFullName: item.lastUpdateFullName }; }), ); diff --git a/src/controllers/PosExecutiveController.ts b/src/controllers/PosExecutiveController.ts index 9afa88a8..946535cf 100644 --- a/src/controllers/PosExecutiveController.ts +++ b/src/controllers/PosExecutiveController.ts @@ -204,8 +204,11 @@ export class PosExecutiveController extends Controller { ]) async GetPosExecutive() { const posExecutive = await this.posExecutiveRepository.find({ - select: ["id", "posExecutiveName", "posExecutivePriority"], - order: { posExecutivePriority: "ASC" }, + select: ["id", "posExecutiveName", "posExecutivePriority", "createdAt", "lastUpdatedAt", "lastUpdateFullName"], + order: { + posExecutivePriority: "ASC", + createdAt: "DESC" + }, }); // if (!posExecutive) { // return new HttpSuccess([]); diff --git a/src/controllers/PosTypeController.ts b/src/controllers/PosTypeController.ts index 14573a70..72ae9e99 100644 --- a/src/controllers/PosTypeController.ts +++ b/src/controllers/PosTypeController.ts @@ -181,9 +181,15 @@ export class PosTypeController extends Controller { ]) async GetTypeDetail(@Path() id: string) { const getPosType = await this.posTypeRepository.findOne({ - select: ["id", "posTypeName", "posTypeRank"], + select: ["id", "posTypeName", "posTypeRank", "createdAt", "lastUpdatedAt", "lastUpdateFullName"], relations: ["posLevels"], where: { id: id }, + order: { + createdAt: "DESC", + posLevels: { + createdAt: "DESC", + } + } }); if (!getPosType) { throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลประเภทตำแหน่งนี้"); @@ -200,7 +206,13 @@ export class PosTypeController extends Controller { posLevelName: posLevel.posLevelName, posLevelRank: posLevel.posLevelRank, posLevelAuthority: posLevel.posLevelAuthority, + createdAt: posLevel.createdAt, + lastUpdatedAt: posLevel.lastUpdatedAt, + lastUpdateFullName: posLevel.lastUpdateFullName })), + createdAt: getPosType.createdAt, + lastUpdatedAt: getPosType.lastUpdatedAt, + lastUpdateFullName: getPosType.lastUpdateFullName }; return new HttpSuccess(mapGetPosType); @@ -230,9 +242,15 @@ export class PosTypeController extends Controller { ]) async GetPosType() { const posType = await this.posTypeRepository.find({ - select: ["id", "posTypeName", "posTypeRank"], + select: ["id", "posTypeName", "posTypeRank", "createdAt", "lastUpdatedAt", "lastUpdateFullName"], relations: ["posLevels"], - order: { posTypeRank: "ASC" }, + order: { + posTypeRank: "ASC", + createdAt: "DESC", + posLevels: { + createdAt: "DESC" + } + }, }); // if (!posType) { // return new HttpSuccess([]); @@ -248,7 +266,13 @@ export class PosTypeController extends Controller { posLevelName: posLevel.posLevelName, posLevelRank: posLevel.posLevelRank, posLevelAuthority: posLevel.posLevelAuthority, + createdAt: posLevel.createdAt, + lastUpdatedAt: posLevel.lastUpdatedAt, + lastUpdateFullName: posLevel.lastUpdateFullName, })), + createdAt: item.createdAt, + lastUpdatedAt: item.lastUpdatedAt, + lastUpdateFullName: item.lastUpdateFullName, })); return new HttpSuccess(mapPosType); } diff --git a/src/controllers/PositionController.ts b/src/controllers/PositionController.ts index e97f23ed..3a4ec96f 100644 --- a/src/controllers/PositionController.ts +++ b/src/controllers/PositionController.ts @@ -567,7 +567,10 @@ export class PositionController extends Controller { findPosDict = await this.posDictRepository.find({ where: { posDictName: Like(`%${keyword}%`) }, relations: ["posType", "posLevel", "posExecutive"], - order: { posDictName: "ASC" }, + order: { + posDictName: "ASC", + createdAt: "DESC" + }, }); break; @@ -575,7 +578,10 @@ export class PositionController extends Controller { findPosDict = await this.posDictRepository.find({ where: { posDictField: Like(`%${keyword}%`) }, relations: ["posType", "posLevel", "posExecutive"], - order: { posDictField: "ASC" }, + order: { + posDictField: "ASC", + createdAt: "DESC" + }, }); break; @@ -588,7 +594,10 @@ export class PositionController extends Controller { findPosDict = await this.posDictRepository.find({ where: { posTypeId: In(findTypes.map((x) => x.id)) }, relations: ["posType", "posLevel", "posExecutive"], - order: { posDictName: "ASC" }, + order: { + posDictName: "ASC", + createdAt: "DESC" + }, }); break; @@ -601,7 +610,10 @@ export class PositionController extends Controller { findPosDict = await this.posDictRepository.find({ where: { posLevelId: In(findLevel.map((x) => x.id)) }, relations: ["posType", "posLevel", "posExecutive"], - order: { posDictName: "ASC" }, + order: { + posDictName: "ASC", + createdAt: "DESC" + }, }); break; @@ -614,7 +626,10 @@ export class PositionController extends Controller { findPosDict = await this.posDictRepository.find({ where: { posExecutiveId: In(findExecutive.map((x) => x.id)) }, relations: ["posType", "posLevel", "posExecutive"], - order: { posDictName: "ASC" }, + order: { + posDictName: "ASC", + createdAt: "DESC" + }, }); break; @@ -622,7 +637,10 @@ export class PositionController extends Controller { findPosDict = await this.posDictRepository.find({ where: { posDictExecutiveField: Like(`%${keyword}%`) }, relations: ["posType", "posLevel", "posExecutive"], - order: { posDictName: "ASC" }, + order: { + posDictName: "ASC", + createdAt: "DESC" + }, }); break; @@ -630,7 +648,10 @@ export class PositionController extends Controller { findPosDict = await this.posDictRepository.find({ where: { posDictArea: Like(`%${keyword}%`) }, relations: ["posType", "posLevel", "posExecutive"], - order: { posDictName: "ASC" }, + order: { + posDictName: "ASC", + createdAt: "DESC" + }, }); break; @@ -664,14 +685,20 @@ export class PositionController extends Controller { { posDictArea: Like(`%${keyword}%`) }, ], relations: ["posType", "posLevel", "posExecutive"], - order: { posDictName: "ASC" }, + order: { + posDictName: "ASC", + createdAt: "DESC" + }, }); break; default: findPosDict = await this.posDictRepository.find({ relations: ["posType", "posLevel", "posExecutive"], - order: { posDictName: "ASC" }, + order: { + posDictName: "ASC", + createdAt: "DESC" + }, }); break; } @@ -692,6 +719,9 @@ export class PositionController extends Controller { positionArea: item.posDictArea, isSpecial: item.isSpecial, positionIsSelected: false, + createdAt: item.createdAt, + lastUpdatedAt: item.lastUpdatedAt, + lastUpdateFullName: item.lastUpdateFullName, }; }), ); @@ -1447,6 +1477,7 @@ export class PositionController extends Controller { .leftJoinAndSelect("posMaster.next_holder", "next_holder") .leftJoinAndSelect("posMaster.orgRevision", "orgRevision") .leftJoinAndSelect("posMaster.posMasterAssigns", "posMasterAssigns") + // .leftJoinAndSelect("posMaster.authRole", "authRole") .leftJoinAndSelect("posMasterAssigns.assign", "assign") .leftJoinAndSelect("current_holder.posType", "posType") .leftJoinAndSelect("current_holder.posLevel", "posLevel")