public ConfirmationResponse Execute(AuthorizedIdRequest request) { request.ThrowExceptionIfInvalid(); var workTask = _workTaskRepository.Read(request.Id); var backlog = _projectRepository.ReadProductBacklog(workTask.ProjectId); var taskInBacklog = backlog.FirstOrDefault(x => x.WorkTaskId == workTask.Id); if (taskInBacklog != null) { foreach (var s in workTask.ChildTasks) { if (!backlog.IsTaskInBacklog(s)) { backlog.AddTaskToBacklog(new ProductBacklog.WorkTaskWithStatus(s, taskInBacklog.Status)); } } backlog.RemoveTaskFromBacklog(workTask.Id); } _projectRepository.UpdateProductBacklog(backlog); _workTaskRepository.Delete(workTask.Id); return(new ConfirmationResponse($"WorkTask {workTask.Name} successfully deleted.") { Id = workTask.Id, }); }
public void Delete(Identity <WorkTask> workTaskId) { // todo: transaction _TaskRepository.Delete(workTaskId); _WorkingTimeRangeRepository.RemoveByTaskId(workTaskId); }
public void Delete(Identity <WorkTask> workTaskId) { _TaskRepository.Delete(workTaskId); _WorkingTimeRangeRepository.RemoveByTaskId(workTaskId); }