From 5fe0236686366b0dfcebcbb3d638a7ba3d4e77bc Mon Sep 17 00:00:00 2001 From: ValdiANS Date: Tue, 27 Jan 2026 18:58:47 +0700 Subject: [PATCH] feat: implement export to excel --- .../transfer-to-laying/TransferToLayingsTable.tsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/components/pages/production/transfer-to-laying/TransferToLayingsTable.tsx b/src/components/pages/production/transfer-to-laying/TransferToLayingsTable.tsx index 7817c427..438c529c 100644 --- a/src/components/pages/production/transfer-to-laying/TransferToLayingsTable.tsx +++ b/src/components/pages/production/transfer-to-laying/TransferToLayingsTable.tsx @@ -183,6 +183,9 @@ const TransferToLayingsTable = () => { const isFilterActive = filterCount > 0; + const [isLoadingExportingToExcel, setIsLoadingExportingToExcel] = + useState(false); + // Modal hooks const filterModal = useModal(); const deleteModal = useModal(); @@ -453,9 +456,12 @@ const TransferToLayingsTable = () => { updateFilter('status', ''); }; - // TODO: add export to excel functionality - const exportToExcelHandler = () => { - toast.error('Not implemented yet'); + const exportToExcelHandler = async () => { + setIsLoadingExportingToExcel(true); + + await TransferToLayingApi.exportToExcel(getTableFilterQueryString()); + + setIsLoadingExportingToExcel(false); }; useEffect(() => { @@ -615,6 +621,7 @@ const TransferToLayingsTable = () => { variant='ghost' color='none' onClick={exportToExcelHandler} + isLoading={isLoadingExportingToExcel} className='w-full p-3 justify-start text-sm text-base-content/50 font-semibold text-nowrap' >