From 4c7910ab7bba6feb33ef8b6490f1496f7e9aec7e Mon Sep 17 00:00:00 2001 From: AlexeerCT Date: Fri, 15 May 2026 17:13:03 -0500 Subject: [PATCH] Refactor API calls in dashboard components to use active company ID. Updated classification, countries, and invoice types pages to ensure proper data fetching based on the selected company, enhancing user experience and data accuracy. --- .../classification_concepts/+page.svelte | 2 +- .../reference_data/countries/+page.svelte | 21 +++++++++++++++---- .../reference_data/invoice_types/+page.svelte | 4 ++-- 3 files changed, 20 insertions(+), 7 deletions(-) diff --git a/frontend/src/routes/dashboard/general_catalogs/classification_concepts/+page.svelte b/frontend/src/routes/dashboard/general_catalogs/classification_concepts/+page.svelte index d6bc251d..3ec7498b 100644 --- a/frontend/src/routes/dashboard/general_catalogs/classification_concepts/+page.svelte +++ b/frontend/src/routes/dashboard/general_catalogs/classification_concepts/+page.svelte @@ -111,7 +111,7 @@ async function loadMore() { if (loading || !hasMore || !companyStore.activeCompany) return; loading = true; try { -const response = await classificationApi.list(currentPage + 1, { +const response = await classificationApi.list(companyStore.activeCompany.id, { classification: searchKey || undefined, description: searchDesc || undefined, page: (currentPage + 1).toString(), diff --git a/frontend/src/routes/dashboard/reference_data/countries/+page.svelte b/frontend/src/routes/dashboard/reference_data/countries/+page.svelte index aeeecf7c..fb03d6ee 100644 --- a/frontend/src/routes/dashboard/reference_data/countries/+page.svelte +++ b/frontend/src/routes/dashboard/reference_data/countries/+page.svelte @@ -16,6 +16,7 @@ import { userHasCountriesRefAction } from '$lib/permissions/reference-data/countries-ref-permissions'; import { getAccessTokenFromDocument } from '$lib/access-token-cookie-browser'; import ErrorState from '$lib/components/dashboard/common/error-state.svelte'; + import { companyStore } from '$lib/stores/company.svelte'; // Los datos iniciales vienen del servidor let { data }: { data: PageData } = $props(); @@ -78,12 +79,19 @@ function handleSearch() { if (!browser) return; + if (!companyStore.activeCompany) return; clearTimeout(timeout); timeout = setTimeout(async () => { + if (!companyStore.activeCompany) return; loading = true; error = null; try { - const response = await countriesApi.list(1, pageSize, searchQuery as any); + const response = await countriesApi.list( + companyStore.activeCompany.id, + 1, + pageSize, + searchQuery + ); if (!response.error && response.data) { allItems = response.data.items; currentPage = 1; @@ -104,13 +112,18 @@ } async function loadMore() { - if (loading || !hasMore) return; + if (loading || !hasMore || !companyStore.activeCompany) return; loading = true; error = null; - try { - const response = await countriesApi.list(currentPage + 1, pageSize, searchQuery as any); + try { + const response = await countriesApi.list( + companyStore.activeCompany.id, + currentPage + 1, + pageSize, + searchQuery + ); if (response.error) { console.error('📊 [Page] Error en loadMore:', response.error, 'Status:', response.status); if (response.status === 401 || response.status === 403) { diff --git a/frontend/src/routes/dashboard/reference_data/invoice_types/+page.svelte b/frontend/src/routes/dashboard/reference_data/invoice_types/+page.svelte index fedbbd7e..4e0e3e87 100644 --- a/frontend/src/routes/dashboard/reference_data/invoice_types/+page.svelte +++ b/frontend/src/routes/dashboard/reference_data/invoice_types/+page.svelte @@ -56,7 +56,7 @@ loading = true; error = null; try { - const response = await invoiceTypesApi.list(1, pageSize, searchQuery); + const response = await invoiceTypesApi.list(1, pageSize, undefined, searchQuery); if (!response.error && response.data) { allItems = response.data.items; currentPage = 1; @@ -81,7 +81,7 @@ loading = true; error = null; try { - const response = await invoiceTypesApi.list(currentPage + 1, pageSize, searchQuery); + const response = await invoiceTypesApi.list(currentPage + 1, pageSize, undefined, searchQuery); if (response.error) { if (response.status === 401 || response.status === 403) { error = 'Sesión expirada. Recargando página...';