public async Task <IActionResult> PutTaxaJuros(long id, TaxaJuros taxaJuros)
        {
            if (id != taxaJuros.Id)
            {
                return(BadRequest());
            }

            _context.Entry(taxaJuros).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TaxaJurosExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async Task <ActionResult <TaxaJuros> > PostTaxaJuros(TaxaJuros taxaJuros)
        {
            _context.TaxaJuros.Add(taxaJuros);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetTaxaJuros", new { id = taxaJuros.Id }, taxaJuros));
        }
Beispiel #3
0
        public ActionResult <string> ObterTaxaJuros(decimal valorInicial, int meses)
        {
            var juros = new TaxaJuros().Juros;

            var resultado = Math.Round(valorInicial * (decimal)Math.Pow(1 + juros, meses), 2, MidpointRounding.AwayFromZero);

            return(resultado.ToString());
        }
Beispiel #4
0
        public void CalculaJuros(decimal valorInicial, int tempo, TaxaJuros taxa)
        {
            var juros       = Convert.ToDecimal(valorInicial);
            var taxaDeJuros = Convert.ToDecimal(taxa);
            //Valor Final = Valor Inicial * (1 + juros) ^ Tempo

            //var valorFinal = valorInicial * 1 + juros * Math.Pow(tempo / 12);
        }
        public Double GetTaxaJuros()
        {
            Double    _taxa = 0.01;
            TaxaJuros taxa  = new TaxaJuros();

            taxa.Juros = _taxa;
            return(taxa.Juros);
        }
Beispiel #6
0
        public async Task <TaxaJuros> RetornaTaxaJuros()
        {
            TaxaJuros tx = new TaxaJuros {
                TaxaDeJuros = 0.01m
            };

            return(tx);
        }
Beispiel #7
0
        public void CalcularJurosCompostos_MesInvalido_DeveRetornarExcecao()
        {
            // Arrage
            var taxaJuros = new TaxaJuros(100, -2);

            // Act e Assert
            Assert.Throws <DomainException>(() => taxaJuros.CalcularJurosCompostos());
        }
        public void CriarTaxaJurosDeDoubleComSucesso(double valor)
        {
            var taxaJuros     = new TaxaJuros(valor);
            var valorEsperado = (decimal)valor;


            var cultureInfo = CultureInfo.GetCultureInfo("pt-BR");

            Assert.Equal(valorEsperado, taxaJuros.ToDecimal());
            Assert.Equal(valorEsperado.ToString("0.00", cultureInfo), taxaJuros.ToString());
        }
Beispiel #9
0
        public void CalcularJuros_JurosCompostosTheory_DeveCalcularComSucesso(decimal valorInicial, int meses, decimal valorFuturo)
        {
            // Arrage
            var taxaJuros = new TaxaJuros(valorInicial, meses);

            // Act
            var resultado = taxaJuros.CalcularJurosCompostos();

            // Assert
            Assert.Equal(valorFuturo, resultado);
        }
Beispiel #10
0
        public void CalcularJuros_JurosCompostos_DeveCalcularComSucesso()
        {
            // Arrage
            var taxaJuros = new TaxaJuros(100.00M, 5);

            // Act
            var resultado = taxaJuros.CalcularJurosCompostos();

            // Assert
            Assert.Equal(105.10M, resultado);
        }
Beispiel #11
0
        public void ConsultarJuros_CalcularJurosUmPorcento_DeveRetornarComSucesso()
        {
            // Arrage
            var taxaJuros = new TaxaJuros();

            // Act
            var resultado = taxaJuros.CalcularJurosUmPorcento();

            // Assert
            Assert.Equal(0.01M, resultado);
        }
Beispiel #12
0
        public void VerificaValorTaxa()
        {
            //Arrange //Valores esperados de retorno
            decimal valorTaxaEsperado = 0.01M;

            //Act //Ação de chamar os métodos
            TaxaJuros tx = new TaxaJuros();

            //Assert //Validar se o valor está vindo o esperado
            Assert.Equal(valorTaxaEsperado, tx.Juros);
        }
Beispiel #13
0
        public static decimal RetornaValorComJurosComposto(decimal valorInicial, int Tempo)
        {
            var TaxaJuros = new TaxaJuros().Valor;
            var valor     = valorInicial;

            for (int meses = 0; meses < Tempo; meses++)
            {
                valor += valor * TaxaJuros;
            }

            return(valor);
        }
        public decimal CalcularJurosCompostos(TaxaJuros taxaJuros)
        {
            var validationResult = new JurosCompostosValidation().Validate(taxaJuros);

            if (!validationResult.IsValid)
            {
                _notifications.Add(validationResult);
                return(0);
            }

            return(taxaJuros.CalcularJurosCompostos());
        }
Beispiel #15
0
        public TaxaJuros Get()
        {
            IJuros juros = new Juros();

            var taxaJuros = new TaxaJuros()
            {
                TaxaJurosDecimal     = juros.ValorTaxaJuros() / 100,
                TaxaJurosPercentagem = juros.ValorTaxaJuros()
            };

            return(taxaJuros);
        }
Beispiel #16
0
        public void TaxaJuros_Valid()
        {
            // arrange
            TaxaJuros objTaxaJuros = new TaxaJuros();
            decimal   esperado     = 0.01M;

            // act
            decimal atual = objTaxaJuros.getTaxaJuros();

            // assert
            Assert.Equal(esperado, atual);
        }
Beispiel #17
0
        public void Deve_Calcular_Juros_Compostos()
        {
            // Arrange
            var juros        = new TaxaJuros().Juros;
            var valorInicial = 100;
            var meses        = 5;
            var esperado     = (decimal)105.10;

            // Act
            var resultado = Math.Round(valorInicial * (decimal)Math.Pow(1 + juros, meses), 2, MidpointRounding.AwayFromZero);

            // Assert
            Assert.AreEqual(esperado, resultado);
        }
Beispiel #18
0
        public async Task <double> PegarTaxaJuros()
        {
            try
            {
                var       httpClient = new HttpClient();
                TaxaJuros taxajuros  = await httpClient.GetFromJsonAsync <TaxaJuros>(GetURITaxaJuros());

                //TaxaJuros taxajuros = await httpClient.GetFromJsonAsync<TaxaJuros>("http://localhost:7000/TaxaJuros");

                return(taxajuros.taxaJuros);
            }
            catch
            {
                throw;
            }
        }
        public async Task <TaxaJuros> GetTaxaJuros()
        {
            try
            {
                var taxaJuros = new TaxaJuros(TaxaJurosContants.ValorTaxaJuros);

                return(await Task.FromResult(taxaJuros));

                //Usando um banco de dados In-Memory
                //return await _context.TaxaJuros.SingleAsync();
            }
            catch (Exception)
            {
                throw new TaxaJurosException("Não foi possível recuperar a informação. Possível causa:\r\n -A conexão com a base de dados não foi estabelecida.");
            }
        }
        public TaxaJurosRepository()
        {
            using (var context = new TaxaJurosContext())
            {
                TaxaJuros objTaxaJuros = context.TaxaJuros.FirstOrDefault(x => x.Id == 1);
                if (objTaxaJuros == null)
                {
                    context.TaxaJuros.Add(new TaxaJuros()
                    {
                        Id        = 1,
                        ValorTaxa = 0.01m
                    });

                    context.SaveChanges();
                }
            }
        }
Beispiel #21
0
        public override bool Equals(object obj)
        {
            if (obj == null || obj.GetType() != GetType())
            {
                return(false);
            }

            if (ReferenceEquals(this, obj))
            {
                return(true);
            }

            var outro = obj as JurosCompostos;

            return
                (ValorInicial.Equals(outro.ValorInicial) &&
                 TaxaJuros.Equals(outro.TaxaJuros) &&
                 Meses.Equals(outro.Meses));
        }
        public double Post(double valorOriginal, int meses)
        {
            var taxaJuros = new TaxaJuros();

            using (var client = new HttpClient())
            {
                using (var response = client.GetAsync($"http://{HttpContext.Request.Host.Value}/api1/taxaJuros").Result)
                {
                    if (!response.IsSuccessStatusCode)
                    {
                        throw new HttpRequestException("Não foi possível obter a Taxa de Juros.");
                    }

                    string apiResponse = response.Content.ReadAsStringAsync().Result;
                    taxaJuros = JsonConvert.DeserializeObject <TaxaJuros>(apiResponse);
                }
            }

            return(new Juros().CalcularJuros(valorOriginal, meses, taxaJuros.TaxaJurosDecimal));
        }
Beispiel #23
0
 public TaxaJurosService(TaxaJuros taxaJuros)
 {
     _taxaJuros = taxaJuros;
 }
Beispiel #24
0
        public void taxaJurosTest1()
        {
            TaxaJuros taxaJuros = new TaxaJuros();

            taxaJuros.Should().Be(taxaJuros is ITaxaJuros, "Tipo/Interface incorreta");
        }
Beispiel #25
0
        public void taxaJurosTest2()
        {
            TaxaJuros taxaJuros = new TaxaJuros();

            taxaJuros.Get().Should().BeGreaterThan(0.0, "Taxa retornou valor menor ou igual a zero");
        }
Beispiel #26
0
        public void AoComararComOutroObjeto_DeveRetornarOValorEsperadoDeAcordoComATaxa(TaxaJuros taxaJuros,
                                                                                       bool resultadoEsperado)
        {
            var resultado = _taxa.Equals(taxaJuros);

            Assert.Equal(resultadoEsperado, resultado);
        }
Beispiel #27
0
 public TaxaJurosTests()
 {
     _taxa = new TaxaJuros(1);
 }
Beispiel #28
0
        public TaxaJuros Get()
        {
            TaxaJuros tx = new TaxaJuros();

            return(tx);
        }
Beispiel #29
0
        public TaxaJuros GetTaxaJuros()
        {
            TaxaJuros objTaxaJuros = taxaJurosRepository.GetFirstOrDefault();

            return(objTaxaJuros);
        }
 public IActionResult Get(double valorinicial, int meses)
 {
     return(Ok(Convert.ToDecimal(TaxaJuros.CalculaJuros(valorinicial, meses).ToString("0.00"))));
 }