public IEnumerable <Parcela> Listar(ParcelaDTO Parcela) { return(base.Pesquisar(x => (x.Id == Parcela.Id || !Parcela.Id.HasValue) && (x.Numero == Parcela.Numero || !Parcela.Numero.HasValue) && (x.VendaId == Parcela.VendaId || !Parcela.VendaId.HasValue))); }
public CalculoFinanciamentoDTO SolicitarFinanciamento(int codCliente, int tipoFinanciamento, double valorSolicitado, int qdtParcela, DateTime dtaPrimeiroVencto) { CalculoFinanciamentoDTO calculoFinanciamentoDTO = new CalculoFinanciamentoDTO(); TipoFinanciamentoDTO tipoFinanciamentoDTO = new TipoFinanciamentoDTO(); tipoFinanciamentoDTO = tipoFinanciamentoRepositorio.ConsultarPorChave(tipoFinanciamento); calculoFinanciamentoDTO.Validacoes = Verificar(valorSolicitado, qdtParcela, dtaPrimeiroVencto, tipoFinanciamento); if (calculoFinanciamentoDTO.Validacoes.Count > 0) { calculoFinanciamentoDTO.Status = "Reprovado"; } else { calculoFinanciamentoDTO.Status = "Aprovado"; List <ParcelaDTO> parcelasDTO = new List <ParcelaDTO>(); double dVlrParcelaBruto = (valorSolicitado / qdtParcela); double dVlrParcelaJuros = (dVlrParcelaBruto * (tipoFinanciamentoDTO.PercentualTaxa / 100)); DateTime dtaVencimento = dtaPrimeiroVencto; // Gerando as Parcelas for (int i = 0; i < qdtParcela; i++) { ParcelaDTO parcelaDTO = new ParcelaDTO(); parcelaDTO.Id = 0; parcelaDTO.Numero = (i + 1); parcelaDTO.Valor = (dVlrParcelaBruto + dVlrParcelaJuros); parcelaDTO.Vencimento = (i == 0 ? dtaPrimeiroVencto : dtaVencimento); parcelasDTO.Add(parcelaDTO); dtaVencimento.AddMonths(1); } calculoFinanciamentoDTO.CodCliente = codCliente; calculoFinanciamentoDTO.TipoFinanciamento = tipoFinanciamento; calculoFinanciamentoDTO.QtdeParcelas = qdtParcela; calculoFinanciamentoDTO.DataContratacao = DateTime.Now; calculoFinanciamentoDTO.DataVencimento = (parcelasDTO).Max(s => s.Vencimento); calculoFinanciamentoDTO.TotalFinanciamento = (parcelasDTO).Sum(s => s.Valor); calculoFinanciamentoDTO.TotalJuros = (dVlrParcelaJuros + qdtParcela); calculoFinanciamentoDTO.Parcelas = parcelasDTO; } return(calculoFinanciamentoDTO); }
public List <ParcelaDTO> Excluir(ParcelaDTO parcelaDTO) { Parcela parcela = new Parcela(); parcela.Id = parcelaDTO.Id; parcela.Numero = parcelaDTO.Numero; parcela.Valor = parcelaDTO.Valor; parcela.Vencimento = parcelaDTO.Vencimento; parcela.Pagamento = parcelaDTO.Pagamento; parcelaRepositorio.Excluir(parcela); return(Consultar()); }
public ParcelaDTO ConsultarParcelaTemporaria(int idParcela) { var parcela = new ParcelaDTO(); using (var db = new FIPEContratosContext()) { try { parcela = new bParcela(db).ConsultarParcelaTemporaria(idParcela); } catch (Exception ex) { new bEmail(db).EnviarEmailTratamentoErro(ex, "ParcelaController-ConsultarParcelaTemporaria"); throw ex; } return(parcela); } }