Desde: 5K18 — 18 nov 2025~7 meses+300 commitsWildFly 26.1.3 | Java 17
📋 NFS-e — Nota Fiscal de Servico (novo modulo)
CRUD Completo de NFS-e

Novo modulo de nota fiscal de servico. Entidade NfseEntity (tabela ve_nfse), telas de edicao e pesquisa, menu Nota Servico. Campo serie_nfse no cadastro de cliente.

Integracao Biblioteca nfse

Integracao com io.github.marcoslombardi:nfse para emissao, envio e consulta em multiplas prefeituras. Evoluida de 1.0.4 ate 1.0.39 ao longo do ciclo.

Faturamento de OS com NFS-e

Geracao de NFS-e a partir do faturamento de ordem de servico. Vinculacao entre OS, faturamento e nota de servico. Valores calculados dos itens da OS.

Refatoracao do Fluxo de Faturamento

Remocao do metodo legado editarFaturamento e adocao do novo fluxo unificado com suporte a NFS-e.

📃 Fiscal NF-e
Busca Automatica XML SEFAZ (NSU)

Busca e importacao de notas de fornecedores via NSU. Controle de duplicidade, ordenacao por dhEmi. Funcoes: buscaXmlsSefaz, buscaNotasFornecedores, importaNotas, documentoFiscalRead.

Importacao XML por Chave NF-e

Importacao de nota pela chave de acesso, download de XML direto da SEFAZ, manifesto do destinatario com ciencia e confirmacao da operacao.

pe:clipboard nas Pesquisas

Botao de copiar (pe:clipboard) nas principais colunas das telas de pesquisa para agilizar copia de dados.

Filtros com Ajax em Tempo Real

Filtros usando f:ajax event="input". Paginacao com exibicao em milhar. Melhoria geral de usabilidade nas listagens.

Estorno Nota Entrada de Terceiros

Estorno de nota de entrada de emissor terceiro define situacao como IMPORTADA e reverte movimentacoes na mesma transacao.

Informe Complementar + Obs Usuario

Chamada de calculaImpostos em complementaInstance para preencher infCpl concatenando com observacao do usuario.

🛒 Vendas, Comanda e Faturamento
Comanda

Campo comanda em ve_venda. Validacao de unicidade de comanda aberta por cliente. Pesquisa e pagina de pesquisa dinamica com fluxo de navegacao dedicado.

Exportar NFC-e a partir de Venda

Geracao automatica de NFC-e a partir de venda (exportarNfce, createNfceEntity). Preenchimento de itens, vendedor, formas de pagamento e destinatario.

Descricao em Faturamento

Novo campo descricao em ve_faturamento. Exibido nas listagens. Clone preserva descricao. Adicionado em venda e nota de saida.

Acrescimo e Desconto em Nota Saida

Tratamento de acrescimo e desconto na geracao e exclusao de venda vinculada a nota de saida. Exclusao de faturamentos com cascade. Validacao de desconto maior que total.

Alerta Alteracao de Preco de Compra

Alerta visual ao alterar preco de compra na baixa de nota de entrada. Novo campo valor_desconto em cb_produto. Renomeacao da coluna preco_compra_anterior.

Pesquisa Saldo Produto por Deposito

Popup de pesquisa de saldo dinamico por deposito selecionado. Disponivel em cupom e nota de saida. Campo pesquisaSaldo no cliente controla exibicao.

Truncamento no Rateio de Itens

Correcao de truncamento no rateio de valores ao gerar NF-e a partir de venda. Valores arredondados para evitar diferenca de centavos nos totais.

🏠 Dashboard Home
Views Consolidadas PostgreSQL

Views criadas: vw_home (visao geral), vw_movi_caixa (caixa) e vw_financeiro (contas a pagar/receber). Entidades JPA HomeView e CaixaView.

Indicadores na Tela Inicial

Contadores de movimentacoes de estoque, aniversariantes do dia, saldo financeiro consolidado e situacao de notas fiscais exibidos apos login.

🏢 Infraestrutura Docker e DevOps
Containers DEV e PRO

Ambientes containerizados com healthchecks, limites de memoria sincronizados com JVM (-Xmx), restart: unless-stopped. VPS 16GB RAM. Replica DEV.

Uptime Kuma

Monitoramento com Uptime Kuma. Heartbeat para backups S3. Template de email. Monitor porta 8880. DNS use.tec e dev.tecnosofti.com.br.

Backups Automatizados AWS S3

Scripts Bash de backup do PostgreSQL com upload S3. Heartbeat ao Kuma ao concluir. Email em caso de falha. Limpeza local apos upload.

Seguranca do Servidor

Fail2Ban com jail.local customizado, UFW, rkhunter, logwatch. Mitigacao QVD-2026-24699. SSH porta 5151. Atualizacoes automaticas Ubuntu.

Postfix para Email

Configuracao de Postfix para emails transacionais (reset de senha, alertas de backup, falhas de job). Script configurar-postfix.sh. Conta HostGator.

TLS no WildFly e JVM G1GC

TLS nativo no container WildFly. HTTPS portas 8443 (PRO) / 8880 (DEV). Cookies secure=true. G1GC com -XX:G1HeapRegionSize=2m. WELD conversation 30 min.

🔒 Seguranca e Acesso
Cookies Seguros (HTTPS Only)

secure=true em session-config. javax.faces.ENABLE_VIEWSTATE_SECURE. Cookies aceitos somente via HTTPS em producao.

Atualizacao Automatica de Cacerts

Job Quartz AtualizaCacertsJob toda segunda-feira as 3h. Botao manual na interface. Garante comunicacao com SEFAZ sem interrupcao.

Protecao window.opener

Protecao contra reverse tabnapping em links externos. Aplicado nas telas de nova janela (DANFE, PDF de eventos).

⚡ Performance e ORM
FetchType.LAZY em Todas as Entidades

FetchType.LAZY em NfeEntity, NfseEntity, PessoaEntity, OrdemServicoEntity, VendaEntity, CategoriaEntity, ProdutoEntity. Colecoes com @Fetch(FetchMode.SUBSELECT).

Cache L2 EhCache

EhCache como provedor de cache L2 do Hibernate (hibernate-ehcache 5.6.15.Final). Estrategia READ_WRITE. Timeout 60 min alinhado ao timeout de sessao.

Views e Indices PostgreSQL

Indices otimizados. Remocao de UPPER() desnecessarios. Otimizacao de autocompletes de produto e servico. logtimezone = UTC-3.

Precisao / Escala ORM Revisados

Correcao de @Digits e @Column(precision, scale) em todos os BigDecimal. Alinhamento com schema PostgreSQL para evitar erros de validacao Hibernate.

Compatibilidade WildFly 26

Remocao de metamodelos (Entity_.java). Namespaces XML atualizados. DeltaSpike revisado. Dependencias duplicadas removidas. Modules JBoss Xalan/Xerces configurados.

📦 Atualizacao de Dependencias
Biblioteca Versao em 5K18 Versao em v6F15 Observacao
wmixvideo/nfe (Fincatto)4.0.x5.0.51Suporte NT 2025.002 — IBS/CBS/IS
io.github.marcoslombardi/nfse— (novo)1.0.39Novo — NFS-e multiplas prefeituras
PostgreSQL JDBC Driver42.x42.7.11
PrimeFlex< 3.33.3.1
Font Awesome6.x7.1.0
hibernate-ehcache— (sem L2)5.6.15.FinalNovo — cache de segundo nivel
AWS SDK S3— (novo)2.31.63Novo — backups automatizados
maven-compiler-plugin3.x3.13.0
🐛 Bugs Corrigidos
► LazyInitializationException em NfeEntity, NfseEntity, OrdemServicoEntity e ao excluir faturamento — correcoes extensivas apos migracao para FetchType.LAZY.
► NumberFormatException em parser de valor numerico em campo de item da nota fiscal.
► Duplicidade de produtos NSU — tratamento de duplicidade na busca e importacao de notas por NSU da SEFAZ.
► Bug clonar venda — referencia de NF-e nao era limpa ao clonar; clone iniciava com NF-e vinculada incorretamente.
► p:messages estoque indisponivel — mensagem nao aparecia no dialogo de pesquisa de produto (id="dPesPro").
► p:spinner onfocus — foco nao selecionava o conteudo; corrigido com this.select().
► pe:clipboard id required — componente exigia id de carregamento; corrigido.
► Desconto maior que total da venda — validacao adicionada para bloquear valor invalido.
► Bug baixa nota entrada — produto nao encontrado ao realizar baixa em nota de entrada.
► OBS cupom duplicado — informacao complementar duplicada na nota saida ao usar complemento automatico.
► Codigo fornecedor com caracteres especiais — causava rejeicao SEFAZ; sanitizado com Helper.retornaAlfanumerico().
► Inconsistencia financeira/estoque em transferencia — credito/debito e entrada/saida agora na mesma transacao.
📅 Historico de Versoes — 5K18 ate v6F15
Jun 2026
v6F14 — v6F10 — v6F2
NFS-e lib 1.0.39, busca NSU/SEFAZ, pesquisa saldo deposito, PostgreSQL 42.7.11, NumberFormatException, DNS use.tec
Mai 2026
v6E14 — v6E12
Filtros ajax, pe:clipboard, NF-e 5.0.51, cookies secure, fail2ban/ufw, sessao WELD 30 min, mitigacao QVD-2026-24699
Abr 2026
v6D08 — v6D03 — v6D01
Containers DEV/PRO, Kuma, S3, EmailService assincrono, TLS WildFly, Postfix, fail2ban, SSH 5151, NFS-e e OS CRUD
Mar 2026
v6C31 — v6C11
FetchType.LAZY completo, EhCache L2, ORM revisado, views PostgreSQL, WildFly 26, ve_nfse criada, AtualizaCacertsJob
Fev 2026
v6B27 — v6B03
Dashboard Home (vw_home, vw_movi_caixa, vw_financeiro), validacoes SEFAZ, delete cliente, filtro quantidade estoque
Jan 2026
v6A28 — v6A13
Exportar NFC-e de venda, PrimeFlex 3.3.1, campo descricao faturamento, sintegra notas fornecedores, inicio lib NFSe
Dez 2025
v5L19 — v5L4
Comanda, importacao XML por chave, manifesto destinatario, alerta preco compra, acrescimo/desconto nota saida
Nov 2025
v5K19
Correcao bug baixa nota entrada produto nao encontrado