From de4c8a6a6b7c918a7a16fc34423d1143209c295f Mon Sep 17 00:00:00 2001 From: dujinkim Date: Thu, 3 Jul 2025 01:59:36 +0000 Subject: (최겸) 기술영업 벤더 공종 조회 기능 추가 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/tech-vendors/items-table/add-item-dialog.tsx | 20 ++--- .../items-table/item-table-toolbar-actions.tsx | 2 +- lib/tech-vendors/service.ts | 88 ++++++++++++++-------- .../table/tech-vendors-table-columns.tsx | 9 ++- lib/tech-vendors/table/tech-vendors-table.tsx | 43 ++++++++++- lib/tech-vendors/table/update-vendor-sheet.tsx | 21 +++--- lib/tech-vendors/utils.ts | 2 + lib/tech-vendors/validations.ts | 18 ++++- 8 files changed, 142 insertions(+), 61 deletions(-) (limited to 'lib') diff --git a/lib/tech-vendors/items-table/add-item-dialog.tsx b/lib/tech-vendors/items-table/add-item-dialog.tsx index e4d74204..21875295 100644 --- a/lib/tech-vendors/items-table/add-item-dialog.tsx +++ b/lib/tech-vendors/items-table/add-item-dialog.tsx @@ -79,8 +79,8 @@ export function AddItemDialog({ vendorId }: AddItemDialogProps) { if (result.data) { console.log(`[AddItemDialog] 사용 가능한 아이템 목록:`, result.data) - setItems(result.data) - setFilteredItems(result.data) + setItems(result.data as ItemDropdownOption[]) + setFilteredItems(result.data as ItemDropdownOption[]) } else if (result.error) { console.error("[AddItemDialog] 아이템 조회 실패:", result.error) toast.error(result.error) @@ -113,8 +113,8 @@ export function AddItemDialog({ vendorId }: AddItemDialogProps) { const lowerSearch = searchTerm.toLowerCase() const filtered = items.filter(item => item.itemCode.toLowerCase().includes(lowerSearch) || - item.itemName.toLowerCase().includes(lowerSearch) || - (item.description && item.description.toLowerCase().includes(lowerSearch)) + item.itemList.toLowerCase().includes(lowerSearch) || + (item.subItemList && item.subItemList.toLowerCase().includes(lowerSearch)) ) console.log(`[AddItemDialog] 필터링 결과: ${filtered.length}개 아이템`) @@ -125,13 +125,13 @@ export function AddItemDialog({ vendorId }: AddItemDialogProps) { console.log(`[AddItemDialog] 아이템 선택: ${item.itemCode}`) form.setValue("itemCode", item.itemCode, { shouldValidate: true }) setSelectedItem({ - itemName: item.itemName, - description: item.description || "", + itemName: item.itemList, + description: item.subItemList || "", }) console.log(`[AddItemDialog] 선택된 아이템 정보:`, { itemCode: item.itemCode, - itemName: item.itemName, - description: item.description || "" + itemName: item.itemList, + description: item.subItemList || "" }) setCommandOpen(false) } @@ -241,7 +241,7 @@ export function AddItemDialog({ vendorId }: AddItemDialogProps) { {filteredItems.map((item) => ( handleSelectItem(item)} > {item.itemCode} - - {item.itemName} + - {item.itemList} ))} diff --git a/lib/tech-vendors/items-table/item-table-toolbar-actions.tsx b/lib/tech-vendors/items-table/item-table-toolbar-actions.tsx index 68a20816..b327ff56 100644 --- a/lib/tech-vendors/items-table/item-table-toolbar-actions.tsx +++ b/lib/tech-vendors/items-table/item-table-toolbar-actions.tsx @@ -65,7 +65,7 @@ export function TechVendorItemsTableToolbarActions({ table, vendorId, vendorType return (
- + {/* */} {/** 3) Import 버튼 (파일 업로드) */}