diff --git a/src/features/dashboard/components/installment-analysis/installment-group-card.tsx b/src/features/dashboard/components/installment-analysis/installment-group-card.tsx
index 6af1a46..9af2294 100644
--- a/src/features/dashboard/components/installment-analysis/installment-group-card.tsx
+++ b/src/features/dashboard/components/installment-analysis/installment-group-card.tsx
@@ -207,32 +207,23 @@ export function InstallmentGroupCard({
)}
- {/* Valor selecionado */}
- {hasSelection && (
-
-
- {selectedInstallments.size}{" "}
- {selectedInstallments.size === 1
- ? "parcela selecionada"
- : "parcelas selecionadas"}
-
-
-
- )}
-
{/* Botão para abrir detalhes */}
diff --git a/src/features/dashboard/expenses/installment-analysis-queries.ts b/src/features/dashboard/expenses/installment-analysis-queries.ts
index 1d9ae14..7f9458b 100644
--- a/src/features/dashboard/expenses/installment-analysis-queries.ts
+++ b/src/features/dashboard/expenses/installment-analysis-queries.ts
@@ -192,6 +192,22 @@ export async function fetchInstallmentAnalysis(
(i) => !i.isSettled,
);
return hasUnpaidInstallments;
+ })
+ .sort((a, b) => {
+ const progressA =
+ a.trackedInstallments > 0
+ ? a.paidInstallments / a.trackedInstallments
+ : 0;
+ const progressB =
+ b.trackedInstallments > 0
+ ? b.paidInstallments / b.trackedInstallments
+ : 0;
+
+ if (progressA !== progressB) {
+ return progressB - progressA;
+ }
+
+ return a.firstPurchaseDate.getTime() - b.firstPurchaseDate.getTime();
});
// Calcular totais