fix: update end time parsing and improve attendance status logic
Some checks failed
release-dev / release-dev (push) Failing after 12s
Some checks failed
release-dev / release-dev (push) Failing after 12s
This commit is contained in:
parent
e023ed65f7
commit
ff66aebdfa
1 changed files with 23 additions and 2 deletions
|
|
@ -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
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue