Este projeto é um sistema de gestão ERP simples, desenvolvido com tecnologias modernas como:
- Blazor Server para a interface web
- ASP.NET Core (.NET 8)
- Entity Framework Core com PostgreSQL
- Docker para conteinerização e execução local
- ✅ Cadastro de clientes
- ✅ Cadastro de produtos
- ✅ Criação de pedidos com múltiplos produtos e clientes
- ✅ Listagem paginada de Pedidos
- ✅ Validações com FluentValidation
- ✅ Manipulação de exceções com middleware global
- ✅ API RESTful com Swagger
- ✅ Deploy local com Docker
- Clone o repositório
git clone https://github.com/seu-usuario/ERPPlus.git
cd ERPPlus- Suba o banco PostgreSQL com Docker
docker-compose up -dEsse comando sobe um container do PostgreSQL com as credenciais configuradas no
appsettings.json.
- Crie o banco e execute as migrations
cd ERPPlus.WebAPI
dotnet ef database update
⚠️ Se for a primeira vez, adicione o pacote do EF:
dotnet tool install --global dotnet-ef- Execute a aplicação
# No terminal da WebAPI
dotnet run --project ERPPlus.WebAPI
# Em outro terminal (para o Blazor Server)
dotnet run --project ERPPlus.BlazorUI| Projeto | URL |
|---|---|
| API (Swagger) | https://localhost:7237/swagger |
| Blazor UI | https://localhost:7052 |
Acesse o Swagger em https://localhost:7237/swagger para visualizar todos os endpoints da API.
GET /api/customerPOST /api/customerGET /api/productPOST /api/order- ...
ERPPlus/
├── ERPPlus.Domain/ # Entidades e interfaces
├── ERPPlus.Application/ # DTOs, Services e Validators
├── ERPPlus.Infrastructure/ # Repositórios e DbContext
├── ERPPlus.WebAPI/ # API ASP.NET Core
├── ERPPlus.BlazorUI/ # Interface web Blazor Server
└── docker-compose.yml # Infraestrutura local
O arquivo appsettings.json possui as configurações do banco
- ASP.NET Core 8
- Entity Framework Core
- PostgreSQL
- Docker
- Blazor Server
- FluentValidation
- Swagger
- Clean Architecture (Camadas separadas)
- Para resetar o banco de dados, execute:
docker-compose down -v- Para aplicar uma nova migration:
dotnet ef migrations add NomeDaMigration -p ERPPlus.Infrastructure -s ERPPlus.WebAPI -o Persistence/Migrations