O Credit Application System é uma API REST desenvolvida em Spring Boot e Kotlin para uma empresa de empréstimo realizar análise de solicitações de crédito. Essa API fornece funcionalidades para cadastrar clientes, gerenciar perfis, cadastrar e visualizar solicitações de empréstimo.
Este projeto foi desenvolvido como parte de um desafio proposto pela escola DIO (Digital Innovation One).
- Kotlin
- Spring Boot
- Gradle
- H2 Database (banco de dados em memória)
- Flyway (controle de versão do banco de dados)
- Swagger
A API fornece as seguintes funcionalidades:
- Cadastrar
- Editar cadastro
- Visualizar perfil
- Deletar cadastro
✅ Desafio 1: o máximo de parcelas permitido será 48
✅ Desafio 2 : data da primeira parcela deverá ser no máximo 3 meses após o dia atual
-
Cadastrar
-
Listar todas as solicitações de empréstimo de um cliente
-
Visualizar um empréstimo
- Certifique-se de ter o Kotlin e o Gradle instalados na sua máquina.
- Clone este repositório.
- Navegue até o diretório raiz do projeto.
- Execute o comando
gradle bootRun
para iniciar a aplicação.
Para facilitar o desenvolvimento e interagir com o projeto, recomendo o uso de uma IDE, como o IntelliJ IDEA ou o Eclipse. Abra o projeto na sua IDE preferida para ter acesso a recursos avançados de depuração e execução simplificada.
Você pode acessar o banco de dados ou testar testar os endpoints da API utilizando o Postman ou o Swagger:
- Para acessar o banco de dados basta acessar a URL http://localhost:8080/h2-console digitando o usuário e a senha, ambas definidas como admin
- Para acessar a documentação e testar a API de forma interativa, execute o projeto e acesse a URL http://localhost:8080/swagger-ui/index.html
- Alternativamente, você pode utilizar o Postman para enviar requisições HTTP aos endpoints da API.
Foram implementados testes unitários e de integração para as classes construídas. Execute o comando gradle test
para rodar os testes.
O projeto utiliza o banco de dados H2 para armazenar os dados. As migrações do banco de dados são gerenciadas pelo Flyway.