From 9bf7ee2e9a41c56df363737010d4218ffe83cd43 Mon Sep 17 00:00:00 2001 From: Suphonchai Phoonsawat Date: Fri, 2 May 2025 10:35:56 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B9=80=E0=B8=9E=E0=B8=B4=E0=B9=88=E0=B8=A1?= =?UTF-8?q?=20Field=20=E0=B8=95=E0=B8=B2=E0=B8=A1=20issue=20#1335?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/LeaveReportController.cs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/BMA.EHR.Leave/Controllers/LeaveReportController.cs b/BMA.EHR.Leave/Controllers/LeaveReportController.cs index 0aa63e9d..ca0e1120 100644 --- a/BMA.EHR.Leave/Controllers/LeaveReportController.cs +++ b/BMA.EHR.Leave/Controllers/LeaveReportController.cs @@ -282,8 +282,13 @@ namespace BMA.EHR.Leave.Service.Controllers //var sumWeekend = _holidayRepository.GetWeekEndCount(data.LeaveStartDate.Date, data.LeaveEndDate.Date, category); + var startFiscalYear = new DateTime(data.LeaveStartDate.Year - 1, 10, 1); + var endFiscalYear = data.CreatedAt.Date.AddDays(-1); // นับจากวันที่ยื่นลา + var leaveData = await _leaveBeginningRepository.GetByYearAndTypeIdForUserAsync(data.LeaveStartDate.Year, data.Type.Id, data.KeycloakUserId); - var sumLeave = leaveData == null ? 0 : leaveData.LeaveDaysUsed; + //var sumLeave = leaveData == null ? 0 : leaveData.LeaveDaysUsed; + + var sumLeave = await _leaveRequestRepository.GetSumApproveLeaveTotalByTypeAndRangeForUser(data.KeycloakUserId, data.Type.Id, startFiscalYear, endFiscalYear); var leaveLimit = leaveData == null ? 0.0 : leaveData.LeaveDays; @@ -314,13 +319,16 @@ namespace BMA.EHR.Leave.Service.Controllers leaveDateStart = data.LeaveStartDate.Date.ToThaiShortDate().ToThaiNumber(), leaveDateEnd = data.LeaveEndDate.Date.ToThaiShortDate().ToThaiNumber(), - leaveTotal = data.LeaveTotal.ToString().ToThaiNumber(), - //LeaveTotal = data.LeaveStartDate.DiffDay(data.LeaveEndDate).ToString().ToThaiNumber(), + leaveAddress = data.LeaveAddress.ToThaiNumber(), leaveNumber = data.LeaveNumber.ToThaiNumber(), - - LeaveSummary = sumLeave.ToString().ToThaiNumber(), LeaveRemain = (leaveLimit - sumLeave).ToString().ToThaiNumber(), + + leaveTotal = data.LeaveTotal.ToString().ToThaiNumber(), // วันลาปัจจุบัน + LeaveSummary = sumLeave.ToString().ToThaiNumber(), // วันลาครั้งก่อน + + LeaveAll = (data.LeaveTotal + sumLeave).ToString().ToThaiNumber(), // ลาครั้งนี้ + ครั้งก่อน + LeaveLimit = leaveLimit.ToString().ToThaiNumber() // สิทธิ์การลา } }; }