Billing Management API é uma REST API para gerenciamento de serviços de faturamento, que cria e manipula esses faturamentos.
- Customer (Cliente): CRUD para gerenciar clientes.
- Produtos: CRUD para gerenciar produtos.
- Billing: CRUD para gerenciar billings.
- Billing (Faturamento):
- Inserção de registro de billing e billingLines no banco de dados local se cliente e produto existirem.
- Erro retornado se cliente ou produto estiverem ausentes durante a criação do registro.
- Integração com API Externa: Possibilidade de integração com outras APIs externas.
- Extração de Dados: Geração de arquivo .xlsx a partir dos dados do sistema.
- Autenticação JWT: Utilização de tokens JWT para autenticar e autorizar usuários.
Antes de começar, certifique-se de ter os seguintes requisitos instalados em sua máquina:
- .NET 8 SDK
- Um editor de código de sua preferência (ex: Visual Studio, Visual Studio Code)
- SQLite3 (já incluído no .NET Core)
-
Clone o repositório:
git clone https://github.com/Luiz-F-L-P-JR/Billing-Management.git
-
Abra o projeto:
Navegue até o diretório clonado e abra o projeto no seu editor de código.
-
Configuração do Banco de Dados:
Execute as migrações para criar o banco de dados local SQLite:
dotnet ef database update --project Billing-Management.Infra.Data
Isso aplicará as migrações necessárias para criar o banco de dados SQLite na pasta Billing-Management.Infrastructure.
-
Configuração do JWT:
Configure as chaves JWT no arquivo de configuração appsettings.json:
json { "JwtSettings": { "SecretKey": "sua_chave_secreta_aqui" } }
-
Executando a aplicação:
Para iniciar a API, utilize o comando:
dotnet run --project Billing-Management.Api
A API estará disponível nas portas de acesso configuradas no arquivo lauchsettings.json.
Explore os endpoints da API utilizando uma ferramenta como Postman ou Insomnia.
Contribuições são bem-vindas! Sinta-se à vontade para enviar pull requests e reportar issues.
Este projeto está licenciado sob a MIT License.