public async Task <ServiceActionResult <RemovedTasks> > DeleteTask(int taskId) { using (var db = new ThingsToDoAppContext()) { var entity = await db.Tasks.Where(x => x.Id == taskId).FirstOrDefaultAsync(); var removedTask = new RemovedTasks { TaskId = taskId, Title = entity.Title, Priority = entity.Priority, CategoryId = entity.CategoryId, RemovedDate = DateTime.UtcNow, }; db.RemovedTasks.Add(removedTask); var result = await db.SaveChangesAsync(); db.Tasks.Remove(entity); result = await db.SaveChangesAsync(); if (result > 0) { return(new ServiceActionResult <RemovedTasks>(removedTask, ServiceActionStatus.Deleted)); } else { return(new ServiceActionResult <RemovedTasks>(removedTask, ServiceActionStatus.Error));; } } }
public async Task <ServiceActionResult <Tasks> > FinishTask(int taskId) { using (var db = new ThingsToDoAppContext()) { var task = await db.Tasks.FirstOrDefaultAsync(x => x.Id == taskId); if (task != null) { task.FinishedDate = DateTime.UtcNow; } var result = await db.SaveChangesAsync(); if (result > 0) { return(new ServiceActionResult <Tasks>(task, ServiceActionStatus.Finished)); } else { return(new ServiceActionResult <Tasks>(task, ServiceActionStatus.Error)); } } }