public GenericCommandResult MarkAsUndone( [FromBody] MarkTodoAsUnDoneCommand command, [FromServices] TodoHandler handler ) { command.User = User.Claims.FirstOrDefault(x => x.Type == "user_id")?.Value; return((GenericCommandResult)handler.Handle(command)); }
public ICommandResult Handle(MarkTodoAsUnDoneCommand command) { command.Validate(); if (command.Invalid) { return(new GenericCommandResult(false, "Ops, parece que sua tarefa está errada", command.Notifications)); } var todo = _repository.GetById(command.Id, command.User); todo.MarkAsUnDone(); _repository.Update(todo); return(new GenericCommandResult(true, "Tarefa salva", todo)); }
public ICommandResult Handle(MarkTodoAsUnDoneCommand 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 (Rehidratação) var todo = _repository.GetById(command.Id, command.User); // Altera o estado todo.MarkAsUndone(); // Salva no banco _repository.Update(todo); // Retorna o resultado return(new GenericCommandResult(true, "Tarefa salva", todo)); }