fix remove await and addLogSequence of exprofile system

This commit is contained in:
Warunee Tamkoo 2026-03-19 11:13:27 +07:00
parent 66d8ba089d
commit 6c31cd42c0
5 changed files with 186 additions and 171 deletions

View file

@ -814,8 +814,8 @@ export class CommandController extends Controller {
.PostData(request, path + "/delete", {
refIds: [commandRecive.refId],
})
.then(async (res) => { })
.catch(() => { });
.then(async (res) => {})
.catch(() => {});
const commandId = commandRecive.commandId;
await this.commandReciveRepository.delete(commandRecive.id);
@ -858,8 +858,8 @@ export class CommandController extends Controller {
.PostData(request, path + "/delete", {
refIds: [commandRecive.refId],
})
.then(async (res) => { })
.catch(() => { });
.then(async (res) => {})
.catch(() => {});
const commandId = commandRecive.commandId;
await this.commandReciveRepository.delete(commandRecive.id);
@ -902,8 +902,8 @@ export class CommandController extends Controller {
.PostData(request, path + "/delete", {
refIds: [commandRecive.refId],
})
.then(async (res) => { })
.catch(() => { });
.then(async (res) => {})
.catch(() => {});
const commandId = commandRecive.commandId;
await this.commandReciveRepository.delete(commandRecive.id);
@ -1187,8 +1187,8 @@ export class CommandController extends Controller {
.PostData(request, path + "/delete", {
refIds: command.commandRecives.map((x) => x.refId),
})
.then(async (res) => { })
.catch(() => { });
.then(async (res) => {})
.catch(() => {});
await this.commandReciveRepository.delete({ commandId: command.id });
command.status = "CANCEL";
@ -1253,8 +1253,8 @@ export class CommandController extends Controller {
.PostData(request, path + "/delete", {
refIds: command.commandRecives.map((x) => x.refId),
})
.then(async (res) => { })
.catch(() => { });
.then(async (res) => {})
.catch(() => {});
await this.commandSendCCRepository.delete({ commandSendId: In(commandSend.map((x) => x.id)) });
await this.commandReciveRepository.delete({ commandId: command.id });
@ -1443,8 +1443,8 @@ export class CommandController extends Controller {
refIds: command.commandRecives.filter((x) => x.refId != null).map((x) => x.refId),
status: "WAITING",
})
.then(async (res) => { })
.catch(() => { });
.then(async (res) => {})
.catch(() => {});
await this.commandRepository.save(command);
} else {
const path = commandTypePath(command.commandType.code);
@ -1581,7 +1581,7 @@ export class CommandController extends Controller {
);
await this.profileRepository.save(profiles);
}
} catch { }
} catch {}
type = "EMPLOYEE";
try {
@ -1613,7 +1613,7 @@ export class CommandController extends Controller {
);
await this.profileEmployeeRepository.save(profiles);
}
} catch { }
} catch {}
return new HttpSuccess();
}
@ -1677,7 +1677,7 @@ export class CommandController extends Controller {
}),
);
}
} catch { }
} catch {}
type = "EMPLOYEE";
try {
@ -1732,7 +1732,7 @@ export class CommandController extends Controller {
}),
);
}
} catch { }
} catch {}
return new HttpSuccess();
}
@ -1945,7 +1945,7 @@ export class CommandController extends Controller {
.then((x) => {
res = x;
})
.catch((x) => { });
.catch((x) => {});
}
let _command;
@ -2299,7 +2299,7 @@ export class CommandController extends Controller {
.then(async (res) => {
_command = res;
})
.catch(() => { });
.catch(() => {});
let issue =
command.isBangkok == "OFFICE"
@ -2497,12 +2497,12 @@ export class CommandController extends Controller {
@Put("change-creator/{id}")
async ChangeCreator(
@Path() id: string,
@Body() req: { assignId: string; },
@Body() req: { assignId: string },
@Request() request: RequestWithUser,
) {
await new permission().PermissionUpdate(request, "COMMAND");
const command = await this.commandRepository.findOne({
where: { id: id }
where: { id: id },
});
if (!command) {
@ -2704,8 +2704,8 @@ export class CommandController extends Controller {
refIds: requestBody.persons.filter((x) => x.refId != null).map((x) => x.refId),
status: "REPORT",
})
.then(async (res) => { })
.catch(() => { });
.then(async (res) => {})
.catch(() => {});
let order =
command.commandRecives == null || command.commandRecives.length <= 0
? 0
@ -4019,7 +4019,7 @@ export class CommandController extends Controller {
.orgRootShortName ?? "";
}
}
const today = new Date().setHours(0,0,0,0);
const today = new Date().setHours(0, 0, 0, 0);
await Promise.all(
body.data.map(async (item) => {
const profile = await this.profileRepository.findOne({
@ -4046,10 +4046,13 @@ export class CommandController extends Controller {
relations: { command: true },
});
const executeDate = commandResign
? new Date(commandResign.command.commandExcecuteDate).setHours(0,0,0,0)
? new Date(commandResign.command.commandExcecuteDate).setHours(0, 0, 0, 0)
: today;
if (commandResign && _command.status !== "REPORTED" &&
(_command.status !== "WAITING" || today < executeDate)) {
if (
commandResign &&
_command.status !== "REPORTED" &&
(_command.status !== "WAITING" || today < executeDate)
) {
await reOrderCommandRecivesAndDelete(commandResign!.id);
}
}
@ -4322,6 +4325,7 @@ export class CommandController extends Controller {
}
PostRetireToExprofile(
req,
profile.citizenId ?? "",
profile.prefix ?? "",
profile.firstName ?? "",
@ -4425,7 +4429,7 @@ export class CommandController extends Controller {
.orgRootShortName ?? "";
}
}
const today = new Date().setHours(0,0,0,0);
const today = new Date().setHours(0, 0, 0, 0);
await Promise.all(
body.data.map(async (item) => {
const profile = await this.profileEmployeeRepository.findOne({
@ -4448,10 +4452,13 @@ export class CommandController extends Controller {
relations: { command: true },
});
const executeDate = commandResign
? new Date(commandResign.command.commandExcecuteDate).setHours(0,0,0,0)
? new Date(commandResign.command.commandExcecuteDate).setHours(0, 0, 0, 0)
: today;
if (commandResign && _command.status !== "REPORTED" &&
(_command.status !== "WAITING" || today < executeDate)) {
if (
commandResign &&
_command.status !== "REPORTED" &&
(_command.status !== "WAITING" || today < executeDate)
) {
await reOrderCommandRecivesAndDelete(commandResign!.id);
}
}
@ -4572,7 +4579,8 @@ export class CommandController extends Controller {
].filter(Boolean);
organizeName = names.join(" ");
}
await PostRetireToExprofile(
PostRetireToExprofile(
req,
profile.citizenId ?? "",
profile.prefix ?? "",
profile.firstName ?? "",
@ -4842,7 +4850,8 @@ export class CommandController extends Controller {
].filter(Boolean);
organizeName = names.join(" ");
}
await PostRetireToExprofile(
PostRetireToExprofile(
req,
profile.citizenId ?? "",
profile.prefix ?? "",
profile.firstName ?? "",
@ -5473,7 +5482,8 @@ export class CommandController extends Controller {
? `${profile.posLevel?.posLevelName}`
: `${profile.posType?.posTypeName} ${profile.posLevel?.posLevelName}`;
await PostRetireToExprofile(
PostRetireToExprofile(
req,
profile.citizenId ?? "",
profile.prefix ?? "",
profile.firstName ?? "",
@ -6249,7 +6259,8 @@ export class CommandController extends Controller {
].filter(Boolean);
organizeName = names.join(" ");
}
await PostRetireToExprofile(
PostRetireToExprofile(
req,
profile.citizenId ?? "",
profile.prefix ?? "",
profile.firstName ?? "",
@ -6976,8 +6987,8 @@ export class CommandController extends Controller {
prefix: avatar,
fileName: fileName,
})
.then(() => { })
.catch(() => { });
.then(() => {})
.catch(() => {});
}
}
}),
@ -8088,7 +8099,7 @@ export class CommandController extends Controller {
.then(async (res) => {
_command = res;
})
.catch(() => { });
.catch(() => {});
let issue =
command.isBangkok == "OFFICE"

View file

@ -14,6 +14,7 @@ import {
} from "tsoa";
import HttpError from "../interfaces/http-error";
import HttpStatusCode from "../interfaces/http-status";
import { addLogSequence } from "../interfaces/utils";
interface CachedToken {
token: string;
@ -171,6 +172,7 @@ async function getToken(ClientID: string, ClientSecret: string): Promise<string>
// function post retire data to exprofile system
export async function PostRetireToExprofile(
request: any,
citizenID: string,
prefix: string,
firstName: string,
@ -225,19 +227,6 @@ export async function PostRetireToExprofile(
},
});
// addLogSequence(request, {
// action: "request",
// status: "success",
// description: "connected",
// request: {
// method: "POST",
// url: url,
// payload: JSON.stringify(sendData),
// response: JSON.stringify(response.data.result),
// },
// });
return res.data;
} catch (error: any) {
if (error.response?.status === 500 && retryCount < maxRetries - 1) {
@ -245,6 +234,18 @@ export async function PostRetireToExprofile(
retryCount++;
continue;
}
addLogSequence(request, {
action: "request",
status: "error",
description: "unconnected to exprofile api",
request: {
method: "POST",
url: API_URL_BANGKOK + "/importData",
response: JSON.stringify(error),
},
});
throw new HttpError(HttpStatusCode.INTERNAL_SERVER_ERROR, "ไม่สามารถติดต่อ API ได้");
}
}

View file

@ -11013,7 +11013,8 @@ export class ProfileController extends Controller {
].filter(Boolean);
organizeName = names.join(" ");
}
await PostRetireToExprofile(
PostRetireToExprofile(
request,
profile.citizenId ?? "",
profile.prefix ?? "",
profile.firstName ?? "",

View file

@ -2290,13 +2290,13 @@ export class ProfileEmployeeController extends Controller {
@Get("history/user")
async getHistoryProfileByUser(@Request() request: RequestWithUser) {
const profile = await this.profileRepo.findOne({
where: { keycloak: request.user.sub }
where: { keycloak: request.user.sub },
});
if (!profile) throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูล");
const profileHistory = await this.profileHistoryRepo.find({
where: { profileEmployeeId: profile.id },
order: { createdAt: "ASC" }
order: { createdAt: "ASC" },
});
if (profileHistory.length == 0) {
@ -2305,12 +2305,12 @@ export class ProfileEmployeeController extends Controller {
...profile,
birthDateOld: profile?.birthDate,
profileEmployeeId: profile.id,
id: undefined
id: undefined,
}),
);
const firstRecord = await this.profileHistoryRepo.find({
where: { profileEmployeeId: profile.id },
order: { createdAt: "ASC" }
order: { createdAt: "ASC" },
});
return new HttpSuccess(firstRecord);
}
@ -3207,13 +3207,13 @@ export class ProfileEmployeeController extends Controller {
async getProfileHistory(@Path() id: string, @Request() req: RequestWithUser) {
//await new permission().PermissionOrgUserGet(req, "SYS_REGISTRY_EMP", id); ไม่แน่ใจEMPปิดไว้ก่อน;
const profile = await this.profileRepo.findOne({
where: { id: id }
where: { id: id },
});
if (!profile) throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูล");
const profileHistory = await this.profileHistoryRepo.find({
where: { profileEmployeeId: id },
order: { createdAt: "ASC" }
order: { createdAt: "ASC" },
});
if (profileHistory.length == 0) {
@ -3222,12 +3222,12 @@ export class ProfileEmployeeController extends Controller {
...profile,
birthDateOld: profile?.birthDate,
profileEmployeeId: id,
id: undefined
id: undefined,
}),
);
const firstRecord = await this.profileHistoryRepo.find({
where: { profileEmployeeId: id },
order: { createdAt: "ASC" }
order: { createdAt: "ASC" },
});
return new HttpSuccess(firstRecord);
}
@ -5450,7 +5450,8 @@ export class ProfileEmployeeController extends Controller {
].filter(Boolean);
organizeName = names.join(" ");
}
await PostRetireToExprofile(
PostRetireToExprofile(
request,
profile.citizenId ?? "",
profile.prefix ?? "",
profile.firstName ?? "",

View file

@ -1295,13 +1295,13 @@ export class ProfileEmployeeTempController extends Controller {
@Get("history/user")
async getHistoryProfileByUser(@Request() request: RequestWithUser) {
const profile = await this.profileRepo.findOne({
where: { keycloak: request.user.sub }
where: { keycloak: request.user.sub },
});
if (!profile) throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูล");
const profileHistory = await this.profileHistoryRepo.find({
where: { profileEmployeeId: profile.id },
order: { createdAt: "ASC" }
order: { createdAt: "ASC" },
});
if (profileHistory.length == 0) {
@ -1310,12 +1310,12 @@ export class ProfileEmployeeTempController extends Controller {
...profile,
birthDateOld: profile?.birthDate,
profileEmployeeId: profile.id,
id: undefined
id: undefined,
}),
);
const firstRecord = await this.profileHistoryRepo.find({
where: { profileEmployeeId: profile.id },
order: { createdAt: "ASC" }
order: { createdAt: "ASC" },
});
return new HttpSuccess(firstRecord);
}
@ -1828,13 +1828,13 @@ export class ProfileEmployeeTempController extends Controller {
async getProfileHistory(@Path() id: string, @Request() req: RequestWithUser) {
// await new permission().PermissionGet(req, "SYS_REGISTRY_TEMP");//ไม่แน่ใจTEMPปิดไว้ก่อน
const profile = await this.profileRepo.findOne({
where: { id: id }
where: { id: id },
});
if (!profile) throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูล");
const profileHistory = await this.profileHistoryRepo.find({
where: { profileEmployeeId: id },
order: { createdAt: "ASC" }
order: { createdAt: "ASC" },
});
if (profileHistory.length == 0) {
@ -1843,12 +1843,12 @@ export class ProfileEmployeeTempController extends Controller {
...profile,
birthDateOld: profile?.birthDate,
profileEmployeeId: id,
id: undefined
id: undefined,
}),
);
const firstRecord = await this.profileHistoryRepo.find({
where: { profileEmployeeId: id },
order: { createdAt: "ASC" }
order: { createdAt: "ASC" },
});
return new HttpSuccess(firstRecord);
}
@ -3606,7 +3606,8 @@ export class ProfileEmployeeTempController extends Controller {
].filter(Boolean);
organizeName = names.join(" ");
}
await PostRetireToExprofile(
PostRetireToExprofile(
request,
profile.citizenId ?? "",
profile.prefix ?? "",
profile.firstName ?? "",