diff --git a/src/controllers/OrganizationDotnetController.ts b/src/controllers/OrganizationDotnetController.ts index 02f6ebf5..0ab0bbc9 100644 --- a/src/controllers/OrganizationDotnetController.ts +++ b/src/controllers/OrganizationDotnetController.ts @@ -6240,7 +6240,7 @@ export class OrganizationDotnetController extends Controller { isRetirement?: boolean; reqNode?: number; reqNodeId?: string; - date?: Date; + date: Date; }, ) { let typeCondition: any = {}; @@ -6380,9 +6380,8 @@ export class OrganizationDotnetController extends Controller { break; } } - const date = body.date ? new Date(body.date) : new Date(); // set เวลาเป็น 23:59:59 ของวันนั้น - date.setHours(23, 59, 59, 999); + const date = body.date.setHours(23, 59, 59, 999); let profile = await this.posMasterHistoryRepository.find({ where: { @@ -6810,7 +6809,7 @@ export class OrganizationDotnetController extends Controller { isRetirement?: boolean; reqNode?: number; reqNodeId?: string; - date?: Date; + date: Date; }, ) { let typeCondition: any = {}; @@ -6950,9 +6949,7 @@ export class OrganizationDotnetController extends Controller { break; } } - const date = body.date ? new Date(body.date) : new Date(); - // set เวลาเป็น 23:59:59 ของวันนั้น - date.setHours(23, 59, 59, 999); + const date = body.date.setHours(23, 59, 59, 999); let profile = await this.posMasterHistoryRepository.find({ where: { @@ -6996,9 +6993,23 @@ export class OrganizationDotnetController extends Controller { } } } + // group3: group by firstName-lastName จากค่าที่ได้จาก group2 + const grouped3 = new Map(); + for (const item of Array.from(grouped2.values())) { + const key = `${item.firstName}-${item.lastName}`; + if (!grouped3.has(key)) { + grouped3.set(key, item); + } else { + // ถ้าเจอซ้ำ ให้เลือก createdAt ล่าสุด + const exist = grouped3.get(key); + if (exist && item.createdAt > exist.createdAt) { + grouped3.set(key, item); + } + } + } const profile_ = await Promise.all( - Array.from(grouped2.values()) + Array.from(grouped3.values()) .filter((x) => x.profileId != null) .map(async (item: PosMasterHistory) => { let profile = await this.profileRepo.findOne({