Enhance leave eligibility check in LeaveRequestController with detailed messaging

This commit is contained in:
Suphonchai Phoonsawat 2026-02-24 10:24:24 +07:00
parent c20e1b48bd
commit cd99179621

View file

@ -977,19 +977,30 @@ namespace BMA.EHR.Leave.Service.Controllers
var date2 = new LocalDate(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
var (yy, mm, dd) = startDate.GetDifference(DateTime.Now.Date);
var (govAgeYear, govAgeMonth, govAgeDay) = startDate.GetDifference(DateTime.Now.Date);
var isLeave = false;
var message = string.Empty;
// Period period = Period.Between(date1, date2);
// var govAgeMonth = period.Months;
// var govAgeYear = period.Years;
if (govAgeYear >= 1 || (govAgeYear == 0 && govAgeMonth >= 6))
{
isLeave = true;
if (!isLeave) message = "จำนวนวันลาเกินที่กำหนด";
}
else
{
isLeave = false;
if (!isLeave) message = "อายุราชการน้อยกว่า 6 เดือนหรือ 180 วัน";
}
return Success(new
{
GovAge = govAge,
GovAgeDay = dd,
GovAgeMonth = mm,
GovAgeYear = yy
GovAgeDay = govAgeDay,
GovAgeMonth = govAgeMonth,
GovAgeYear = govAgeYear,
IsLeave = isLeave,
Message = message
});
}