public void RealizarPedido(RealizarPedidoDto realizarPedidoDto) { if (realizarPedidoDto is null) { throw new Exception("Nenhum pedido à fazer."); } var carrinho = _carrinhoComprasRepository.Obter(Sessao.Sessao.Usuario.CarrinhoComprasId); var descricaoPedido = carrinho.ObterDescricaoPedido(); var pedido = new Pedido() { DataPedido = DateTime.Now, Descricao = descricaoPedido, EnderecoId = realizarPedidoDto.EnderecoId, SituacaoPedido = Enums.eSituacaoPedido.Pendente, TipoPagamento = (Enums.eTipoPagamento)realizarPedidoDto.TipoPagamento, Troco = realizarPedidoDto.Troco, Valor = carrinho.PrecoFinal, UsuarioId = Sessao.Sessao.Usuario.Id }; _pedidoRepository.Adicionar(pedido); _itemVendaRepository.DeletarVarios(carrinho.ItemVendas); carrinho.PrecoFinal = decimal.Zero; carrinho.PrecoFrete = decimal.Zero; _carrinhoComprasRepository.Atualizar(carrinho); _pedidoRepository.SalvarAlteracoes(); }
public IActionResult AdicionarPedido([FromBody] RealizarPedidoDto pedido) { try { _pedidoService.RealizarPedido(pedido); return(Ok()); } catch (Exception ex) { return(BadRequest(ex.Message)); } }