GESTÃO DE OFICINAS — Controle de Vendas, Estoque e Margem para Oficinas Mecânicas
🔧 Sobre o Projeto
O Gestão de Oficinas nasceu para resolver um problema que quase toda oficina mecânica conhece de perto: saber exatamente o que tem em estoque, quanto se vendeu e, principalmente, quanto se ganhou em cada venda.
Na rotina de balcão, a peça entra por um fornecedor, sai numa venda e o controle acaba se perdendo entre cadernos, planilhas e memória. O sistema centraliza esse fluxo: o mecânico cadastra as peças vinculadas aos seus fornecedores, registra a venda e já enxerga a margem de lucro na hora, calculada a partir do valor de compra e do valor de venda. O estoque é atualizado automaticamente a cada movimentação.
No Gestão de Oficinas, você encontra:
Cadastro de peças e fornecedores — cada peça fica vinculada ao seu fornecedor, com valor de compra e valor de venda registrados;
Vendas com margem em tempo real — no momento do registro, o sistema mostra o lucro daquela venda, sem cálculo manual;
Estoque sempre atualizado — toda venda dá baixa automática, e as entradas de mercadoria repõem o saldo;
Histórico completo de vendas — consulta das vendas registradas, com os itens, valores e resultado de cada uma;
Dashboards e indicadores — relatórios visuais com comparativos diários, semanais e mensais de faturamento, volume de vendas e lucratividade.
O objetivo é dar ao dono da oficina uma leitura clara do negócio: o que vende mais, o que dá mais margem e para onde o dinheiro está indo.
Gestão de Oficinas — estoque sob controle, venda registrada e margem na tela.
🏗️ Arquitetura e Tecnologias
O projeto foi desenvolvido com arquitetura limpa, separação clara entre frontend e backend e containerização completa, garantindo previsibilidade no deploy e facilidade de manutenção.
🧱 Organização do Código
A aplicação segue os princípios de Clean Architecture, com camadas bem delimitadas:
Domínio — entidades e regras de negócio (peça, fornecedor, venda, estoque) isoladas de framework e de banco de dados;
Casos de uso — a orquestração das regras, como o cálculo de margem e a baixa de estoque na venda;
Infraestrutura — repositórios, persistência com TypeORM e integrações externas;
Apresentação — controllers e módulos do NestJS na API, páginas e componentes do Next.js na interface.
Com esse desenho, as regras de negócio permanecem testáveis e independentes dos detalhes de infraestrutura.
🔧 Stack Tecnológica
Frontend
Next.js (App Router)
React
TypeScript
Tailwind CSS
Dashboards e gráficos para os indicadores de vendas e lucratividade
Backend
NestJS
TypeScript
API REST modularizada por contexto de negócio
Autenticação e controle de acesso
Banco de Dados
PostgreSQL
TypeORM (entidades, migrations e repositórios)
Containerização
Docker & Docker Compose — frontend, API e banco em containers, com o mesmo ambiente do desenvolvimento à produção
Infraestrutura (AWS)
EC2
Hospedagem da aplicação containerizada (frontend e API) e do banco de dados PostgreSQL;
Amazon S3
Armazenamento de arquivos e assets estáticos;
Amazon Route 53
Gerenciamento do domínio e das entradas de DNS da aplicação.
💰 Vendas e Margem de Lucro
O cálculo de margem é o coração do sistema. A cada item lançado em uma venda:
O sistema recupera o valor de compra registrado no cadastro da peça;
Compara com o valor de venda praticado no atendimento;
Apresenta o lucro do item e o lucro total da venda antes mesmo da finalização;
Consolida esses valores nos relatórios, permitindo identificar quais peças e quais fornecedores realmente sustentam o resultado da oficina.
📦 Controle de Estoque
O estoque é movimentado automaticamente pelas operações do dia a dia:
Entrada — recebimento de peças vinculadas ao fornecedor;
Saída — baixa automática a cada venda registrada;
Saldo atual — consulta da quantidade disponível por peça, evitando venda de item indisponível e compras desnecessárias.
📊 Relatórios e Indicadores
O módulo de relatórios entrega a visão gerencial do negócio:
Comparativo diário — movimento do dia, faturamento e margem gerada;
Comparativo semanal — evolução ao longo da semana e identificação dos dias de maior movimento;
Comparativo mensal — consolidação do mês, útil para planejamento de compras e negociação com fornecedores;
Dashboards — indicadores de faturamento, lucro, volume de vendas e desempenho por peça e por fornecedor.
👨💻 Autor
Desenvolvido por Dev Luan Paiva.
📄 Licença
Este projeto é de uso privado/organizacional. Ajuste esta seção conforme a licença desejada.