From 7c64870fed6038fed0f07fd0356769e96ffaa708 Mon Sep 17 00:00:00 2001 From: rstubryan Date: Tue, 30 Dec 2025 11:46:43 +0700 Subject: [PATCH] refactor(FE-316): Add submission state to apply filters --- .../pages/uniformity/UniformityTable.tsx | 29 ++++++++++++------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/src/components/pages/uniformity/UniformityTable.tsx b/src/components/pages/uniformity/UniformityTable.tsx index ff7fbb15..37b04785 100644 --- a/src/components/pages/uniformity/UniformityTable.tsx +++ b/src/components/pages/uniformity/UniformityTable.tsx @@ -191,6 +191,9 @@ const UniformityTable = ({ refresh }: { refresh?: () => void }) => { const bulkRejectModal = useModal(); const filterModal = useModal(); + // ===== SUBMISSION STATE ===== + const [isSubmitted, setIsSubmitted] = useState(false); + // ===== FILTER STATE ===== const [filterLocation, setFilterLocation] = useState(null); const [filterProjectFlock, setFilterProjectFlock] = @@ -311,17 +314,19 @@ const UniformityTable = ({ refresh }: { refresh?: () => void }) => { const basePath = UniformityApi.basePath; const queryParams = new URLSearchParams(); - if (filterProjectFlockKandangId) { - queryParams.append( - 'project_flock_kandang_id', - filterProjectFlockKandangId.toString() - ); - } - if (filterStartDate) { - queryParams.append('start_date', filterStartDate); - } - if (filterEndDate) { - queryParams.append('end_date', filterEndDate); + if (isSubmitted) { + if (filterProjectFlockKandangId) { + queryParams.append( + 'project_flock_kandang_id', + filterProjectFlockKandangId.toString() + ); + } + if (filterStartDate) { + queryParams.append('start_date', filterStartDate); + } + if (filterEndDate) { + queryParams.append('end_date', filterEndDate); + } } const tableQueryString = getTableFilterQueryString(); @@ -336,6 +341,7 @@ const UniformityTable = ({ refresh }: { refresh?: () => void }) => { const queryString = queryParams.toString(); return queryString ? `${basePath}?${queryString}` : basePath; }, [ + isSubmitted, filterProjectFlockKandangId, filterStartDate, filterEndDate, @@ -383,6 +389,7 @@ const UniformityTable = ({ refresh }: { refresh?: () => void }) => { }, []); const handleApplyFilters = useCallback(() => { + setIsSubmitted(true); filterModal.closeModal(); }, [filterModal]);