Mover negócio (override manual)¶
O que é¶
A única exceção ao princípio de board-read-only-orientado-a-eventos: "Mover para…" no menu ⋮ do card muda a etapa do negocio diretamente, sem passar por uma ação de negócio real e sem esperar um evento. Existe para destravar um card preso — quando o evento que deveria ter movido o negócio falhou, ficou perdido, ou a etapa real diverge do sistema.
Como funciona¶
- Submenu "Mover para…" lista as outras etapas do mesmo pipe em que o card está (não cruza para o outro pipe — isso é "Transitar", endpoint separado usado internamente pelos fluxos automáticos, sem UI própria de card).
POST /v2/comercial/negocios/:id/mover— aceita qualquer usuário logado (só exigeAuthGuard, não passa porRequerKanban/RBAC granular do Kanban). É deliberadamente mais aberto que as outras ações porque é uma ferramenta de destravar operação, não uma etapa do fluxo de negócio.- Permite regressão (voltar etapa), diferente das transições por evento (que em geral só avançam — aceite de proposta é forward-only, ver pipe-e-etapa).
- Gera uma movimentação do tipo
manualno histórico do card (ver notas-e-historico-do-negocio), distinguível de movimentaçõesautomatica.
Regras de negócio¶
⚠️ A documentar. Esta tela ainda não tem as regras de negócio levantadas do código.
O que entra aqui: invariante (o que nunca pode acontecer), permissão (quem pode fazer o quê), bloqueio (o que impede a ação e a mensagem que o usuário vê), cálculo (fórmula e arredondamento) e efeito colateral (o que mais muda quando isso acontece).
Regra só entra aqui com origem no código — arquivo e linha. Regra que alguém "acha que é assim" é pior que seção vazia, porque vira decisão de produto baseada em memória.
Onde vive no código¶
- Front:
pages/comercial/kanban/components/CardMenu.tsx(submenu "Mover para…"),use-acoes-card.ts(mover),api/negocios-api.ts(mover). - API:
POST :id/moveremnegocios.controller.ts→application/use-cases/mover-etapa-negocio.use-case.ts.
Relacionado¶
kanban-comercial · board-read-only-orientado-a-eventos · negocio · pipe-e-etapa · notas-e-historico-do-negocio · comercial
Histórico¶
- 2026-07-10: primeira ingestão, a partir do código atual (
CardMenu.tsx+ controller).