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));
 }
示例#2
0
        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));
        }