Skip to content

danhpaiva/integration-brasilapi-fipe-net-flurl-pdf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Integration.BrasilApi.Fipe.Net 🚗💨

.NET 10 Clean Architecture License: MIT

Sistema de consulta de preços da Tabela FIPE integrado à BrasilAPI. O projeto consome dados em tempo real, exibe em uma interface responsiva e gera automaticamente um relatório executivo em PDF na área de trabalho do usuário.

🚀 Tecnologias Utilizadas

  • C# 10 / .NET 10
  • ASP.NET Core MVC: Interface do usuário e roteamento.
  • Flurl.Http: Consumo fluente e resiliente da API REST.
  • QuestPDF: Motor de alta performance para geração de relatórios PDF.
  • xUnit: Testes de integração e unitários.
  • Bootstrap 5: Layout responsivo e moderno.

🏗️ Arquitetura

O projeto foi construído seguindo os princípios da Clean Architecture (Arquitetura Limpa), separado em camadas para garantir testabilidade e baixo acoplamento:

  1. Domain: Contém as interfaces (IFipeService) e modelos de dados (VeiculoFipeResponse).
  2. Infrastructure: Implementa o consumo externo com Flurl e a lógica de geração de documentos com QuestPDF.
  3. Web/API: Camada de apresentação MVC, controladores e configurações de Injeção de Dependência.
  4. Tests: Testes automatizados para validar a integração e a saída de arquivos.

📋 Pré-requisitos

🔧 Configuração e Execução

  1. Clone o repositório:

    git clone https://github.com/danhpaiva/integration-brasilapi-fipe-net-flurl-pdf.git
    
    cd integration-brasilapi-fipe-net-flurl-pdf
  2. Restaure as dependências:

    dotnet restore
  3. Execute o projeto Web:

    dotnet run --project Integration.BrasilApi.Fipe.Api/Integration.BrasilApi.Fipe.Api.csproj
  4. Acesse no navegador: https://localhost:7102

🧪 Testes

Para garantir que a integração e a geração de PDF estão funcionando corretamente:

dotnet test

Nota: Os testes configuram automaticamente a licença Community do QuestPDF e validam se o arquivo é criado corretamente no diretório de usuário.

📂 Relatório PDF Profissional

O sistema utiliza a biblioteca QuestPDF para gerar um documento executivo destinado ao cliente final. O fluxo ocorre da seguinte forma:

  1. Geração Automática: Assim que o serviço recebe o retorno da BrasilAPI, o PDF é construído em memória e persistido no disco.
  2. Localização: O arquivo é salvo na Área de Trabalho (Desktop) do usuário logado.
  3. Nomenclatura: O arquivo segue o padrão Fipe_CODIGO_FIPE.pdf.

Exemplo de execução via CLI para gerar o relatório:

dotnet run --project Integration.BrasilApi.Fipe.Api/Integration.BrasilApi.Fipe.Api.csproj

About

🖹 ~ API, .NET 10, MVC, Flurl.Http, QuestPDF, xUnit e Bootstrap

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published