From 31157122ca4d3d47ad7c17ecc7882f92731b429f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B6=8C=ED=98=81=EC=84=B1?= Date: Sat, 14 Mar 2026 08:29:09 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20[vendor]=20=EA=B1=B0=EB=9E=98=EC=B2=98?= =?UTF-8?q?=20=EA=B4=80=EB=A6=AC=20=EB=82=A0=EC=A7=9C=20=ED=95=84=ED=84=B0?= =?UTF-8?q?=20=EA=B8=B0=EB=B3=B8=EA=B0=92=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 기본값을 당월 → 빈 값(전체 조회)으로 변경 - date-fns import 제거 - 날짜 필터 범위 조건 개선 --- .../VendorManagement/VendorManagementClient.tsx | 10 ++++++---- src/components/accounting/VendorManagement/index.tsx | 6 +++--- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/components/accounting/VendorManagement/VendorManagementClient.tsx b/src/components/accounting/VendorManagement/VendorManagementClient.tsx index 47fcfb19..beff24e7 100644 --- a/src/components/accounting/VendorManagement/VendorManagementClient.tsx +++ b/src/components/accounting/VendorManagement/VendorManagementClient.tsx @@ -11,7 +11,6 @@ import { useState, useMemo, useCallback } from 'react'; import { useRouter } from 'next/navigation'; -import { format, startOfMonth, endOfMonth } from 'date-fns'; import { formatNumber } from '@/lib/utils/amount'; import { applyFilters, textFilter, enumFilter } from '@/lib/utils/search'; import { @@ -73,8 +72,8 @@ export function VendorManagementClient({ initialData, initialTotal: _initialTota const router = useRouter(); // ===== 상태 관리 ===== - const [startDate, setStartDate] = useState(() => format(startOfMonth(new Date()), 'yyyy-MM-dd')); - const [endDate, setEndDate] = useState(() => format(endOfMonth(new Date()), 'yyyy-MM-dd')); + const [startDate, setStartDate] = useState(''); + const [endDate, setEndDate] = useState(''); const [searchQuery, setSearchQuery] = useState(''); const [sortOption, setSortOption] = useState('latest'); const [categoryFilter, setCategoryFilter] = useState('all'); @@ -124,9 +123,12 @@ export function VendorManagementClient({ initialData, initialTotal: _initialTota enumFilter('transactionGrade', transactionGradeFilter), enumFilter('badDebtStatus', badDebtFilter), (items: Vendor[]) => items.filter((item) => { + if (!startDate && !endDate) return true; if (!item.createdAt) return true; const created = item.createdAt.slice(0, 10); - return created >= startDate && created <= endDate; + if (startDate && created < startDate) return false; + if (endDate && created > endDate) return false; + return true; }), ]); diff --git a/src/components/accounting/VendorManagement/index.tsx b/src/components/accounting/VendorManagement/index.tsx index 11479cb0..56d8c8a6 100644 --- a/src/components/accounting/VendorManagement/index.tsx +++ b/src/components/accounting/VendorManagement/index.tsx @@ -76,9 +76,9 @@ interface VendorManagementProps { export function VendorManagement({ initialData, initialTotal: _initialTotal }: VendorManagementProps) { const router = useRouter(); - // ===== 날짜 범위 상태 ===== - const [startDate, setStartDate] = useState(() => format(startOfMonth(new Date()), 'yyyy-MM-dd')); - const [endDate, setEndDate] = useState(() => format(endOfMonth(new Date()), 'yyyy-MM-dd')); + // ===== 날짜 범위 상태 (빈 값 = 전체 조회) ===== + const [startDate, setStartDate] = useState(''); + const [endDate, setEndDate] = useState(''); // ===== 외부 상태 (Stats 계산용) ===== const [vendorData, setVendorData] = useState(initialData);