public bool Validate() { if (_passagemPendenteEdi.Adesao.PlanoId == (int)PlanoDePagamento.PosPagoEmpresarial) { return(_passagemPendenteEdi.Adesao.Cliente.StatusId == (int)StatusCliente.Ativo); } var obterSaldoAdesao = new ObterSaldoQuery(); var saldo = obterSaldoAdesao.Execute(_passagemPendenteEdi.Adesao.SaldoId); var limiteCredito = ObterLimiteDeCredito(); if (_passagemPendenteEdi.Adesao.Cliente.UltimaCobrancaPaga) { if (saldo + limiteCredito < _passagemPendenteEdi.Valor) { return(false); } } else { if (saldo < _passagemPendenteEdi.Valor) { return(false); } } return(true); }
public SaldoValidator() { _tagPracaBloqueadoLadoMensageriaValidator = new TagPracaBloqueadoLadoMensageriaValidator(); _transacaoPassagemIdAnteriorValidaQuery = new ObterTransacaoPassagemIdAnteriorValidaQuery(); _saldoQuery = new ObterSaldoQuery(); }