Visão geral do sistema
Documentação técnica e de negócio do sistema de gestão da oficina — Projeto Integrador · 2026
O que é este sistema
O Auto Mecânica Leme — Sistema de Gestão é um sistema interno de operação para uma oficina mecânica. Ele organiza o atendimento em uma cadeia única e simplificada:
flowchart TB
A["Cliente chega com o veículo"] --> B["Abertura da OS<br>(wizard em 5 passos)"]
B --> C["Diagnóstico e tarefas<br>(mecânicos designados)"]
C --> D{"Precisa de peça?"}
D -- sim --> E["Solicitação → validação → pedido → recebimento"]
E --> F["Execução das tarefas"]
D -- não --> F
F --> G["Pronta para entrega"]
G --> H["Entrega / retirada do veículo"]
H --> I["Histórico do cliente"]
A Ordem de Serviço (OS) é o centro do domínio: ela registra a queixa do cliente, o diagnóstico técnico, as tarefas, os funcionários responsáveis, as peças necessárias, o andamento e a entrega/retirada do veículo. Todos os demais registros se relacionam com a OS quando fazem parte de um atendimento.
Resumo do produto
4 áreas
clientes, funcionários, OS e pedidos de peças
4 perfis
admin, secretaria, mecânico-chefe e mecânico
12 status
ciclo completo da OS, de recebida a entregue
Áudio
tarefas podem ser anotadas por gravação de voz
Tecnologias utilizadas
PHP 8 + procedural
Código em PHP puro, sem framework, com PDO para acesso ao banco.
MySQL / MariaDB
Banco relacional com schema normalizado e chaves estrangeiras.
Bootstrap 5 + CSS próprio
Design system com tema claro/escuro em css/style.css.
Lucide Icons
Ícones carregados via CDN e usados em botões, menus e tabelas.
$conn.
Como cada página carrega
Toda página do sistema obedece a esta sequência de inclusões, nesta ordem:
flowchart LR
A["includes/sessao.php<br>sessão, login, CSRF, roles"] --> B["config/conexao.php<br>PDO + helpers"]
B --> C["exigir_papel()<br>autorização no backend"]
C --> D["includes/header.php<br>HTML, CSS, Lucide, sidebar"]
D --> E["Conteúdo da página<br>tabelas e formulários"]
E --> F["includes/footer.php<br>Bootstrap, jQuery, JS"]
Estrutura de pastas
mecanica/
├── index.php # Dashboard por papel
├── api/ # Endpoints JSON (notificações, veículos)
├── config/
│ ├── conexao.php # Conexão PDO e helpers de escaping/moeda
│ └── empresa.php # Dados visuais da empresa
├── css/style.css # Design system (claro/escuro)
├── includes/
│ ├── base_url.php # Caminho base automático (raiz/subpasta)
│ ├── footer.php # Scripts finais
│ ├── header.php # Cabeçalho, CSS, Bootstrap, Lucide
│ ├── mensagens.php # Mensagens flash (sucesso/erro/aviso)
│ ├── notificacoes.php # Helpers de notificação por usuário/perfil/OS
│ ├── sessao.php # Sessão, CSRF e controle de papéis
│ └── sidebar.php # Navegação por papel
├── js/
│ └── main.js # Máscaras, wizard, áudio, notificações
├── pages/
│ ├── auth/ # Login, logout e perfil ("Meus dados")
│ ├── clientes/ # CRUD + detalhe do cliente (histórico)
│ ├── funcionarios/ # CRUD de funcionários/usuários
│ ├── veiculos/ # CRUD de veículos
│ ├── ordens_servico/ # Criação (wizard), fila, detalhe e processamento
│ ├── pedidos_pecas/ # Solicitação, validação, pedido e recebimento
│ ├── orcamentos/ # Documento comercial (admin/secretaria/chefe)
│ ├── pecas/ # Módulo legado restrito (catálogo/estoque)
│ ├── servicos/ # Módulo legado fora da navegação principal
│ └── agendamentos/ # Módulo legado fora da navegação principal
├── sql/ # Schema original, migrações e banco de teste
└── uploads/audio/ # Áudios gravados nas tarefas das OS
mecanica-docs/, fora do repositório, e não exige login para ser lida.
O arquivo DOCUMENTACAO_SISTEMA.md na raiz do projeto é o mesmo conteúdo desta documentação
em Markdown, útil para anexar ao relatório do Projeto Integrador.