refactor: filtrar grupos de parcelas com pelo menos uma parcela em aberto

Esta alteração melhora a função fetchInstallmentAnalysis ao adicionar um filtro
para garantir que apenas os grupos de parcelas com pelo menos uma parcela não
paga sejam retornados. Isso melhora a eficiência e a clareza dos dados
processados.
This commit is contained in:
Felipe Coutinho
2025-11-16 18:18:13 -03:00
parent 25d44d6b27
commit cdf79600e9

View File

@@ -145,14 +145,22 @@ export async function fetchInstallmentAnalysis(
} }
// Calcular quantas parcelas já foram pagas para cada grupo // Calcular quantas parcelas já foram pagas para cada grupo
const installmentGroups = Array.from(seriesMap.values()).map((group) => { const installmentGroups = Array.from(seriesMap.values())
// Contar quantas parcelas estão marcadas como pagas (settled) .map((group) => {
const paidCount = group.pendingInstallments.filter( // Contar quantas parcelas estão marcadas como pagas (settled)
(i) => i.isSettled const paidCount = group.pendingInstallments.filter(
).length; (i) => i.isSettled
group.paidInstallments = paidCount; ).length;
return group; group.paidInstallments = paidCount;
}); return group;
})
// Filtrar apenas séries que têm pelo menos uma parcela em aberto (não paga)
.filter((group) => {
const hasUnpaidInstallments = group.pendingInstallments.some(
(i) => !i.isSettled
);
return hasUnpaidInstallments;
});
// Calcular totais // Calcular totais
const totalPendingInstallments = installmentGroups.reduce( const totalPendingInstallments = installmentGroups.reduce(