public static bool UpdatePresent(PresentDay presentDay) { PresentDay currentPresentDay = GetPresentById(presentDay.IdPresentDay); TimeSpan t = DateTime.Parse(presentDay.TimeEnd.ToString("yyyy-MM-dd HH:mm:ss")) - currentPresentDay.TimeBegin; double addedHours = t.TotalHours; string query = $"UPDATE task.PresentDay SET EndHour='{presentDay.TimeEnd.ToString("yyyy-MM-dd HH:mm:ss")}',TotalHours={addedHours} WHERE IdPresentDay={presentDay.IdPresentDay}"; if (DBAccess.RunNonQuery(query) == 1) { BOL.Models.Task currentTask = LogicTask.GetTaskByIdProjectAndIdUser(currentPresentDay.UserId, currentPresentDay.ProjectId); currentTask.GivenHours += (decimal)addedHours; if (LogicTask.UpdateTask(currentTask)) { User Currentuser = LogicManager.GetUserDetails(currentPresentDay.UserId); Currentuser.NumHoursWork += (decimal)addedHours; if (LogicManager.UpdateUser(Currentuser)) { return(true); } } } return(false); }