แก้รายงานการแสดงวันลา

This commit is contained in:
Suphonchai Phoonsawat 2024-01-22 12:09:36 +07:00
parent c0d7aa92cc
commit 34da86653f
4 changed files with 224 additions and 49 deletions

View file

@ -707,7 +707,62 @@ namespace BMA.EHR.Leave.Service.Controllers
isLeave = govAge >= 365;
break;
case "LV-010":
var maxEnd = new DateTime(req.StartLeaveDate.Year + 2, req.StartLeaveDate.Month, req.StartLeaveDate.Day - 1);
int yy, mm, dd;
yy = req.StartLeaveDate.Year + 2;
if (req.StartLeaveDate.Day == 1)
{
if (req.StartLeaveDate.Month == 1)
{
mm = 12;
dd = 31;
}
else
{
mm = req.StartLeaveDate.Month - 1;
switch (mm)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
{
dd = 31;
break;
}
case 2:
{
if (DateTime.IsLeapYear(yy))
{
dd = 29;
}
else
dd = 28;
break;
}
case 4:
case 6:
case 9:
case 11:
{
dd = 30;
break;
}
default:
dd = 1;
break;
}
}
}
else
{
mm = req.StartLeaveDate.Month;
dd = req.StartLeaveDate.Day - 1;
}
var maxEnd = new DateTime(yy, mm, dd);
isLeave = req.EndLeaveDate.Date <= maxEnd;
break;
case "LV-011":