From 83a915f92c08ea31c49a14eb8be21fa70edc2fa5 Mon Sep 17 00:00:00 2001 From: Suphonchai Phoonsawat Date: Fri, 16 Jan 2026 16:01:07 +0700 Subject: [PATCH] refactor LeaveReportController to sort employees by check-in time and remark #2193 --- BMA.EHR.Leave/Controllers/LeaveReportController.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/BMA.EHR.Leave/Controllers/LeaveReportController.cs b/BMA.EHR.Leave/Controllers/LeaveReportController.cs index 6a09e2b9..a86059fb 100644 --- a/BMA.EHR.Leave/Controllers/LeaveReportController.cs +++ b/BMA.EHR.Leave/Controllers/LeaveReportController.cs @@ -2251,7 +2251,8 @@ namespace BMA.EHR.Leave.Service.Controllers } //employees = employees.OrderBy(x => x.checkInDate).ThenBy(x => x.checkInTimeRaw ?? DateTime.MaxValue).ThenBy(x => x.checkOutTimeRaw ?? DateTime.MaxValue).ToList(); employees = employees - .OrderBy(x => x.remark.Trim() == "" ? 0 : 1) // ข้อมูลที่ไม่มี remark ให้ขึ้นก่อน + .OrderBy(x => x.checkInTime.Trim() == "" ? 1 : 0) // เรียงตามวันที่ลงเวลา + .ThenBy(x => x.remark.Trim() == "" ? 0 : 1) // ข้อมูลที่ไม่มี remark ให้ขึ้นก่อน .ThenBy(x => x.checkInTimeRaw ?? DateTime.MaxValue).ThenBy(x => x.checkOutTimeRaw ?? DateTime.MaxValue) .ThenBy(x => x.remark) // จากนั้นจัดเรียงตาม remark .ToList();