public Uri IncluirPagamentoDoAnuncio(Anuncio anuncio) { Uri uri = null; Pagamento pagamento = new Pagamento(anuncio); if (anuncio == null || anuncio.Plano == null) { throw new ArgumentNullException(); } if (!anuncio.Plano.Ativo) { throw new Exception("Plano inválido"); } pagamento.Status = StatusPagamento.AguardandoPagamento; repositorioPagamento.Incluir(pagamento); if (anuncio.Plano.Valor == 0) { this.Pagar(pagamento); } else { uri = this.servicoPagamentoPagSeguro.RequisitarPagamento(pagamento); } return uri; }
public void Cancelar(Pagamento pagamento) { if (pagamento == null || pagamento.Anuncio == null) { throw new ArgumentNullException(); } pagamento.Status = StatusPagamento.Cancelado; this.repositorioPagamento.Atualizar(pagamento); }
public void EnviarParaAnalise(Pagamento pagamento) { if (pagamento == null || pagamento.Anuncio == null) { throw new ArgumentNullException(); } pagamento.Status = StatusPagamento.EmAnalise; this.repositorioPagamento.Atualizar(pagamento); }
public void Pagar(Pagamento pagamento) { if (pagamento == null || pagamento.Anuncio == null) { throw new ArgumentNullException(); } pagamento.Status = StatusPagamento.Pago; pagamento.Data = DateTime.Now; this.repositorioPagamento.Atualizar(pagamento); }