Skip to content

feat(fiscal): tela de documentos em lote (NF-e e adiantamentos) com DANFE, XML e boleto - #168

Merged
malacration merged 5 commits into
malacration:mainfrom
franciscoMarcello:feat/nota-fiscal-lote
Oct 26, 2026
Merged

malacration merged 5 commits into
malacration:mainfrom
franciscoMarcello:feat/nota-fiscal-lote

Conversation

@franciscoMarcello

@franciscoMarcello franciscoMarcello commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

O que muda

Tela nova Financeiro > Notas e XML em lote (/financeiro/notas-xml-lote, perfil nota_fiscal_lote).

Lista

  • Mostra NF-e e adiantamentos de venda futura, uma linha por parcela: Parcela (ex.: 2/5), Vencimento e Valor da parcela. Também traz status SAP e SEFAZ e a forma de pagamento como "Nome (código)".
  • Boleto da BankPlus por parcela: colunas "Boleto (BankPlus)" (status · situação, por exemplo "Confirmado · Normal") e "Nosso número".
  • Filtros: emissão, vencimento (por parcela), nº da NF, filial, cliente, vendedor, status, categoria, forma de pagamento (inclui as inativas e "Sem forma de pagamento") e boleto (BankPlus) (status ou "Sem boleto").

Lote montado a mão

  • O lote é de documentos: marcar qualquer parcela põe o documento no lote e marca todas as linhas dele.
  • Seleção: sobrevive à troca de filtro. "Adicionar todas do filtro" pede a lista por documento, até 200.
  • Armazenamento: fica no sessionStorage, guardado por usuário. A versão 2 tem chave tipo + DocEntry, e um lote antigo na versão 1 continua sendo lido.

Importar planilha do banco (novo)

  • Botão: recebe o .xlsx da "Consulta de títulos" do BB. O backend acha o documento de cada título pelo nosso número.
  • Resultado: os documentos entram no lote. As linhas que pedem atenção ficam numa tabela abaixo da lista: Divergente, Não encontrado ou Fora da tela.
  • Travas: enquanto importa, o lote, o download e a troca esperam, e a importação espera o "adicionar todas" pendente.

Download

  • Gera um zip com DANFE, XML, boleto e, opcionalmente, Contrato (VF), o PDF do contrato de venda futura de cada adiantamento.
  • Logo do contrato: é o logo do deploy (LogoService), enviado só quando "Contrato" está marcado.
  • Guardas: um lote que não geraria arquivo nenhum nem vai ao servidor. A contagem do sucesso desconta documento sem arquivo, e os avisos separam erro, sem boleto e adiantamento sem arquivo.

Troca da forma de pagamento do lote

  • Confirmação: conta só os documentos que serão trocados e avisa quantas NF de venda futura do padrão antigo ficam de fora; o SAP não deixa trocar a forma delas.
  • Resultado: mostra por documento o que pede atenção: erro, sem confirmação, pendência, não permitido e boleto ativo.
  • Sem resposta do backend (status 0 ou ≥502): avisa que parte dos documentos pode ter sido gravada e recarrega a lista.

Menu: a rota tem api:get:/nota-fiscal-lote para o menu por permissão, e role:nota_fiscal_lote no Financeiro.

Testes

  • Specs da tela e dos serviços do lote: 90 verdes. Cobrem os filtros e as colunas de forma e de boleto, as linhas por parcela, a importação (resultado, travas, erro), o contrato no download (logo, guardas) e o não permitido na troca. tsc limpo.
  • Specs de src/app/modulos/**: falham 4 do CalculadoraStatementComponent (No provider for ConfigService), que falham igual no main.
  • Revisão com o Codex: em 01/10 e 06/10, e de novo em 19/10, 20/10 e 23/10, até não haver achados.

Depende do backend: malacration/sap-service#299.

🤖 Generated with Claude Code

franciscoMarcello and others added 3 commits October 1, 2026 17:24
Filtros de emissao, vencimento, NF, filial, cliente, vendedor e status;
lote montado a mao entre buscas (guardado na aba) e download do zip com
DANFE, XML e boleto.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ANFE, XML e boleto

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
franciscoMarcello and others added 2 commits October 20, 2026 12:52
…trato de venda futura

- Lista com uma linha por parcela (Parcela, Vencimento, Valor da parcela); o lote segue de
  documentos e o "Adicionar todas do filtro" pede por documento.
- Botao "Importar planilha do banco" (.xlsx): poe no lote os documentos dos titulos e lista
  as linhas que pedem atencao; trava lote, download e troca enquanto importa.
- Download com "Contrato (VF)": PDF do contrato de cada adiantamento, com o logo do deploy.
- Troca de forma: NF de venda futura antiga fica de fora (avisada na confirmacao, "Nao
  permitido" no resultado).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…a tela de lote

- Filtro "Forma de pagamento" (formas de recebimento, inclusive inativas, e "Sem forma")
  e coluna/painel com "Nome (codigo)".
- Colunas "Boleto (BankPlus)" (status e situacao) e "Nosso numero"; filtro "Boleto
  (BankPlus)" com "Sem boleto".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@malacration
malacration merged commit 013f456 into malacration:main Oct 26, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants