public override DadosRetornoSolicitacao CalcularTaxaCredito(SolicitacaoCredito solicitacaoCredito)
        {
            double valorPrincipal = solicitacaoCredito.ValorCredito;
            double taxaJuros      = Convert.ToDouble(solicitacaoCredito.PercentualTaxa);
            int    periodo        = solicitacaoCredito.QtdeParcelas * 12;

            // Converte taxa anual em taxa mensal
            double taxaJurosAnual = Utilitarios.ConverterTaxaAnualEmMensal(taxaJuros);

            double valorTotalFinanciamento = Utilitarios.ObterCalculoValorTotalJuros(valorPrincipal, taxaJurosAnual, periodo);
            double valorParcela            = Utilitarios.ObterValorParcelas(valorPrincipal, taxaJurosAnual, periodo);
            double valorJuros = Utilitarios.ObterValorJurosTotal(valorPrincipal, valorTotalFinanciamento);

            var result = new DadosRetornoSolicitacao
            {
                ValorJuros          = valorJuros,
                ValorJurosFormatado = valorJuros.ToString("N2"),

                ValorTotalComJuros          = valorTotalFinanciamento,
                ValorTotalComJurosFormatado = valorTotalFinanciamento.ToString("N2"),

                ValorParcela          = valorParcela,
                ValorParcelaFormatado = valorParcela.ToString("N2")
            };

            return(result);
        }
Exemple #2
0
        public static SolicitacaoCreditoStatus ProcessarSolicitacaoCreditoDireto(this SolicitacaoCredito solicitacaoCredito)
        {
            List <string> errosValidacao = solicitacaoCredito.ValidarSolicitacaoPadrao().ToList();

            SolicitacaoCreditoStatus result = new SolicitacaoCreditoStatus();

            result.Erros = errosValidacao.Any() ? errosValidacao : null;
            result.DadosRetornoSolicitacao = errosValidacao.Any() ? null : new TaxaAoMes().CalcularTaxaCredito(solicitacaoCredito);

            return(result);
        }
Exemple #3
0
        public static SolicitacaoCreditoStatus ProcessarSolicitacaoCreditoPessoaJuridica(this SolicitacaoCredito solicitacaoCredito)
        {
            List <string> errosValidacao = solicitacaoCredito.ValidarSolicitacaoPadrao().ToList();

            if (solicitacaoCredito.ValorCredito < valorMinimo)
            {
                errosValidacao.Add("Para o crédito de pessoa jurídica, o valor mínimo a ser liberado é de R$ 15.000,00");
            }

            SolicitacaoCreditoStatus result = new SolicitacaoCreditoStatus();

            result.Erros = errosValidacao.Any() ? errosValidacao : null;
            result.DadosRetornoSolicitacao = errosValidacao.Any() ? null : new TaxaAoMes().CalcularTaxaCredito(solicitacaoCredito);

            return(result);
        }