public IHttpActionResult UpdateTask(int id, TaskDto taskDto) { taskDto.Id = id; UpdateTask(taskDto); context.SaveChanges(); return Ok(taskDto); }
public IHttpActionResult CreateTask(TaskDto taskDto) { taskDto.Id = 0; var task = UpdateTask(taskDto); task.OrderIndex = (!context.Tasks.Any() ? 0 : context.Tasks.Max(t => t.OrderIndex)) + 1; context.SaveChanges(); taskDto.Id = task.Id; return Ok(taskDto); }
private Task UpdateTask(TaskDto taskDto) { var id = taskDto.Id; var task = id > 0 ? context.Tasks.Single(t => t.Id == id) : null; if (task == null) { task = new Task(); context.Tasks.Add(task); } task.Name = taskDto.Name; task.Start = taskDto.Start; task.Finish = taskDto.Finish; task.CompletedFinish = taskDto.CompletedFinish; task.Assignments = taskDto.Assignments; task.Indentation = taskDto.Indentation; foreach (var predecessor in task.TargetPredecessors.ToArray()) context.Predecessors.Remove(predecessor); if (taskDto.Predecessors != null) { foreach (var predecessorDto in taskDto.Predecessors) task.TargetPredecessors.Add(new Predecessor { SourceTaskId = predecessorDto.SourceTaskId, DependencyType = predecessorDto.DependencyType }); } return task; }