fix: 견적 선택 다이얼로그 개선

- actions.ts: for_order=true 파라미터 추가 (수주 전환된 견적 제외)
- QuotationSelectDialog: 두 번 호출되는 문제 수정
  - 두 개의 useEffect를 하나로 통합
  - 초기 로드는 즉시, 검색은 디바운스 적용
This commit is contained in:
2026-01-15 16:13:30 +09:00
parent 0f8f40fc7b
commit f6c8610104
2 changed files with 8 additions and 10 deletions

View File

@@ -74,21 +74,17 @@ export function QuotationSelectDialog({
}
}, []);
// 다이얼로그 열릴 때 데이터 로드
useEffect(() => {
if (open) {
setSearchTerm("");
fetchQuotations();
}
}, [open, fetchQuotations]);
// 검색어 변경 시 디바운스 적용하여 API 호출
// 다이얼로그 열릴 때 데이터 로드 + 검색어 변경 시 디바운스 적용
useEffect(() => {
if (!open) return;
// 검색어가 빈 문자열이면 즉시 호출 (다이얼로그 열림 시)
// 검색어가 있으면 디바운스 적용
const delay = searchTerm === "" ? 0 : 300;
const timer = setTimeout(() => {
fetchQuotations(searchTerm || undefined);
}, 300);
}, delay);
return () => clearTimeout(timer);
}, [searchTerm, open, fetchQuotations]);