public async Task <IActionResult> TimeInTimeOutLog(string user)
        {
            var employeeInDB = _context.EmployeeTimeLogs.Where(e => e.Employee.UserName == user).FirstOrDefault();

            if (employeeInDB != null)
            {
                var timeIn = new EmployeeTimeLog
                {
                    TimeIn  = employeeInDB.TimeIn = DateTime.Now,
                    IsLogin = true
                };

                await _context.EmployeeTimeLogs.AddAsync(timeIn);

                await _context.SaveChangesAsync();

                return(CreatedAtAction("GetEmployeeTimeLog", new { timeIn.TimeIn, timeIn.Employee.UserName }, timeIn));
            }
            return(Ok());
            //if(employeeInDB.IsLogin==true&&employeeInDB.TimeIn==)
            //{
            //    var timeOut = new EmployeeTimeLog
            //    {
            //        TimeOut = employeeInDB.TimeOut,
            //        IsLogin = false
            //    };
            //    return CreatedAtAction("GetEmployeeTimeLog", new { timeOut.TimeOut, timeOut.Employee.UserName }, timeOut);
            //}
        }
        public async Task <IActionResult> CreateTimelog(EmployeeTimeLog timeLog)
        {
            var empTimeLog = await _context.EmployeeTimeLogs.Where(t => t.EmployeeId == timeLog.EmployeeId).FirstOrDefaultAsync();

            var timeIn = new EmployeeTimeLog();

            var timeDifference = empTimeLog.TimeOut;

            try
            {
                if (empTimeLog.IsLogin == true)
                {
                    return(Content("Sorry you're already login for today"));
                }
                else if (ModelState.IsValid)
                {
                    timeIn.EmployeeId = timeLog.EmployeeId;
                    timeIn.IsLogin    = true;
                    timeIn.TimeIn     = DateTime.Now;
                    await _context.EmployeeTimeLogs.AddAsync(timeIn);

                    await _context.SaveChangesAsync();

                    return(CreatedAtAction("GetEmployeeTimeLog", new { timeIn.TimeIn, timeIn.EmployeeId }, timeIn));
                }
                else
                {
                    return(Content("Sorry can't signin today again"));
                }
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }
        }
        public async Task <IActionResult> TimeOut(EmployeeTimeLog timeLog)
        {
            var empTimeLog = await _context.EmployeeTimeLogs.FirstOrDefaultAsync(t => t.EmployeeId == timeLog.EmployeeId);

            if (timeLog.EmployeeId == 0)
            {
                return(BadRequest());
            }

            else if (empTimeLog.IsLogin == true)
            {
                empTimeLog.TimeOut = DateTime.Now;
                empTimeLog.IsLogin = false;

                await _context.SaveChangesAsync();
            }
            else
            {
                return(NotFound());
            }

            return(NoContent());
        }