diff --git a/frontend/app/(main)/COMPANY_29/sales/customer/page.tsx b/frontend/app/(main)/COMPANY_29/sales/customer/page.tsx index 045679e5..80995df0 100644 --- a/frontend/app/(main)/COMPANY_29/sales/customer/page.tsx +++ b/frontend/app/(main)/COMPANY_29/sales/customer/page.tsx @@ -457,6 +457,8 @@ export default function CustomerManagementPage() { try { const filters: any[] = []; if (itemSearchKeyword) filters.push({ columnName: "item_name", operator: "contains", value: itemSearchKeyword }); + // 영업관리/판매품 division 필터 (다중값 contains 매칭) + filters.push({ columnName: "division", operator: "contains", value: "CAT_ML8ZFVEL_1TOR" }); const res = await apiClient.post(`/table-management/tables/item_info/data`, { page: 1, size: 50, dataFilter: filters.length > 0 ? { enabled: true, filters } : undefined, diff --git a/frontend/app/(main)/COMPANY_29/sales/order/page.tsx b/frontend/app/(main)/COMPANY_29/sales/order/page.tsx index 7f23909c..7d231bcf 100644 --- a/frontend/app/(main)/COMPANY_29/sales/order/page.tsx +++ b/frontend/app/(main)/COMPANY_29/sales/order/page.tsx @@ -474,16 +474,9 @@ export default function SalesOrderPage() { if (itemSearchKeyword) { filters.push({ columnName: "item_name", operator: "contains", value: itemSearchKeyword }); } + // division 필터는 다중값(쉼표 구분)이므로 contains로 부분 매칭 if (itemSearchDivision !== "all") { - filters.push({ columnName: "division", operator: "equals", value: itemSearchDivision }); - } else { - // 기본: 영업관련 division만 (판매품, 제품, 영업관리 등) - const salesDivCodes = (categoryOptions["item_division"] || []) - .filter((o) => ["판매품", "제품", "영업관리"].some((label) => o.label.includes(label))) - .map((o) => o.code); - if (salesDivCodes.length > 0) { - filters.push({ columnName: "division", operator: "in", value: salesDivCodes }); - } + filters.push({ columnName: "division", operator: "contains", value: itemSearchDivision }); } const res = await apiClient.post(`/table-management/tables/item_info/data`, { page: p, size: s, diff --git a/frontend/app/(main)/COMPANY_29/sales/sales-item/page.tsx b/frontend/app/(main)/COMPANY_29/sales/sales-item/page.tsx index 5da2b3b5..a2fcd9a9 100644 --- a/frontend/app/(main)/COMPANY_29/sales/sales-item/page.tsx +++ b/frontend/app/(main)/COMPANY_29/sales/sales-item/page.tsx @@ -166,8 +166,8 @@ export default function SalesItemPage() { try { const filters: { columnName: string; operator: string; value: any }[] = searchFilters.map((f) => ({ columnName: f.columnName, operator: f.operator, value: f.value })); - // 판매품목 division 필터 (다중값 컬럼이므로 contains로 매칭) - filters.push({ columnName: "division", operator: "contains", value: "CAT_DIV_SALES" }); + // 판매품목/영업관리 division 필터 (다중값 컬럼이므로 contains로 매칭) + filters.push({ columnName: "division", operator: "contains", value: "CAT_ML8ZFVEL_1TOR" }); const res = await apiClient.post(`/table-management/tables/${ITEM_TABLE}/data`, { page: 1, size: 500, diff --git a/frontend/app/(main)/COMPANY_7/sales/customer/page.tsx b/frontend/app/(main)/COMPANY_7/sales/customer/page.tsx index 045679e5..80995df0 100644 --- a/frontend/app/(main)/COMPANY_7/sales/customer/page.tsx +++ b/frontend/app/(main)/COMPANY_7/sales/customer/page.tsx @@ -457,6 +457,8 @@ export default function CustomerManagementPage() { try { const filters: any[] = []; if (itemSearchKeyword) filters.push({ columnName: "item_name", operator: "contains", value: itemSearchKeyword }); + // 영업관리/판매품 division 필터 (다중값 contains 매칭) + filters.push({ columnName: "division", operator: "contains", value: "CAT_ML8ZFVEL_1TOR" }); const res = await apiClient.post(`/table-management/tables/item_info/data`, { page: 1, size: 50, dataFilter: filters.length > 0 ? { enabled: true, filters } : undefined, diff --git a/frontend/app/(main)/COMPANY_7/sales/order/page.tsx b/frontend/app/(main)/COMPANY_7/sales/order/page.tsx index 7f23909c..7d231bcf 100644 --- a/frontend/app/(main)/COMPANY_7/sales/order/page.tsx +++ b/frontend/app/(main)/COMPANY_7/sales/order/page.tsx @@ -474,16 +474,9 @@ export default function SalesOrderPage() { if (itemSearchKeyword) { filters.push({ columnName: "item_name", operator: "contains", value: itemSearchKeyword }); } + // division 필터는 다중값(쉼표 구분)이므로 contains로 부분 매칭 if (itemSearchDivision !== "all") { - filters.push({ columnName: "division", operator: "equals", value: itemSearchDivision }); - } else { - // 기본: 영업관련 division만 (판매품, 제품, 영업관리 등) - const salesDivCodes = (categoryOptions["item_division"] || []) - .filter((o) => ["판매품", "제품", "영업관리"].some((label) => o.label.includes(label))) - .map((o) => o.code); - if (salesDivCodes.length > 0) { - filters.push({ columnName: "division", operator: "in", value: salesDivCodes }); - } + filters.push({ columnName: "division", operator: "contains", value: itemSearchDivision }); } const res = await apiClient.post(`/table-management/tables/item_info/data`, { page: p, size: s, diff --git a/frontend/app/(main)/COMPANY_7/sales/sales-item/page.tsx b/frontend/app/(main)/COMPANY_7/sales/sales-item/page.tsx index 5da2b3b5..a2fcd9a9 100644 --- a/frontend/app/(main)/COMPANY_7/sales/sales-item/page.tsx +++ b/frontend/app/(main)/COMPANY_7/sales/sales-item/page.tsx @@ -166,8 +166,8 @@ export default function SalesItemPage() { try { const filters: { columnName: string; operator: string; value: any }[] = searchFilters.map((f) => ({ columnName: f.columnName, operator: f.operator, value: f.value })); - // 판매품목 division 필터 (다중값 컬럼이므로 contains로 매칭) - filters.push({ columnName: "division", operator: "contains", value: "CAT_DIV_SALES" }); + // 판매품목/영업관리 division 필터 (다중값 컬럼이므로 contains로 매칭) + filters.push({ columnName: "division", operator: "contains", value: "CAT_ML8ZFVEL_1TOR" }); const res = await apiClient.post(`/table-management/tables/${ITEM_TABLE}/data`, { page: 1, size: 500,