https://github.com/benicio227/manutec-version-mvc
Manutec é um sistema de gerenciamento de oficinas mecânicas desenvolvido em .NET 8 com arquitetura em camadas e princípios de DDD. A aplicação permite controlar veículos, manutenções, serviços e clientes de forma prática, além de oferecer filtros, autenticação por perfil e geração de relatórios.
https://github.com/benicio227/manutec-version-mvc
asp-net-core clean-architecture clean-code cqrs-pattern ddd entity-framework-core fluentvalidation mediator-pattern mvc-architecture razor-pages repository-pattern sql-server
Last synced: 5 months ago
JSON representation
Manutec é um sistema de gerenciamento de oficinas mecânicas desenvolvido em .NET 8 com arquitetura em camadas e princípios de DDD. A aplicação permite controlar veículos, manutenções, serviços e clientes de forma prática, além de oferecer filtros, autenticação por perfil e geração de relatórios.
- Host: GitHub
- URL: https://github.com/benicio227/manutec-version-mvc
- Owner: benicio227
- Created: 2025-06-02T13:43:12.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-06-19T11:12:59.000Z (7 months ago)
- Last Synced: 2025-06-26T14:05:21.427Z (7 months ago)
- Topics: asp-net-core, clean-architecture, clean-code, cqrs-pattern, ddd, entity-framework-core, fluentvalidation, mediator-pattern, mvc-architecture, razor-pages, repository-pattern, sql-server
- Language: C#
- Homepage:
- Size: 15.3 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Sistema de Gestão de Manutenções Veiculares
A **Manutec** é uma aplicação web desenvolvida com **.NET 8**, focada no gerenciamento de oficinas mecânicas. O projeto adota uma arquitetura em camadas e os princípios do **Domain Driven Design (DDD)**, permitindo o controle completo de clientes, veículos, serviços e manutenções.
A solução oferece **CRUD completo** para usuários, clientes, veículos, serviços e manutenções, além de recursos como filtros, geração de relatórios e autenticação por perfil. Ideal para oficinas que desejam modernizar sua gestão de forma simples e eficaz.
---
## 🛠 Tecnologias e Padrões Utilizados
- ✔️ **.NET 8** com ASP.NET Core MVC
- ✔️ **Entity Framework Core** com banco de dados SQL Server
- ✔️ **MediatR** para implementar CQRS (Command & Query Responsibility Segregation)
- ✔️ **FluentValidation** para validações limpas e reutilizáveis
- ✔️ **Arquitetura em camadas com DDD**
- ✔️ **Swagger** (caso queira expor como API futuramente)
- ✔️ **HostedService** para tarefas agendadas (background)
- ✔️ **TempData + Bootstrap** para feedback visual
- ✔️ **Rotas customizadas e tratamento de exceções**
---
## 📦 Funcionalidades
- ✅ **Cadastro de Clientes**
- ✅ **Cadastro de Veículos**, com busca por **placa**
- ✅ **Registro e controle de manutenções**
- ✅ **Cadastro de tipos de serviço**
- ✅ **Usuários com diferentes papéis**: Administrador, Recepcionista, Mecânico
- ✅ **Autenticação e Autorização**
- ✅ **Busca por nome e placa**
- ✅ **Feedback visual com TempData**
- ✅ **Concluir manutenção com data e km**
- ✅ **Geração de relatórios em PDF**
- ✅ **Envio de E-mail informando próxima manutenção por quilometragem**
---
## 📁 Estrutura do Projeto
```bash
Manutec.sln
│
├── Manutec.MVC # Camada Web (Controllers, Views, Models, Reports, ExceptionHandler)
├── Manutec.Application # Commands, EventHandlers, Events, Helpers, Models, Queries, Services, Validators
├── Manutec.Core # Entities, Enums, Repositories
├── Manutec.Infrastructure # Auth, Migrations, Persistence, Repositories, Services
```
## 💻 Requisitos
- Visual Studio 2022+ ou Visual Studio Code
- .NET 8 SDK
- SQL Server Express ou SQLite
- (Opcional) MySQL caso queira adaptar
## ▶️ Como rodar o projeto
```bash
git clone git@github.com:benicio227/Manutec-Version-MVC.git
```
1 - Abra a solução Manutec.sln no Visual Studio
2 - Configure a connection string no appsettings.Develoment.json
3 - Aplique as migratinons:
```bash
dotnet ef database update
```
4 - Rode o projeto (F5 ou dotnet run)
## 👨💻 Autor
Benício Brandão
- Desenvolvedor Backend C# | .NET
- 📧 beniciobrandao@hotmail.com
- 🔗 www.linkedin.com/in/benicio-brandao
- 🐙 https://github.com/benicio227