public async Task <Unit> Handle(UpdateTask request, CancellationToken cancellationToken) { var projectTask = await _projectTaskRepository.GetByIdAsync(request.Id, cancellationToken); if (projectTask == null) { throw new DomainException("Task does not exist!"); } if (projectTask.Title != request.Title && await _projectTaskRepository.Exists(request.Title, projectTask.ProjectId, cancellationToken)) { throw new DomainException($"Task with name {request.Title} exists!"); } projectTask.Title = request.Title; projectTask.Description = request.Description; projectTask.Type = request.Type; projectTask.ModifiedDate = DateTime.UtcNow; _logger.LogInformation("----- Updating Task - Task: {@Task}", projectTask); _projectTaskRepository.Update(projectTask); await _projectTaskRepository.UnitOfWork.SaveChangesAsync(cancellationToken); return(Unit.Value); }
public IActionResult Update(ProjectTaskUpdateDisplay display) { if (!ModelState.IsValid) { return(View()); } repository.Update(display.Data); return(Redirect("~/")); }
public void SetCompletion(int userId, int projectTaskId, bool completed) { _projectTaskRepository.Update( r => r.Id == projectTaskId && r.UserId == userId, record => { record.Completed = completed; return(record); } ); }
public async Task <ProjectTaskDTO> EditAsync(ProjectTaskDTO model) { var entity = await _projectTaskRepository.GetByIdAsync(model.ProjectId); if (entity == null) { throw new Exception("Project task not found"); } entity.ProjectId = model.ProjectId; entity.TaskFatherId = model.TaskFatherId; entity.TaskName = model.TaskName; _projectTaskRepository.Update(entity); await _projectTaskRepository.SaveAsync(); return(entity.ToModel()); }
public UpdateProjectTaskResponseEvent Execute(UpdateProjectTaskRequestEvent request) { UpdateProjectTaskResponseEvent response; try { if (request.ProjectTask.Status == TaskStatus.Closed) { request.ProjectTask.ActualTile = DateTime.Now; } bool status = _projectTaskRepository.Update(request.ProjectTask); response = new UpdateProjectTaskResponseEvent(status); } catch (Exception ex) { throw new MissingMemberException("Data is incorrect!", ex); } return(response); }
public ActionResult <ProjectTask> Update(ProjectTaskUpdate task) => repository.Update(task);