Compare commits

...

3 Commits

Author SHA1 Message Date
root fbed0e57c2 fix: duplicacao saldo caixa — top-level tem prioridade sobre dados JSON
Build Fechamento de Caixa / build (macos-14, app) (push) Has been cancelled
Build Fechamento de Caixa / build (ubuntu-22.04, deb) (push) Has been cancelled
Build Fechamento de Caixa / build (windows-2022, msi) (push) Has been cancelled
2026-07-02 14:35:13 +00:00
root 362a76961b fix: saldo caixa = soma direta dos campos individuais (troco+credito+debito+alimentacao+vales+areceber+pixcnpj+pixcartao)
Build Fechamento de Caixa / build (macos-14, app) (push) Has been cancelled
Build Fechamento de Caixa / build (ubuntu-22.04, deb) (push) Has been cancelled
Build Fechamento de Caixa / build (windows-2022, msi) (push) Has been cancelled
2026-07-02 14:15:26 +00:00
root 7a3a4b221b fix: saldo caixa = fechamento_dinheiro+fechamento_cartoes+fechamento_areceber (total sistema)
Build Fechamento de Caixa / build (macos-14, app) (push) Has been cancelled
Build Fechamento de Caixa / build (ubuntu-22.04, deb) (push) Has been cancelled
Build Fechamento de Caixa / build (windows-2022, msi) (push) Has been cancelled
2026-07-02 14:06:41 +00:00
+13 -11
View File
@@ -2175,19 +2175,21 @@ function buildConsultaModal(recentList) {
}; };
// Calcula saldo de caixa real (mesma fórmula do relatório) // Calcula saldo de caixa real (mesma fórmula do relatório)
// Lê tanto do top-level quanto do JSON dados (old records compatibility) // SALDO CAIXA = soma dos campos individuais (total do sistema no relatório)
// Lê do top-level E do JSON dados (compatibilidade com registros antigos)
// SALDO CAIXA = soma dos campos individuais (total do sistema no relatório)
// Prioriza top-level, só usa dados.dados se top-level for 0/missing (compat old records)
const f = (item, dados, field) => parseFloat(item[field]||dados[field]||0);
const calcSaldoCaixa = item => { const calcSaldoCaixa = item => {
const dados = item.dados || {}; const dados = item.dados || {};
return (parseFloat(item.saldo_troco)||0) return f(item,dados,'saldo_troco')
+ (parseFloat(item.saldo_credito)||0) + f(item,dados,'saldo_credito')
+ (parseFloat(item.saldo_debito)||0) + f(item,dados,'saldo_debito')
+ (parseFloat(item.saldo_alimentacao)||0) + f(item,dados,'saldo_alimentacao')
+ (parseFloat(item.saldo_vales)||0) + f(item,dados,'saldo_vales')
+ (parseFloat(item.saldo_areceber)||0) + f(item,dados,'saldo_areceber')
+ (parseFloat(item.total_pixcnpj)||0) + f(item,dados,'total_pixcnpj')
+ (parseFloat(item.total_cartao_pix)||0) + f(item,dados,'total_cartao_pix');
+ (parseFloat(dados.total_pixcnpj)||0)
+ (parseFloat(dados.total_cartao_pix)||0);
}; };
const calcCancelamentos = item => { const calcCancelamentos = item => {
const dados = item.dados || {}; const dados = item.dados || {};