fix Issue : 722,740,746

This commit is contained in:
Suphonchai Phoonsawat 2024-11-12 12:38:40 +07:00
parent 3cad108cef
commit 5f303cce48

View file

@ -771,6 +771,26 @@ namespace BMA.EHR.Leave.Service.Controllers
var sumApproveLeave = await _leaveRequestRepository.GetSumApproveLeaveByTypeForUserAsync(userId, req.Type, req.StartLeaveDate.Year);
var minLeave = (await _context.Set<LeaveRequest>().Where(x => x.Type.Id == req.Type &&
x.LeaveStatus != "DELETE" && x.LeaveStatus != "REJECT")
.OrderBy(x => x.LeaveStartDate)
.FirstOrDefaultAsync());
var maxLeave = (await _context.Set<LeaveRequest>().Where(x => x.Type.Id == req.Type &&
x.LeaveStatus != "DELETE" && x.LeaveStatus != "REJECT")
.OrderByDescending(x => x.LeaveEndDate)
.FirstOrDefaultAsync());
var isBetween = false;
if (minLeave != null && maxLeave != null)
{
isBetween = (req.StartLeaveDate.Date >= minLeave.LeaveStartDate.Date && req.StartLeaveDate.Date <= maxLeave.LeaveEndDate.Date) ||
(req.EndLeaveDate.Date >= minLeave.LeaveStartDate.Date && req.EndLeaveDate.Date <= maxLeave.LeaveEndDate.Date);
}
var isLeave = false;
switch (leaveType.Code.ToUpper().Trim())
@ -784,10 +804,10 @@ namespace BMA.EHR.Leave.Service.Controllers
isLeave = totalDay <= 90;
break;
case "LV-004":
isLeave = (totalDay - sumWorkDay - sumWeekend) <= 15;
isLeave = (totalDay - (sumWorkDay + sumWeekend) + sumApproveLeave) <= 15;
break;
case "LV-005":
isLeave = (totalDay - sumWorkDay - sumWeekend - sumApproveLeave) <= 10;
isLeave = (totalDay - (sumWorkDay + sumWeekend) + sumApproveLeave) <= 10;
break;
case "LV-006":
isLeave = totalDay <= 120;
@ -864,7 +884,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var result = new GetLeaveCheckResultDto
{
IsLeave = isLeave,
IsLeave = !isBetween ? isLeave : false,
SumDateWork = sumWorkDay,
TotalDate = totalDay,
SumDateHoliday = sumWeekend
@ -1109,7 +1129,7 @@ namespace BMA.EHR.Leave.Service.Controllers
CoupleDayLevelCountry = rawData.CoupleDayLevelCountry,
CoupleDayCountryHistory = rawData.CoupleDayCountryHistory,
CoupleDayTotalHistory = rawData.CoupleDayTotalHistory,
CoupleDayStartDateHistory = rawData.CoupleDayStartDateHistory,
CoupleDayStartDateHistory = rawData.CoupleDayStartDateHistory,
CoupleDayEndDateHistory = rawData.CoupleDayEndDateHistory,
CoupleDaySumTotalHistory = rawData.CoupleDaySumTotalHistory,