Alteração de Atividades
Release Notes — Alterações nas Atividades: consumo de insumo e taxa de cobertura
Versão / Atividade: 032 — ajuste 0006 (Alteração nas Atividades) Público: usuário final da gráfica (operação/orçamentista) e responsável por homologar O que entra nesta entrega:
- Consumo de insumo vira uma lista — a atividade pode consumir vários itens, cada um sendo um grupo de insumos ou um item do estoque, escolhidos por um modal.
- Quantidade e base de cobrança saem do cadastro da atividade — passam a vir do cadastro do próprio grupo/insumo.
- Taxa de cobertura sai da atividade de impressão — volta a ser perguntada no orçamento.
1. O que mudou, em uma frase
O bloco Consumo de insumo da atividade deixou de ser "um grupo, uma quantidade e uma base" e virou uma lista de itens — e cada item pode ser um grupo de insumos ou um insumo do estoque, adicionado por um botão que abre um modal.
2. Por que isso é necessário
Três limitações apareceram ao cadastrar acabamentos de verdade:
Só cabia um item. Uma etapa como "Montar Kit" grampeia, embala em plástico e ainda usa cola. Com um único grupo por atividade, a saída era quebrar isso em três atividades — que não são três etapas na prática, são uma só.
Só cabia grupo, nunca o insumo direto. Grupo existe para quando há escolha no orçamento (o grupo "Grampos" tem vários tamanhos, e o orçamento decide qual entra). Quando não há escolha — a cola é sempre aquela cola —, o usuário era obrigado a criar um grupo de um item só, um cadastro que não serve para nada além de contornar a tela.
Quantidade e base estavam cadastradas duas vezes. A atividade perguntava "quanto" e "em que base", mas o grupo/insumo já declara sua unidade de medida. Duas fontes para a mesma informação é uma fonte a mais para se contradizerem.
E, separadamente: a taxa de cobertura (entregue no ajuste 0005) estava no lugar errado. Cobertura é característica do trabalho, não da etapa — a mesma "Impressão 4x0" atende tanto um chapado quanto um miolo de texto. Ela volta para o orçamento.
3. Como fica o cadastro de atividades
Em Produção > Atividades → Nova atividade (ou editando uma existente).
3.1 Consumo de insumo (tipo Acabamento)
O bloco agora tem uma lista e um botão Adicionar item:
┌─ Consumo de insumo ──────────────────────────────────┐
│ Grampos Remover │
│ Grupo de insumos — consumo em un │
│ │
│ Cola Branca 1kg Remover │
│ Item do estoque — consumo em g │
│ │
│ [ + Adicionar item ] │
└───────────────────────────────────────────────────────┘
Clicando em Adicionar item, abre um modal com dois passos:
Passo 1 — o que vai ser consumido?
| Opção | Quando usar |
|---|---|
| Grupo de insumos | Há escolha a fazer no orçamento (ex.: o grupo "Grampos", com vários tamanhos) |
| Item do estoque | Não há escolha: é sempre aquele insumo (ex.: "Cola Branca 1kg") |
Passo 2 — selecione
Abre a lista da opção escolhida (grupos de insumo ou insumos do estoque), com campo de busca. Cada linha mostra o nome e a unidade em que aquele item é consumido. Clicar no item fecha o modal e ele passa a aparecer no formulário.
Detalhes da tela:
- Itens já adicionados aparecem na lista do modal desabilitados, marcados como "já adicionado" — não somem, para o usuário não ficar procurando o que não está mais lá.
- O link ← Trocar tipo de item volta ao passo 1 sem fechar o modal.
- Cada item da lista do formulário tem Remover.
- A atividade pode ficar sem nenhum item — nem todo acabamento consome insumo.
3.2 O que sumiu da tela
| Campo | Onde estava | Por quê |
|---|---|---|
| Quantidade | Consumo de insumo | Vem da unidade de medida do grupo/insumo |
| Base de cobrança (por unidade / m² / metro linear) | Consumo de insumo | Idem |
| Taxa de cobertura | Atividade de Impressão | Volta a ser perguntada no orçamento |
💡 De onde vem "como se consome" agora. Da unidade de medida cadastrada no grupo de insumo (Insumos > Grupos) ou no insumo (Insumos). Grupo em
unconsome por unidade; emlinear, por metro linear; emg, por grama. É por isso que cada linha da lista mostra a unidade: é a informação que antes você digitava.
4. O que acontece com o que já estava cadastrado
| Cadastro | Comportamento |
|---|---|
| Atividades que consumiam um grupo | O grupo vira automaticamente o primeiro item da lista. Não precisa recadastrar nada. |
| Quantidade e base já cadastradas | São descartadas — a informação passa a vir do grupo/insumo. |
| Atividades de impressão com taxa de cobertura | A cobertura é removida do cadastro. Nada mais a fazer: ela volta a ser perguntada no orçamento. |
| Demais tipos de atividade | Nada muda. |
⚠️ Confira a unidade dos seus grupos e insumos. Como o "quanto/como" agora vem de lá, um grupo cadastrado com a unidade errada passa a afetar o consumo. Vale uma passada em Insumos > Grupos conferindo a unidade de cada um antes de rodar orçamentos.
5. Exclusão de insumo passa a ser bloqueada
Como a atividade agora pode apontar direto para um insumo do estoque, excluir esse insumo ficaria com a etapa sem o que consumir. Então:
- Tentar excluir um insumo usado por alguma atividade → bloqueado, com a lista das atividades que o usam.
- Nada é excluído em cascata: você tira o insumo daquelas atividades e repete a exclusão.
É exatamente o comportamento que os grupos de insumo já tinham.
6. Roteiro de testes (para homologação pelo cliente)
Passo 1 — Adicionar um grupo de insumos
- Produção > Atividades → Nova atividade, tipo Acabamento, subtipo Atividade de acabamento, escolha um acabamento.
- No bloco Consumo de insumo, clique em Adicionar item.
- ✅ Esperado: o modal pergunta entre Grupo de insumos e Item do estoque.
- Escolha Grupo de insumos. ✅ Esperado: abre a lista de grupos com busca, cada um mostrando a unidade de consumo.
- Clique em um grupo. ✅ Esperado: o modal fecha e o grupo aparece na lista do formulário, com origem e unidade.
Passo 2 — Adicionar um item do estoque
- Clique em Adicionar item de novo e escolha Item do estoque.
- Use a busca para filtrar. ✅ Esperado: a lista filtra pelo que foi digitado.
- Selecione um insumo. ✅ Esperado: entra na lista, marcado como Item do estoque.
Passo 3 — Vários itens na mesma atividade
- Com os dois itens acima na lista, salve a atividade.
- Reabra para editar. ✅ Esperado: os dois itens voltam, na mesma ordem.
Passo 4 — Não dá para repetir o mesmo item
- Clique em Adicionar item e vá até a lista de onde você já escolheu algo.
- ✅ Esperado: o item já adicionado aparece desabilitado, marcado como "já adicionado".
Passo 5 — Remover
- Clique em Remover em uma das linhas e salve.
- Reabra. ✅ Esperado: só o item restante volta.
Passo 6 — Sem quantidade nem base
- Olhe o bloco Consumo de insumo.
- ✅ Esperado: não existem os campos Quantidade e Base de cobrança. Cada linha mostra a unidade vinda do cadastro.
Passo 7 — Cobertura saiu da impressão
- Crie ou edite uma atividade do tipo Impressão.
- ✅ Esperado: não existe mais o campo Taxa de cobertura; sobram tipo de tinta e impressoras. Salvar funciona sem ela.
Passo 8 — Consumo é só do Acabamento
- Troque o tipo da atividade para Manual, Corte ou Empacotamento.
- ✅ Esperado: o bloco Consumo de insumo desaparece.
Passo 9 — Migração do que já existia
- Abra uma atividade que antes desta entrega consumia um grupo de insumo.
- ✅ Esperado: o grupo aparece como primeiro item da lista, já com a unidade.
Passo 10 — Insumo em uso não pode ser excluído
- Deixe uma atividade consumindo um item do estoque.
- Vá em Insumos e tente excluir esse insumo.
- ✅ Esperado: bloqueado, mostrando as atividades que o usam. Nada é excluído.
Passo 11 — Duplicar
- Na listagem de atividades, use Duplicar em uma atividade com itens de consumo.
- ✅ Esperado: a cópia vem com todos os itens.
Passo 12 — Listagem
- Veja a grid de Produção > Atividades.
- ✅ Esperado: a coluna antes chamada Grupo de insumo agora se chama Insumos e lista todos os itens consumidos.
7. Resumo das regras de negócio
- O consumo de insumo é uma lista, com zero ou mais itens.
- Cada item é um grupo de insumo ou um insumo do estoque — nunca os dois.
- O mesmo grupo (ou o mesmo insumo) não repete na mesma atividade.
- Consumo de insumo é exclusivo do tipo Acabamento. O Empacotamento continua consumindo papel (família de papéis), não insumo.
- Não há quantidade nem base no cadastro da atividade: como se consome vem da unidade de medida do grupo/insumo.
- Grupo = há escolha no orçamento. Insumo do estoque = já decidido no cadastro.
- Editar uma atividade reescreve a lista inteira: o que você tirar da tela deixa de ser consumido.
- Taxa de cobertura não é mais cadastrada na atividade de impressão.
- Insumo consumido por alguma atividade não pode ser excluído (como já valia para grupos).
8. Observações
- Continuação da 032 — ajuste 0004 (
RELEASE-NOTES-032-0004.md), que criou os tipos de atividade. - Este ajuste reverte a taxa de cobertura entregue no 032 — ajuste 0005 (
RELEASE-NOTES-032-0005.md): o campo deixa de existir no cadastro e volta para o orçamento. - O uso desses dados no cálculo é a atividade 032 completa (o motor de orçamento); esta entrega deixa o cadastro no formato certo.
9. Pendência conhecida
O formulário e o modal foram validados por compilação, tipagem e pela suíte automatizada (354 testes no backend, 83 no frontend, todos passando), e a migração dos dados foi conferida contra o banco de desenvolvimento real. A tela em si não foi percorrida clicando — o roteiro da seção 6 é o que fecha essa lacuna na homologação.