diff --git a/src/app/(dashboard)/dashboard/accounting/page.tsx b/src/app/(dashboard)/dashboard/accounting/page.tsx index b4e7cd5..38c3e89 100644 --- a/src/app/(dashboard)/dashboard/accounting/page.tsx +++ b/src/app/(dashboard)/dashboard/accounting/page.tsx @@ -75,7 +75,7 @@ function AccountingOverview() { const [loading, setLoading] = useState(true); useEffect(() => { - api.get('/accounting/overview').then((r) => setData(r.data.data || r.data)).catch(() => {}).finally(() => setLoading(false)); + api.get('/accounting/overview').then((r) => setData(r.data.data ?? null)).catch(() => {}).finally(() => setLoading(false)); }, []); if (loading) { @@ -226,7 +226,7 @@ function TrialBalance({ onAccountClick }: { onAccountClick: (accountId: string) const [selectedAccount, setSelectedAccount] = useState(null); useEffect(() => { - api.get('/accounting/trial-balance').then((r) => setData(r.data.data || r.data)).catch(() => {}); + api.get('/accounting/trial-balance').then((r) => setData(r.data.data ?? [])).catch(() => {}); }, []); const totalDebit = data.reduce((s, a) => s + a.debit, 0); @@ -332,7 +332,7 @@ function AccountBreakdownModal({ if (!open) return; setLoading(true); api.get(`/accounting/general-ledger?accountId=${account.id}`) - .then((r) => setEntries(r.data.data || r.data)) + .then((r) => setEntries(r.data.data ?? [])) .catch(() => setEntries([])) .finally(() => setLoading(false)); }, [open, account.id]); @@ -454,7 +454,7 @@ function GeneralLedger({ initialAccountId, onClearAccountFilter }: { initialAcco const [dateTo, setDateTo] = useState(''); useEffect(() => { - api.get('/accounting/general-ledger').then((r) => setEntries(r.data.data || r.data)).catch(() => {}); + api.get('/accounting/general-ledger').then((r) => setEntries(r.data.data ?? [])).catch(() => {}); }, []); // When initialAccountId changes (clicked from trial balance), update filter diff --git a/src/app/(dashboard)/dashboard/payments/page.tsx b/src/app/(dashboard)/dashboard/payments/page.tsx index fdc56a6..defcbc9 100644 --- a/src/app/(dashboard)/dashboard/payments/page.tsx +++ b/src/app/(dashboard)/dashboard/payments/page.tsx @@ -217,7 +217,7 @@ function SubmitRemittanceModal({ open, onClose, onSuccess }: { open: boolean; on useEffect(() => { if (!open) return; setSelected(new Set()); setNotes(''); setLoading(true); - api.get('/payments/unremitted').then((r) => setPayments(r.data.data || r.data)) + api.get('/payments/unremitted').then((r) => setPayments(r.data.data ?? [])) .catch(() => toast('Failed to load unremitted payments', 'error')) .finally(() => setLoading(false)); }, [open, toast]); diff --git a/src/app/(dashboard)/dashboard/reports/page.tsx b/src/app/(dashboard)/dashboard/reports/page.tsx index f3e7e2d..26b255f 100644 --- a/src/app/(dashboard)/dashboard/reports/page.tsx +++ b/src/app/(dashboard)/dashboard/reports/page.tsx @@ -238,7 +238,7 @@ function CompanyOverview() { api.get('/dashboard/financial-summary').then((r) => setFinancial(r.data.data)).catch(() => {}), api.get('/dashboard/revenue-chart').then((r) => setRevenue(r.data.data ?? [])).catch(() => {}), api.get('/payments/unremitted').then((r) => { - const payments = r.data.data || r.data || []; + const payments = Array.isArray(r.data.data) ? r.data.data : []; setUnremitted({ total: payments.reduce((s: number, p: any) => s + Number(p.amount), 0), count: payments.length,