fix: update end time parsing and improve attendance status logic
Some checks failed
release-dev / release-dev (push) Failing after 12s

This commit is contained in:
Suphonchai Phoonsawat 2025-12-15 10:29:23 +07:00
parent e023ed65f7
commit ff66aebdfa

View file

@ -2373,9 +2373,30 @@ namespace BMA.EHR.Leave.Service.Controllers
//var endTime = DateTimeOffset.Parse($"{DateTime.Now.Date.ToString("yyyy-MM-dd")}T{duty.EndTimeAfternoon}:00.0000000+07:00").ToLocalTime().DateTime;
var endTime = DateTime.Parse($"{DateTime.Now.Date.ToString("yyyy-MM-dd")}T{duty.EndTimeAfternoon}:00.0000000+07:00");
 //var endTime = DateTime.Parse($"{DateTime.Now.Date.ToString("yyyy-MM-dd")}T{duty.EndTimeAfternoon}:00.0000000+07:00");
var endTime = DateTime.Parse($"{DateTime.Now.Date.ToString("yyyy-MM-dd")} {duty.EndTimeAfternoon}");
var status = string.Empty;
if(lastCheckIn == null)
{
status = "ABSENT";
}
else if (lastCheckIn.CheckIn.Date < DateTime.Now.Date)
{
status = "NORMAL";
}
else
{
if (time < endTime)
{
status = "ABSENT";
}
else
{
status = "NORMAL";
}
}
var status = lastCheckIn == null ? "ABSENT" : lastCheckIn.CheckIn.Date < DateTime.Now.Date ? "NORMAL" : time < endTime ? "ABSENT" : "NORMAL";
//var status = lastCheckIn == null ? "ABSENT" : lastCheckIn.CheckIn.Date < DateTime.Now.Date ? "NORMAL" : time < endTime ? "ABSENT" : "NORMAL";
return Success(new
{