Exemplo n.º 1
0
        public async Task <IActionResult> Put(EditarPedidoCommand command)
        {
            var result = await _pedidoService.UpdateAsync(command);

            if (result.Success)
            {
                return(Ok("Pedido alterado com sucesso!"));
            }
            else
            {
                return(BadRequest(result.Messages));
            }
        }
Exemplo n.º 2
0
        public async Task <Pedido> ConverterEditar(EditarPedidoCommand command)
        {
            var produto = await _produtoRepository.GetByIdAsync(command.ProdutoId);

            var valorTotal = produto.Preco * command.Quantidade;
            var entidade   = await _pedidoRepository.GetByIdAsync(command.Id);

            entidade.ClienteId  = command.ClienteId;
            entidade.ProdutoId  = command.ProdutoId;
            entidade.Quantidade = command.Quantidade;
            entidade.Data       = DateTime.Now;
            entidade.ValorTotal = valorTotal;
            return(entidade);
        }
Exemplo n.º 3
0
        public async Task <ResponseToUser> UpdateAsync(EditarPedidoCommand command)
        {
            var result = _editarValidator.Validate(command);

            if (!result.IsValid)
            {
                return(ErrorResult(result.Errors.Select(q => q.ErrorMessage)));
            }
            var entidade = await _pedidoMapper.ConverterEditar(command);

            var entidadePersistida = await _pedidoRepository.UpdateAsyncWithReturn(entidade);

            _publisher.Publisher(_pedidoMapper.ConverterPedidoAlteradoEvent(entidadePersistida));

            return(SuccessResult());
        }