public ParametrizacaoServiceTests()
 {
     _repository             = new FakeParametrizacaoRepository();
     _service                = new ParametrizaoService(_repository);
     _parametrizacaoValida   = new ParametrizacaoDTO(3, "S", 0.2, 10);
     _parametrizacaoInvalida = new ParametrizacaoDTO(0, "", 0, 0);
 }
Пример #2
0
 public DividaServiceTests()
 {
     _usuarioDTO               = new UsuarioDTO("123456", "12345678909", "Admin", "14999999999");
     _parametrizacaoDTO        = new ParametrizacaoDTO(3, "C", 0.2, 10.0);
     _usuarioRepository        = new FakeUsuarioRepository();
     _parametrizacaoRepository = new FakeParametrizacaoRepository();
     _repository               = new FakeDividaRepository();
     _usuarioService           = new UsuarioService(_usuarioRepository);
     _parametrizacaoService    = new ParametrizaoService(_parametrizacaoRepository);
     _service = new DividaService(_repository, _parametrizacaoRepository);
 }
        public async Task <IActionResult> AlterarParametrizacao(Guid id, [FromBody] ParametrizacaoDTO dto)
        {
            var retorno = await _service.AlterarParametrizacaoAsync(id, dto);

            if (retorno.Sucesso)
            {
                return(Ok(retorno));
            }

            return(BadRequest(retorno));
        }
        public async Task Deve_Alterar_Parametrizacao_Caso_Ja_Exista_Uma()
        {
            var parametrizacaoCriada = await _service.AlterarParametrizacaoAsync(null, _parametrizacaoValida);

            var parametrizacao = (Parametrizacao)parametrizacaoCriada.ObjRetorno;
            var id             = parametrizacao.Id;
            var maximoParcelas = parametrizacao.MaximoParcelas;

            var dto = new ParametrizacaoDTO(10, "S", 0.2, 10);

            var parametrizacaoAlterada = await _service.AlterarParametrizacaoAsync(id, dto);

            Assert.AreEqual(true, parametrizacaoAlterada.Sucesso && (((Parametrizacao)parametrizacaoAlterada.ObjRetorno).Id == id && ((Parametrizacao)parametrizacaoAlterada.ObjRetorno).MaximoParcelas != maximoParcelas));
        }
        public async Task <IRetorno> AlterarParametrizacaoAsync(Guid?id, ParametrizacaoDTO dto)
        {
            try
            {
                dto.Validate();

                if (dto.Invalid)
                {
                    return(new RetornoDTO(false, "Erro na requisição, verificar parametros de entrar", dto.Notifications));
                }

                if (id != null)
                {
                    var parametrizacao = await _repository.BuscarParametrizacaoAsync();

                    parametrizacao.AlterarMaximoParcelas(dto.MaximoParcelas);
                    parametrizacao.AlterarTipoJuros(dto.TipoJuros);
                    parametrizacao.AlterarPorcetagemJuros(dto.PorcertagemJuros);
                    parametrizacao.AlterarPorcentagemComissao(dto.PorcentagemComissao);

                    var parametrizacaoAlterada = await _repository.AlterarParametrizacaoAsync(parametrizacao);

                    if (parametrizacaoAlterada)
                    {
                        return(new RetornoDTO(true, "Parametrizacao salva com sucesso", parametrizacao));
                    }

                    return(new RetornoDTO(false, "Erro ao tentar salvar os dados na base", null));
                }


                var novaParametrizacao = new Parametrizacao(dto.MaximoParcelas, dto.TipoJuros, dto.PorcertagemJuros, dto.PorcentagemComissao);

                var parametrizacaoinserida = await _repository.InserirParametrizacaoAsync(novaParametrizacao);

                if (parametrizacaoinserida)
                {
                    return(new RetornoDTO(true, "Parametrizacao salva com sucesso", novaParametrizacao));
                }

                return(new RetornoDTO(false, "Erro ao tentar salvar os dados na base", null));
            }catch (Exception ex)
            {
                throw ex;
            }
        }