public void PagarCartao(Carrinho carrinho, DetalhePagamento detalhePagamento) { using (var cartaoService = new CartaoService()) { try { cartaoService.Credenciais = "Credenciais do Cliente"; cartaoService.Numero = detalhePagamento.NumeroDoCartao; cartaoService.MesVencimento = detalhePagamento.MesValidade; cartaoService.AnoVencimento = detalhePagamento.AnoValidade; cartaoService.NomeDoCartao = detalhePagamento.NomeDoCartao; cartaoService.Valor = carrinho.Total; cartaoService.Charge(); } catch (AvsMismatchException ex) { throw new OrderException("O Cartao foi rejeitado.", ex); } catch (Exception ex) { throw new OrderException("Houve um problema com o cartão.", ex); } } }
public void Checkout(Carrinho carrinho, DetalhePagamento detalhePagamento) { if (VerificaEstoque(carrinho)) { PagarCartao(carrinho, detalhePagamento); NotificaCliente(carrinho); } }