API para gerenciamento de apólices de seguro, incluindo processamento de arquivos CSV e integração com Kafka para processamento assíncrono de pagamentos.
- Java 17
- Spring Boot
- PostgreSQL
- Kafka
- Docker
- OpenCSV
insurance-api/
│-- src/
│ ├── main/
│ │ ├── java/com/insurance/api/
│ │ │ ├── controller/ # Controllers da API
│ │ │ ├── service/ # Lógica de negócios
│ │ │ ├── model/ # Entidades do banco
│ │ │ ├── repository/ # Repositórios JPA
│ │ │ ├── messaging/ # Integração com Kafka
│ │ │ ├── utils/ # Utilitários e validações
│ │ ├── resources/
│ │ │ ├── application.yml # Configuração do Spring Boot
│-- docker-compose.yml # Configuração do ambiente Docker
│-- Insurance API.postman_collection.json # Collection do Postman para testes
│-- README.md
- Docker e Docker Compose
- JDK 17
- Maven
docker-compose up -d
mvn spring-boot:run
A API estará disponível em:
👉 http://localhost:8080
GET /apolices→ Lista todas as apólicesGET /apolices/{id}→ Busca uma apólice por IDPOST /apolices→ Cria uma nova apólicePUT /apolices/{id}→ Atualiza uma apóliceDELETE /apolices/{id}→ Remove uma apólice
POST /csv/upload→ Envia um arquivo CSV para processamento
POST /parcelas/{id}/processar-pagamento?formaPagamento=CARTAO
→ Envia um pagamento para processamento via Kafka
Recomenda-se o uso da collection do Postman para testar a API:
- Importar a collection localizada no projeto:
./Insurance API.postman_collection.json - Configurar o ambiente (se necessário).
- Executar os testes.