Add IsProbatin property to GetProfileByKeycloakIdDto and update leave request logic for probationary users #2266

This commit is contained in:
Suphonchai Phoonsawat 2026-02-05 10:39:57 +07:00
parent 970319e8c2
commit 358fd47b99
3 changed files with 43 additions and 24 deletions

View file

@ -1084,8 +1084,12 @@ namespace BMA.EHR.Leave.Service.Controllers
// fix issue : ระบบลา (ขรก.) >> ลาพักผ่อน (กรณีรับราชการไม่ถึง 6 เดือน) #838
//var leavePrevYear = (await _leaveRequestRepository.GetSumApproveLeaveAsync(fiscalYear - 1)).Where(x => x.LeaveTypeCode == "LV-005" && x.KeycloakUserId == userId).FirstOrDefault();
//var leavePrevYearRemain = 10 - (leavePrevYear == null ? 0 : leavePrevYear.SumLeaveDay); // หายอดวันลาที่เหลือของปีก่อน
if (govAge >= 180)
if (profile.IsProbatin! == true)
{
isLeave = false;
if (!isLeave) message = "ยังอยู่ในช่วงทดลองปฏิบัติราชการ ไม่สามารถลาพักผ่อนได้";
}
else if (govAge >= 180)
{
isLeave = (totalDay - (sumWorkDay + sumWeekend) + approveDay) <= (limitDay);
if (!isLeave) message = "จำนวนวันลาเกินที่กำหนด";