1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
import { TechVendorWithAttachments } from "@/db/schema/techVendors";
/**
* 테이블/엑셀에 보여줄 컬럼 한 칸을 어떻게 렌더링할지 결정하는 설정
*/
export interface VendorColumnConfig {
/**
* 기술영업 벤더(TechVendorWithAttachments) 객체의 어느 필드를 표시할지
*/
id: keyof TechVendorWithAttachments;
/** 화면·엑셀에서 보여줄 컬럼명 */
label: string;
/** (선택) 그룹핑/카테고리 */
group?: string;
/** (선택) Excel에서의 헤더 */
excelHeader?: string;
/** (선택) 데이터 타입(예: date, string, number 등), 포맷 지정용 */
type?: string;
}
/**
* 기술영업 벤더 정보 테이블에서
* 어떤 컬럼들을 어떤 순서로 표시할 것인지 정의.
*/
export const techVendorColumnsConfig: VendorColumnConfig[] = [
{
id: "vendorCode",
label: "업체 코드",
excelHeader: "업체 코드",
},
{
id: "vendorName",
label: "업체명",
excelHeader: "업체명",
},
{
id: "techVendorType",
label: "벤더 타입",
excelHeader: "벤더 타입",
type: "string",
},
{
id: "workTypes",
label: "공종",
excelHeader: "공종",
type: "string",
},
{
id: "taxId",
label: "세금 ID",
excelHeader: "세금 ID",
type: "string",
},
{
id: "status",
label: "상태",
excelHeader: "상태",
type: "string",
},
{
id: "address",
label: "주소",
excelHeader: "주소",
},
{
id: "country",
label: "국가",
excelHeader: "국가",
},
{
id: "phone",
label: "전화번호",
excelHeader: "전화번호",
},
{
id: "email",
label: "이메일",
excelHeader: "이메일",
},
{
id: "website",
label: "웹사이트",
excelHeader: "웹사이트",
// group: "Metadata",
},
];
|