{"id":29040404,"url":"https://github.com/benicio227/manutec-version-mvc","last_synced_at":"2026-05-17T00:45:13.743Z","repository":{"id":297931848,"uuid":"994792411","full_name":"benicio227/Manutec-Version-MVC","owner":"benicio227","description":" 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.","archived":false,"fork":false,"pushed_at":"2025-06-19T11:12:59.000Z","size":16022,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-26T14:05:21.427Z","etag":null,"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"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/benicio227.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-02T13:43:12.000Z","updated_at":"2025-06-19T11:13:02.000Z","dependencies_parsed_at":"2025-06-08T12:42:56.921Z","dependency_job_id":null,"html_url":"https://github.com/benicio227/Manutec-Version-MVC","commit_stats":null,"previous_names":["benicio227/manutec-version-mvc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/benicio227/Manutec-Version-MVC","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/benicio227%2FManutec-Version-MVC","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/benicio227%2FManutec-Version-MVC/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/benicio227%2FManutec-Version-MVC/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/benicio227%2FManutec-Version-MVC/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/benicio227","download_url":"https://codeload.github.com/benicio227/Manutec-Version-MVC/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/benicio227%2FManutec-Version-MVC/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273555462,"owners_count":25126316,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-04T02:00:08.968Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asp-net-core","clean-architecture","clean-code","cqrs-pattern","ddd","entity-framework-core","fluentvalidation","mediator-pattern","mvc-architecture","razor-pages","repository-pattern","sql-server"],"created_at":"2025-06-26T14:05:12.234Z","updated_at":"2026-05-17T00:45:13.676Z","avatar_url":"https://github.com/benicio227.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sistema de Gestão de Manutenções Veiculares\n\nA **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.\n\nA 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.\n\n---\n\n## 🛠 Tecnologias e Padrões Utilizados\n\n- ✔️ **.NET 8** com ASP.NET Core MVC\n- ✔️ **Entity Framework Core** com banco de dados SQL Server\n- ✔️ **MediatR** para implementar CQRS (Command \u0026 Query Responsibility Segregation)\n- ✔️ **FluentValidation** para validações limpas e reutilizáveis\n- ✔️ **Arquitetura em camadas com DDD**\n- ✔️ **Swagger** (caso queira expor como API futuramente)\n- ✔️ **HostedService** para tarefas agendadas (background)\n- ✔️ **TempData + Bootstrap** para feedback visual\n- ✔️ **Rotas customizadas e tratamento de exceções**\n\n---\n\n## 📦 Funcionalidades\n\n- ✅ **Cadastro de Clientes**\n- ✅ **Cadastro de Veículos**, com busca por **placa**\n- ✅ **Registro e controle de manutenções**\n- ✅ **Cadastro de tipos de serviço**\n- ✅ **Usuários com diferentes papéis**: Administrador, Recepcionista, Mecânico\n- ✅ **Autenticação e Autorização**\n- ✅ **Busca por nome e placa**\n- ✅ **Feedback visual com TempData**\n- ✅ **Concluir manutenção com data e km**\n- ✅ **Geração de relatórios em PDF**\n- ✅ **Envio de E-mail informando próxima manutenção por quilometragem**\n\n---\n\n## 📁 Estrutura do Projeto\n\n```bash\nManutec.sln\n│\n├── Manutec.MVC               # Camada Web (Controllers, Views, Models, Reports, ExceptionHandler)\n├── Manutec.Application       # Commands, EventHandlers, Events, Helpers, Models, Queries, Services, Validators\n├── Manutec.Core              # Entities, Enums, Repositories\n├── Manutec.Infrastructure    # Auth, Migrations, Persistence, Repositories, Services\n```\n\n## 💻 Requisitos\n- Visual Studio 2022+ ou Visual Studio Code\n- .NET 8 SDK\n- SQL Server Express ou SQLite\n- (Opcional) MySQL caso queira adaptar\n\n## ▶️ Como rodar o projeto\n\n```bash\ngit clone git@github.com:benicio227/Manutec-Version-MVC.git\n```\n1 - Abra a solução Manutec.sln no Visual Studio\n2 - Configure a connection string no appsettings.Develoment.json\n3 - Aplique as migratinons:\n```bash\ndotnet ef database update\n```\n4 - Rode o projeto (F5 ou dotnet run)\n\n## 👨‍💻 Autor\nBenício Brandão\n- Desenvolvedor Backend C# | .NET\n- 📧 beniciobrandao@hotmail.com\n- 🔗 www.linkedin.com/in/benicio-brandao\n- 🐙 https://github.com/benicio227\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbenicio227%2Fmanutec-version-mvc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbenicio227%2Fmanutec-version-mvc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbenicio227%2Fmanutec-version-mvc/lists"}