Rendimento de Clientes

License Build Status SonarQube Coverage


ProjetoInstalação e UtilizaçãoTestes e CoberturaBuild e Análise do códigoServiços disponíneisLicença

-------

Projeto

Serviço de API Rest para cálculo de rendimento de clientes. Pode ser consumido por um módulo de um sistema, onde é possível cadastrar um cliente e seus endereços, calcular o rendimento de um cliente e pesquisar os rendimentos.

Instalação

Back-end: Este projeto utiliza Maven, para build da aplicação e gerenciamento das dependências. Foi construído utilizando a stack do WildFly Swarm. Para a persistência dos dados foi utilizado o banco H2, pelo fato de ser executado em memória e não necessita de configuração por parte do usuário. Efetuar o download do projeto e executar o build através da linha de comando na pasta raiz do projeto ou pela IDE de desenvolvimento:

mvn clean wildfly-swarm:run

Front-end: Utiliza páginas HTML e Bootstrap na versão 4 como framework para a criação de layouts. Para estilo dos layouts foi utilizado Css. Para os eventos das páginas foi utilizado AngularJS na versão 1.6 e Jquery. Como linguagem de programação front-end foi utilizado JavaScript.

Após inicializar o servidor com wildfy-swarm é possível visualizar a página em:

http://localhost:8080/#!/clientes

Testes e Cobertura

Este projeto utiliza JUnit 5 para testes unitários e de integração. Você pode executar os testes a qualquer momento. Tudo o que você precisa fazer é executar a linha de comando na pasta raiz do projeto ou pela IDE de desenvolvimento:

mvn clean test

Build e Análise

  • O build remoto do projeto pode ser visualizado com: Travis CI.
  • A análise de código pode ser visualizada com: SonarCLoud.

Serviços

Serviços disponíneis para utilização na aplicação.

Criar cliente: @POST: http://localhost:8080/api/clientes

{  
   "enderecos":[  
      {  
         "logradouro":"Rua 001",
         "numero":"123",
         "bairro":"Bairro 001",
         "cidade":"Cidade 001",
         "estado":"Estado 001",
         "complemento":"Complemento"
      }
   ],
   "nome":"Pedro",
   "rendimentoMensal":900.22,
   "risco":"C"
}

Lista de Clientes: @GET: http://localhost:8080/api/clientes

Consulta por Cliente: @GET: http://localhost:8080/api/clientes/{id}

Atualizar um Cliente: @PUT: http://localhost:8080/api/clientes/{id}

{  
   "enderecos":[  
      {  
         "logradouro":"Rua 002",
         "numero":"1234",
         "bairro":"Bairro 002",
         "cidade":"Cidade 002",
         "estado":"Estado 002",
         "complemento":"Complemento 2"
      }
   ],
   "id":1,
   "nome":"Maria",
   "rendimentoMensal":800.00,
   "risco":"C"
}

Remover um Cliente: @DELETE: http://localhost:8080/api/clientes/{id}

Simular Empréstimo do Cliente: @PUT: http://localhost:8080/api/clientes/simular-emprestimo

{  
   "cliente":{  
      "id":1,
      "nome":"Pedro",
      "rendimentoMensal":900.22,
      "risco":"C",
      "enderecos":[  
         {  
            "id":1,
            "logradouro":"Rua 002",
            "numero":1234,
            "bairro":"Bairro 002",
            "cidade":"Cidade 002",
            "estado":"Estado 002",
            "complemento":"Complemento 2"
         }
      ]
   },
   "valorSolicitado":1200,
   "valorSimulacao":null,
   "meses":12
}

Licença

Este projeto está licenciado sob os termos da licença do MIT. Veja o arquivo LICENÇA.