public PagamentoViewModel Adicionar(PagamentoViewModel pagamentoViewModel) { var pagamento = PagamentoAdapter.ToPagamento(pagamentoViewModel); if (pagamento.MeioPagamento == MeioPagamento.Cartao) { pagamento.AssociarCartao(PagamentoAdapter.ToPagamentoCartao(pagamentoViewModel)); } pagamento = _pagamentoService.Adicionar(pagamento); if (Commit()) { // Evento para validar se o aluno atingiu categoria premium DomainEvent.Raise(new AlunoPremiumEvent(pagamento.AlunoId)); } return(pagamentoViewModel); }