From d92242ea2c3947d65698b0da371fb2e743378b83 Mon Sep 17 00:00:00 2001 From: "B.E.N.S.O.N" Date: Fri, 16 Jan 2026 13:46:17 +0800 Subject: [PATCH] Dashboard: Goods Receipt Status UI --- .../goodsReceiptStatus/GoodsReceiptStatus.tsx | 21 +++---------------- 1 file changed, 3 insertions(+), 18 deletions(-) diff --git a/src/components/DashboardPage/goodsReceiptStatus/GoodsReceiptStatus.tsx b/src/components/DashboardPage/goodsReceiptStatus/GoodsReceiptStatus.tsx index e4ef370..4e725d2 100644 --- a/src/components/DashboardPage/goodsReceiptStatus/GoodsReceiptStatus.tsx +++ b/src/components/DashboardPage/goodsReceiptStatus/GoodsReceiptStatus.tsx @@ -24,10 +24,8 @@ import { import { useTranslation } from 'react-i18next'; import dayjs from 'dayjs'; -// Placeholder interface - to be defined when implementing details interface GoodsReceiptStatusItem { id: string; - // Add fields as needed when implementing } const GoodsReceiptStatus: React.FC = () => { @@ -38,18 +36,13 @@ const GoodsReceiptStatus: React.FC = () => { const [currentTime, setCurrentTime] = useState(null); const [isClient, setIsClient] = useState(false); - // Set client flag and time on mount useEffect(() => { setIsClient(true); setCurrentTime(dayjs()); }, []); - // Load data from API - placeholder for now const loadData = useCallback(async () => { try { - // TODO: Implement API call when ready - // const result = await fetchGoodsReceiptStatusClient(); - // setData(result); setData([]); } catch (error) { console.error('Error fetching goods receipt status:', error); @@ -58,42 +51,34 @@ const GoodsReceiptStatus: React.FC = () => { } }, []); - // Initial load and auto-refresh every 5 minutes useEffect(() => { loadData(); const refreshInterval = setInterval(() => { loadData(); - }, 5 * 60 * 1000); // 5 minutes + }, 5 * 60 * 1000); return () => clearInterval(refreshInterval); }, [loadData]); - // Update current time every 1 minute useEffect(() => { if (!isClient) return; const timeInterval = setInterval(() => { setCurrentTime(dayjs()); - }, 60 * 1000); // 1 minute + }, 60 * 1000); return () => clearInterval(timeInterval); }, [isClient]); - // Filter data by selected filter const filteredData = useMemo(() => { if (!selectedFilter) return data; - return data.filter(item => true); // TODO: Implement filter logic + return data.filter(item => true); }, [data, selectedFilter]); return ( - {/* Title */} - - {t("Goods Receipt Status")} - - {/* Filter */}