コード例 #1
0
        public async Task <ActionResult <MovimentoResponse> > Aplicar([FromBody] MovimentoRequest request)
        {
            var fundo = await fundoService.ObterPorId(request.IdFundo);

            // validar se fundo existe
            if (fundo == null)
            {
                ModelState.AddModelError("IdFundo", "Fundo não encontrado!");

                return(NotFound(ModelState));
            }

            var movimento = await movimentoService.ObterPorIdFundoCpf(request.IdFundo, request.CpfCliente);

            if (movimento == null)
            {
                var valido = await movimentoService.ValidarValorMinimoInicial(request, fundo);

                if (!valido)
                {
                    ModelState.AddModelError("ValorMovimento", $"Valor mínimo da aplicação deve ser R$ {fundo.InvestimentoInicialMinimo}!");

                    return(BadRequest(ModelState));
                }
            }

            return(Ok(await movimentoService.Aplicar(request)));
        }
コード例 #2
0
        public async void RetornaVerdadeiroValorMinimoInicial()
        {
            //Arrange
            var request = new MovimentoRequest()
            {
                ValorMovimento = 6000,
            };

            FundoResponse fundo = new FundoResponse()
            {
                InvestimentoInicialMinimo = 1000
            };

            //Act
            var resultado = await movimentoService.ValidarValorMinimoInicial(request, fundo);

            //Assert
            Assert.True(resultado);
        }