public List <string> SaveWorkHours(WorkHourJson workHourJson) { List <string> result = new List <string>(); try { UnitOfWork uow = new UnitOfWork(); UserManager userManager = new UserManager(uow); TaskManager taskManager = new TaskManager(uow); ProjectManager prjManager = new ProjectManager(uow); TimeSheetManager tsManager = new TimeSheetManager(uow); Validations validate = new Validations(); User currUser = new UserHelper().GetCurrent(); WorkHour workHour = workHourJson.ToWorkHour(); workHour.Task = taskManager.GetByID(workHour.TaskID); workHour.TaskID = workHour.Task.ID; workHour.Project = prjManager.GetByID(workHourJson.ProjectID); workHour.ProjectId = workHour.Project.ID; workHour.EmployeeID = currUser.ID; workHour.Employee = userManager.GetByID(currUser.ID); workHour.WorkflowStage = new WorkflowManager(uow).FirstStage(); workHour.WorkflowStageID = workHour.WorkflowStage.ID; workHour.Description = workHourJson.Description; tsManager.SaveWorkHour(workHour); HistoryUtilities.RegisterSaveHistory(workHour); } catch (ValidationException ex) { result = ex.Errors; } return(result); }