InvControl — Gestão de Inventário SAP
Sistema colaborativo para gestão de processos de inventário com importação Excel, contagem por múltiplos usuários e conciliação automática.
Como usar (operacional)
Administradores (criadores)
- Acessam
/login com e-mail e senha (criados pelo admin no painel da Lovable Cloud).
- Criam um inventário em Novo inventário, definem uma senha de acesso.
- Compartilham o ID + senha com os contadores.
- Importam a planilha SAP (.xlsx) na aba Importar base Excel.
- Acompanham na aba Conciliação e exportam o resultado final.
Contadores (sem cadastro)
- Acessam
/contar (link na tela de login).
- Informam ID do inventário, senha e seu nome.
- Vêem a lista de itens pendentes (sem ver os estoques SAP).
- Digitam a quantidade contada → Enter ou botão salvar.
- Itens com contagem = SAP somem da lista. Divergências ficam destacadas para recontagem.
Cadastrar usuários administradores
- Abra o painel Cloud → Users.
- Clique em Add user → defina email + senha.
- Não habilite signup público.
Padrão da planilha SAP
Colunas reconhecidas (acentos e espaços ignorados):
- Material, Texto breve material, Centro, Depósito
- Em contr.qualidade, Trânsito e TE, Bloqueado, Utilização livre
- Unid.medida básica, Lote, Tipo de material, Estoque especial, Nº estoque especial, Posição
Total SAP é calculado automaticamente: Em contr.qualidade + Trânsito e TE + Bloqueado + Utilização livre.
Build e deploy no Cloudflare Pages
npm install --legacy-peer-deps
npm run build
Configure no Cloudflare Pages:
- Build command:
npm run build
- Build output directory:
dist/client
- Node version:
20
Se o Cloudflare tentar usar Bun por detectar bun.lockb, remova esse arquivo no GitHub ou configure o projeto para usar npm nas configurações de build.
Arquitetura
- Frontend: React + TanStack Router (file-based) + Tailwind v4 + shadcn/ui
- Backend: Lovable Cloud (Supabase) — Postgres + RLS + Edge Functions
- Auth: Supabase Auth para criadores; contadores entram via Edge Function pública validando senha (bcrypt)
- Modelagem:
inventarios, itens (com total_sap calculada), contagens (chave única por item+nome)
Decisões de produto
- Contagens somam por nome distinto:
(item, nome) é único — refazer com mesmo nome sobrescreve; nomes diferentes somam.
- Recontagem automática: contagem ≠ Total SAP → item destacado em amarelo; contagem = Total SAP → item some.
- Formatação numérica:
1.250,000 (separador de milhar + 3 casas decimais) em todas as telas.
- Duplo-clique no “Total SAP” na conciliação expande/oculta os 4 estoques individuais.