fix ระบบไม่ปั๊มประวัติข้อมูลเดิมให้ row แรก #2535
All checks were successful
Build & Deploy on Dev / build (push) Successful in 1m2s
All checks were successful
Build & Deploy on Dev / build (push) Successful in 1m2s
This commit is contained in:
parent
774a58bc22
commit
ad9a7dcbb6
4 changed files with 78 additions and 0 deletions
|
|
@ -9151,4 +9151,30 @@ export class OrganizationDotnetController extends Controller {
|
|||
});
|
||||
return new HttpSuccess(filteredPosMasters);
|
||||
}
|
||||
|
||||
/**
|
||||
* API ตรวจสอบ profileId ที่ลาออกแล้ว
|
||||
* @summary API ตรวจสอบ profileId ที่ลาออกแล้ว
|
||||
*/
|
||||
@Post("check-isLeave")
|
||||
@Security("internalAuth")
|
||||
async findProfileIsLeave(
|
||||
@Body()
|
||||
req: { profileIds: string[] }
|
||||
) {
|
||||
const profile = await this.profileRepo.find({
|
||||
select: { id: true },
|
||||
where: {
|
||||
id: In(req.profileIds),
|
||||
isLeave: true
|
||||
}
|
||||
});
|
||||
|
||||
if (profile.length === 0) {
|
||||
return new HttpSuccess([]);
|
||||
}
|
||||
|
||||
return new HttpSuccess(profile.map(p => p.id));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5779,6 +5779,22 @@ export class ProfileController extends Controller {
|
|||
}
|
||||
const record = await this.profileRepo.findOneBy({ id });
|
||||
const before = structuredClone(record);
|
||||
// เช็คว่ามี profileHistory ของ profile นี้หรือไม่
|
||||
const historyCount = await this.profileHistoryRepo.count({
|
||||
where: { profileId: id },
|
||||
});
|
||||
|
||||
// ถ้าไม่มีเลย ให้บันทึกข้อมูลเริ่มต้น (ก่อน update) ลงไปก่อน
|
||||
if (historyCount === 0) {
|
||||
await this.profileHistoryRepo.save(
|
||||
Object.assign(new ProfileHistory(), {
|
||||
...before,
|
||||
birthDateOld: before?.birthDate,
|
||||
profileId: id,
|
||||
id: undefined,
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
if (!record) throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูลโปรไฟล์นี้");
|
||||
|
||||
|
|
|
|||
|
|
@ -2385,6 +2385,24 @@ export class ProfileEmployeeController extends Controller {
|
|||
Extension.CheckCitizen(body.citizenId);
|
||||
}
|
||||
const record = await this.profileRepo.findOneBy({ id });
|
||||
const before = structuredClone(record);
|
||||
// เช็คว่ามี profileHistory ของ profile นี้หรือไม่
|
||||
const historyCount = await this.profileHistoryRepo.count({
|
||||
where: { profileEmployeeId: id },
|
||||
});
|
||||
|
||||
// ถ้าไม่มีเลย ให้บันทึกข้อมูลเริ่มต้น (ก่อน update) ลงไปก่อน
|
||||
if (historyCount === 0) {
|
||||
await this.profileHistoryRepo.save(
|
||||
Object.assign(new ProfileEmployeeHistory(), {
|
||||
...before,
|
||||
birthDateOld: before?.birthDate,
|
||||
profileEmployeeId: id,
|
||||
id: undefined,
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
if (!record) throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูลโปรไฟล์นี้");
|
||||
|
||||
if (body.employeeClass == null || body.employeeClass == undefined || body.employeeClass == "") {
|
||||
|
|
|
|||
|
|
@ -1001,6 +1001,24 @@ export class ProfileEmployeeTempController extends Controller {
|
|||
}
|
||||
|
||||
const record = await this.profileRepo.findOneBy({ id });
|
||||
const before = structuredClone(record);
|
||||
// เช็คว่ามี profileHistory ของ profile นี้หรือไม่
|
||||
const historyCount = await this.profileHistoryRepo.count({
|
||||
where: { profileEmployeeId: id },
|
||||
});
|
||||
|
||||
// ถ้าไม่มีเลย ให้บันทึกข้อมูลเริ่มต้น (ก่อน update) ลงไปก่อน
|
||||
if (historyCount === 0) {
|
||||
await this.profileHistoryRepo.save(
|
||||
Object.assign(new ProfileEmployeeHistory(), {
|
||||
...before,
|
||||
birthDateOld: before?.birthDate,
|
||||
profileEmployeeId: id,
|
||||
id: undefined,
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
if (!record) throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูลโปรไฟล์นี้");
|
||||
|
||||
if (body.employeeClass == null || body.employeeClass == undefined || body.employeeClass == "") {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue