public GenericCommandResult MarkAsUndone( [FromBody] MarkTaskAsUndoneCommand command, [FromServices] TaskHandler handler ) { command.User = User.Claims.FirstOrDefault(x => x.Type == "user_id")?.Value; return((GenericCommandResult)handler.Handle(command)); }
public ICommandResult Handle(MarkTaskAsUndoneCommand command) { // Fail Fast Validation command.Validate(); if (command.Invalid) { return(new GenericCommandResult(false, "Ops, parece que sua tarefa está errada!", command.Notifications)); } // Recupera o TodoItem var task = _repository.GetById(command.Id, command.User); // Altera o estado task.MarkAsUndone(); // Salva no banco _repository.Update(task); // Retorna o resultado return(new GenericCommandResult(true, "Tarefa salva", task)); }