public LifeTask PopulateLifeTaskFromModel(TaskModel model, LifeTask dbTask, int?userId = null) { dbTask.Name = model.Name; dbTask.DateDue = CustomFormatExtensions.DateFormatter(model.DateDue); dbTask.ScheduledDate = CustomFormatExtensions.DateFormatter(model.ScheduledDate); dbTask.DurationInMinutes = model.DurationInMinutes; // TODO - potentially need better checks on whether a user already exists if (dbTask.UserId == 0) { if (userId.HasValue) { dbTask.UserId = userId.Value; } else { throw new InvalidOperationException("This task has not been created in the context of a user"); } } if (dbTask.Completed && !model.Completed) { dbTask.CompletedDate = null; } else if (!dbTask.Completed && model.Completed) { dbTask.CompletedDate = _dateTimeService.GetCurrentTime(); } dbTask.Completed = model.Completed; dbTask.TaskTypeId = model.TaskTypeId; dbTask.Description = model.Description; return(dbTask); }
public async Task <List <ScheduledTaskModel> > GetScheduledTasks(ScheduledTasksQueryModel model, int userId) { var fromDate = CustomFormatExtensions.TryDateFormatter(model.FromDate); var toDate = CustomFormatExtensions.TryDateFormatter(model.ToDate); var results = await _queries.GetScheduledTasks(fromDate, toDate, userId); return(results); }