예제 #1
0
        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);
        }