import { TableConfig } from "@/types/dashboard"; export const DASHBOARD_TABLES: TableConfig[] = [ { tableName: 'b_rfqs', displayName: '검토용 견적', domain: 'procurement', statusField: 'status', statusMapping: { 'DRAFT': 'pending', 'Doc. Received': 'in_progress', 'PIC Assigned': 'in_progress', 'Doc. Confirmed': 'in_progress', 'Init. RFQ Sent': 'in_progress', 'Init. RFQ Answered': 'in_progress', 'TBE started': 'in_progress', 'TBE finished': 'in_progress', 'Final RFQ Sent': 'in_progress', 'Quotation Received': 'in_progress', 'Vendor Selected': 'completed' }, userFields: { creator: 'created_by', updater: 'updated_by', // assignee: 'sent_by' } }, { tableName: 'procurement_rfqs', displayName: 'RFQ', domain: 'procurement', statusField: 'status', statusMapping: { 'RFQ Created': 'pending', 'RFQ Vendor Assignned': 'in_progress', 'RFQ Sent': 'in_progress', 'Quotation Analysis': 'in_progress', 'PO Transfer': 'completed', 'PO Create': 'completed' }, userFields: { creator: 'sent_by', updater: 'updated_by', // assignee: 'sent_by' } }, { tableName: 'evaluation_targets', displayName: '협력업체 평가대상 관리', domain: 'procurement', statusField: 'status', statusMapping: { 'PENDING': 'pending', 'EXCLUDED': 'completed', 'CONFIRMED': 'completed' }, userFields: { creator: 'confirmed_by', // updater: 'updated_by', // assignee: 'confirmed_by' } }, { tableName: 'tech_sales_rfqs', displayName: '기술영업 RFQ', domain: 'sales', statusField: 'status', statusMapping: { 'RFQ Created': 'pending', 'RFQ Vendor Assignned': 'in_progress', 'RFQ Sent': 'in_progress', 'Quotation Analysist': 'in_progress', 'Closed': 'completed' }, userFields: { creator: 'created_by', updater: 'updated_by', // assignee: 'confirmed_by' } }, // 기술영업 벤더 견적 { tableName: 'tech_sales_vendor_quotations', displayName: '기술영업 RFQ Quotations', domain: 'sales', statusField: 'status', statusMapping: { 'Assigned': 'pending', 'Draft': 'in_progress', 'Submitted': 'completed', 'Accepted': 'completed', 'Rejected': 'completed', }, userFields: { creator: 'created_by', updater: 'updated_by', } }, ]; export const getTablesByDomain = (domain: string): TableConfig[] => { if (domain === 'evcp') { return DASHBOARD_TABLES; // 모든 테이블 반환 } return DASHBOARD_TABLES.filter(table => table.domain === domain); }; export const getAllDomains = (): string[] => { return [...new Set(DASHBOARD_TABLES.map(table => table.domain))]; };