fix: PDF/DOCX da validacao mostram todos os status + controle do que entra no documento #85
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/validation-export-all-statuses"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
O que é
Corrige o defeito reportado na validação de cliente em dev (Validação #7) e adiciona o controle pedido pelo dono do produto sobre o que aparece no documento.
Bug
O PDF e o DOCX só desenhavam itens Aprovado e Ressalva. Itens Reprovado e Não aplicável (que o qa-project já enviava, porque status é texto livre) sumiam do documento inteiro, texto e imagens. Agora há uma seção por status, com observação e imagens com legenda:
Itens aprovados (tabela, como antes) · Itens reprovados (só se houver) · Ressalvas (sempre; "Nada consta." sem pendência) · Itens não aplicáveis (só se houver) · Outros itens (qualquer status fora dos quatro: nunca some).
A tela passa a oferecer os 4 status e mostra a observação para todos os que não são Aprovado; badge de reprovados no cabeçalho.
Documento só com aprovados/ressalvas sai igual ao de antes.
Controle do que entra no documento (configuração salva)
PDF, DOCX e o que é enviado ao HubSpot usam sempre a mesma versão definida na tela, sem apagar nada do registro:
include_images (validação): tira todas as imagens.
include_in_document (item): tira o item e as imagens dele.
include_in_document (imagem): tira só aquela imagem (PUT /api/images/{id} agora também aceita esse campo).
Tudo true por padrão (registros existentes continuam completos). null num PUT = não mexer. A nota do HubSpot passa a contar só os itens do documento.
Tela: card "Documento gerado" (incluir imagens), checkbox por item e por imagem.
Migration
7f155a36dd9e: 3 colunas booleanas NOT NULL com default 1 (images, technical_validation_items, technical_validations). Round-trip, alembic check e restore drill ok; heads do CI/smoke atualizados.
Decisão registrada
status continua texto livre na API (sem 422 para valor desconhecido, para não quebrar clientes); a UI oferece os 4. Escolha de produto: seções próprias.
Verificação
Backend: 313 passed (11 testes novos de seções/flags/HubSpot). Frontend: tsc limpo, lint sem erros, 178 testes, build ok.
Conferido no navegador (status, checkboxes, persistência do item excluído).
🤖 Generated with Claude Code