@carsayo/types 1.1.0 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/data/bankcode.d.ts +167 -0
- package/dist/data/banner.d.ts +36 -0
- package/dist/data/board.d.ts +32 -0
- package/dist/data/car.d.ts +867 -0
- package/dist/data/carPopularCategory.d.ts +20 -0
- package/dist/data/collaborator.d.ts +8 -0
- package/dist/data/index.d.ts +12 -0
- package/dist/data/popup.d.ts +20 -0
- package/dist/data/purchase.d.ts +18 -0
- package/dist/data/region.d.ts +1224 -0
- package/dist/data/role.d.ts +91 -0
- package/dist/data/system.d.ts +19 -0
- package/dist/data/term.d.ts +153 -0
- package/dist/index.d.ts +2 -7
- package/dist/types/index.d.ts +2 -0
- package/dist/types/modules/banner/dto.d.ts +35 -0
- package/dist/types/modules/banner/index.d.ts +2 -0
- package/dist/types/modules/banner/interface.d.ts +50 -0
- package/dist/types/modules/board/dto.d.ts +189 -0
- package/dist/types/modules/board/index.d.ts +3 -0
- package/dist/types/modules/board/interface.d.ts +233 -0
- package/dist/types/modules/board/type.d.ts +29 -0
- package/dist/types/modules/car/dto.d.ts +72 -0
- package/dist/types/modules/car/index.d.ts +3 -0
- package/dist/types/modules/car/interface.d.ts +249 -0
- package/dist/types/modules/car/type.d.ts +11 -0
- package/dist/types/modules/collaborator/dto.d.ts +10 -0
- package/dist/types/modules/collaborator/index.d.ts +1 -0
- package/dist/types/modules/common/index.d.ts +2 -0
- package/dist/types/modules/common/interface.d.ts +23 -0
- package/dist/types/modules/common/type.d.ts +25 -0
- package/dist/types/modules/file/dto.d.ts +17 -0
- package/dist/types/modules/file/index.d.ts +3 -0
- package/dist/types/modules/file/interface.d.ts +26 -0
- package/dist/types/modules/file/type.d.ts +13 -0
- package/dist/types/modules/history/dto.d.ts +12 -0
- package/dist/types/modules/history/index.d.ts +2 -0
- package/dist/types/modules/history/interface.d.ts +12 -0
- package/dist/types/modules/index.d.ts +15 -0
- package/dist/types/modules/inquiry/dto.d.ts +79 -0
- package/dist/types/modules/inquiry/index.d.ts +3 -0
- package/dist/types/modules/inquiry/interface.d.ts +37 -0
- package/dist/types/modules/inquiry/type.d.ts +14 -0
- package/dist/types/modules/member/dto.d.ts +587 -0
- package/dist/types/modules/member/index.d.ts +3 -0
- package/dist/types/modules/member/interface.d.ts +582 -0
- package/dist/types/modules/member/type.d.ts +73 -0
- package/dist/types/modules/notification/dto.d.ts +13 -0
- package/dist/types/modules/notification/index.d.ts +3 -0
- package/dist/types/modules/notification/interface.d.ts +19 -0
- package/dist/types/modules/notification/type.d.ts +5 -0
- package/dist/types/modules/order/dto.d.ts +446 -0
- package/dist/types/modules/order/index.d.ts +3 -0
- package/dist/types/modules/order/interface.d.ts +905 -0
- package/dist/types/modules/order/type.d.ts +161 -0
- package/dist/types/modules/popup/dto.d.ts +33 -0
- package/dist/types/modules/popup/index.d.ts +2 -0
- package/dist/types/modules/popup/interface.d.ts +49 -0
- package/dist/types/modules/purchase/dto.d.ts +9 -0
- package/dist/types/modules/purchase/index.d.ts +3 -0
- package/dist/types/modules/purchase/interface.d.ts +22 -0
- package/dist/types/modules/purchase/type.d.ts +11 -0
- package/dist/types/modules/system/dto.d.ts +13 -0
- package/dist/types/modules/system/index.d.ts +2 -0
- package/dist/types/modules/system/interface.d.ts +18 -0
- package/dist/types/modules/term/dto.d.ts +175 -0
- package/dist/types/modules/term/index.d.ts +2 -0
- package/dist/types/modules/term/interface.d.ts +45 -0
- package/dist/types/providers/coocon-usedcar/dto.d.ts +23 -0
- package/dist/types/providers/coocon-usedcar/index.d.ts +2 -0
- package/dist/types/providers/coocon-usedcar/interface.d.ts +300 -0
- package/dist/types/providers/firebase-message/dto.d.ts +83 -0
- package/dist/types/providers/firebase-message/index.d.ts +2 -0
- package/dist/types/providers/firebase-message/interface.d.ts +4 -0
- package/dist/types/providers/gabia-sms/dto.d.ts +31 -0
- package/dist/types/providers/gabia-sms/index.d.ts +1 -0
- package/dist/types/providers/index.d.ts +7 -0
- package/dist/types/providers/mailer/dto.d.ts +4 -0
- package/dist/types/providers/mailer/index.d.ts +1 -0
- package/dist/types/providers/niceapi/dto.d.ts +15 -0
- package/dist/types/providers/niceapi/index.d.ts +2 -0
- package/dist/types/providers/niceapi/interface.d.ts +22 -0
- package/dist/types/providers/nicepayment/dto.d.ts +60 -0
- package/dist/types/providers/nicepayment/index.d.ts +3 -0
- package/dist/types/providers/nicepayment/interface.d.ts +168 -0
- package/dist/types/providers/nicepayment/type.d.ts +36 -0
- package/dist/validator/IsNullable.d.ts +3 -0
- package/package.json +5 -1
- package/dist/type/all.ts +0 -5402
- package/dist/type/data/bankcode.ts +0 -64
- package/dist/type/data/banner.ts +0 -45
- package/dist/type/data/board.ts +0 -37
- package/dist/type/data/car.ts +0 -1015
- package/dist/type/data/carPopularCategory.ts +0 -28
- package/dist/type/data/collaborator.ts +0 -13
- package/dist/type/data/popup.ts +0 -26
- package/dist/type/data/purchase.ts +0 -24
- package/dist/type/data/region.ts +0 -348
- package/dist/type/data/role.ts +0 -118
- package/dist/type/data/system.ts +0 -31
- package/dist/type/data/term.ts +0 -184
- package/dist/type/history.ts +0 -25
- package/dist/type/interface/type.ts +0 -43
- package/dist/type/order.ts +0 -696
- package/dist/type/purchase.ts +0 -286
- package/dist/type/selling.ts +0 -169
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/** 카사요 서비스에서 사용되는 권한
|
|
2
|
+
* @notice 이 파일은 서비스 내 다음 파일들과 일치하여야 합니다
|
|
3
|
+
* @frontend 카사요 앱 리액트 프로젝트, 카사요 어드민 웹
|
|
4
|
+
* @backend Prisma, Main_Service
|
|
5
|
+
*/
|
|
6
|
+
export declare const RoleData: readonly [{
|
|
7
|
+
readonly id: "SU";
|
|
8
|
+
readonly name: "최고 관리자";
|
|
9
|
+
readonly description: "모든 권한을 가지고 있습니다";
|
|
10
|
+
readonly member_type: "admin";
|
|
11
|
+
}, {
|
|
12
|
+
readonly id: "AD_DASH";
|
|
13
|
+
readonly name: "대시보드";
|
|
14
|
+
readonly description: "대시보드를 볼 수 있습니다.";
|
|
15
|
+
readonly member_type: "admin";
|
|
16
|
+
}, {
|
|
17
|
+
readonly id: "AD_TOTALMB";
|
|
18
|
+
readonly name: "통합 고객 관리";
|
|
19
|
+
readonly description: "통합 고객 관리가 활성화됩니다.";
|
|
20
|
+
readonly member_type: "admin";
|
|
21
|
+
}, {
|
|
22
|
+
readonly id: "AD_CM";
|
|
23
|
+
readonly name: "고객 관리";
|
|
24
|
+
readonly description: "고객 관리 대메뉴가 활성화됩니다";
|
|
25
|
+
readonly member_type: "admin";
|
|
26
|
+
}, {
|
|
27
|
+
readonly id: "AD_OD";
|
|
28
|
+
readonly name: "신청서 관리";
|
|
29
|
+
readonly description: "신청서 관리 대메뉴가 활성화됩니다";
|
|
30
|
+
readonly member_type: "admin";
|
|
31
|
+
}, {
|
|
32
|
+
readonly id: "AD_PG";
|
|
33
|
+
readonly name: "결제 관리";
|
|
34
|
+
readonly description: "결제 관리 대메뉴가 활성화됩니다";
|
|
35
|
+
readonly member_type: "admin";
|
|
36
|
+
}, {
|
|
37
|
+
readonly id: "AD_MK";
|
|
38
|
+
readonly name: "마케팅 관리";
|
|
39
|
+
readonly description: "마케팅 관리 대메뉴가 활성화됩니다";
|
|
40
|
+
readonly member_type: "admin";
|
|
41
|
+
}, {
|
|
42
|
+
readonly id: "AD_IQ";
|
|
43
|
+
readonly name: "문의 관리";
|
|
44
|
+
readonly description: "문의 관리 대메뉴가 활성화됩니다";
|
|
45
|
+
readonly member_type: "admin";
|
|
46
|
+
}, {
|
|
47
|
+
readonly id: "AD_BD";
|
|
48
|
+
readonly name: "게시판 관리";
|
|
49
|
+
readonly description: "게시판 관리 대메뉴가 활성화됩니다";
|
|
50
|
+
readonly member_type: "admin";
|
|
51
|
+
}, {
|
|
52
|
+
readonly id: "AD_CT";
|
|
53
|
+
readonly name: "콘텐츠 관리";
|
|
54
|
+
readonly description: "콘텐츠 관리 대메뉴가 활성화됩니다";
|
|
55
|
+
readonly member_type: "admin";
|
|
56
|
+
}, {
|
|
57
|
+
readonly id: "CB_CT";
|
|
58
|
+
readonly name: "(주)리렌 관리자";
|
|
59
|
+
readonly description: "(주)리렌 관리자 대메뉴가 활성화됩니다";
|
|
60
|
+
readonly member_type: "admin";
|
|
61
|
+
}];
|
|
62
|
+
export declare const RoleGroupData: readonly [{
|
|
63
|
+
readonly id: "SuperAdmin";
|
|
64
|
+
readonly name: "최고 관리자";
|
|
65
|
+
readonly description: "모든 권한을 가지고 있습니다";
|
|
66
|
+
readonly member_type: "admin";
|
|
67
|
+
}, {
|
|
68
|
+
readonly id: "SubAdmin";
|
|
69
|
+
readonly name: "부 관리자";
|
|
70
|
+
readonly description: "일부 권한을 가지고 있습니다";
|
|
71
|
+
readonly member_type: "admin";
|
|
72
|
+
}, {
|
|
73
|
+
readonly id: "Manager";
|
|
74
|
+
readonly name: "운영 관리자";
|
|
75
|
+
readonly description: "운영에 필요한 권한만 가지고 있습니다";
|
|
76
|
+
readonly member_type: "admin";
|
|
77
|
+
}, {
|
|
78
|
+
readonly id: "OrderManager";
|
|
79
|
+
readonly name: "주문 관리자";
|
|
80
|
+
readonly description: "주문 관리자입니다";
|
|
81
|
+
readonly member_type: "admin";
|
|
82
|
+
}, {
|
|
83
|
+
readonly id: "BoardManager";
|
|
84
|
+
readonly name: "게시판 관리자";
|
|
85
|
+
readonly description: "게시판 관리자입니다";
|
|
86
|
+
readonly member_type: "admin";
|
|
87
|
+
}];
|
|
88
|
+
export declare const RoleId: ("SU" | "AD_DASH" | "AD_TOTALMB" | "AD_CM" | "AD_OD" | "AD_PG" | "AD_MK" | "AD_IQ" | "AD_BD" | "AD_CT" | "CB_CT")[];
|
|
89
|
+
export type RoleId = (typeof RoleData)[number]['id'];
|
|
90
|
+
export declare const RoleGroupId: ("SuperAdmin" | "SubAdmin" | "Manager" | "OrderManager" | "BoardManager")[];
|
|
91
|
+
export type RoleGroupId = (typeof RoleGroupData)[number]['id'];
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare const SystemSetting: readonly [{
|
|
2
|
+
readonly id: 1301;
|
|
3
|
+
readonly title: "신차 매니저 리스 접근 허용";
|
|
4
|
+
readonly description: "활성화 될 경우 신차 매니저가 입찰 중인 리스 주문을 확인할 수 있게 합니다.";
|
|
5
|
+
}, {
|
|
6
|
+
readonly id: 1311;
|
|
7
|
+
readonly title: "신차 매니저 장기렌트 접근 허용";
|
|
8
|
+
readonly description: "활성화 될 경우 신차 매니저가 입찰 중인 장기렌트 주문을 확인할 수 있게 합니다.";
|
|
9
|
+
}, {
|
|
10
|
+
readonly id: 1321;
|
|
11
|
+
readonly title: "리스/렌트 매니저 할부 접근 허용";
|
|
12
|
+
readonly description: "활성화 될 경우 리스/렌트 매니저가 입찰 중인 신차 할부 주문을 확인할 수 있게 합니다.";
|
|
13
|
+
}, {
|
|
14
|
+
readonly id: 1331;
|
|
15
|
+
readonly title: "리스/렌트 매니저 일시불 접근 허용";
|
|
16
|
+
readonly description: "활성화 될 경우 리스/렌트 매니저가 입찰 중인 신차 일시불 주문을 확인할 수 있게 합니다.";
|
|
17
|
+
}];
|
|
18
|
+
export declare const SystemSettingId: (1301 | 1311 | 1321 | 1331)[];
|
|
19
|
+
export type SystemSettingId = (typeof SystemSetting)[number]['id'];
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/** 카사요 서비스에서 사용되는 약관
|
|
2
|
+
* @description 회원의 동의를 받는 모든 내용이 포함됩니다
|
|
3
|
+
* @notice 이 파일은 서비스 내 다음 파일들과 일치하여야 합니다
|
|
4
|
+
* @frontend 카사요 앱 리액트 프로젝트, 카사요 어드민 웹
|
|
5
|
+
* @backend Prisma, Main_Service
|
|
6
|
+
*/
|
|
7
|
+
export declare const TermCategoryData: readonly [{
|
|
8
|
+
readonly id: 10100;
|
|
9
|
+
readonly title: "서비스 이용약관";
|
|
10
|
+
readonly description: "일반 고객의 서비스 이용약관입니다";
|
|
11
|
+
readonly member_type: "customer";
|
|
12
|
+
readonly dealer_type: any;
|
|
13
|
+
readonly isEssential: true;
|
|
14
|
+
readonly isContent: true;
|
|
15
|
+
readonly isActive: true;
|
|
16
|
+
}, {
|
|
17
|
+
readonly id: 10200;
|
|
18
|
+
readonly title: "개인정보 처리방침";
|
|
19
|
+
readonly description: "일반 고객의 개인정보 처리방침입니다";
|
|
20
|
+
readonly member_type: "customer";
|
|
21
|
+
readonly dealer_type: any;
|
|
22
|
+
readonly isEssential: true;
|
|
23
|
+
readonly isContent: true;
|
|
24
|
+
readonly isActive: true;
|
|
25
|
+
}, {
|
|
26
|
+
readonly id: 10500;
|
|
27
|
+
readonly title: "미스터리 쇼퍼가 아닙니다";
|
|
28
|
+
readonly description: "일반 고객의 미스터리 쇼퍼가 아님을 나타내는 약관";
|
|
29
|
+
readonly member_type: "customer";
|
|
30
|
+
readonly dealer_type: any;
|
|
31
|
+
readonly isEssential: true;
|
|
32
|
+
readonly isContent: true;
|
|
33
|
+
readonly isActive: true;
|
|
34
|
+
}, {
|
|
35
|
+
readonly id: 10600;
|
|
36
|
+
readonly title: "실구매자 또는 실판매자입니다";
|
|
37
|
+
readonly description: "일반 고객의 실구매자 또는 실판매자임을 나타내는 약관";
|
|
38
|
+
readonly member_type: "customer";
|
|
39
|
+
readonly dealer_type: any;
|
|
40
|
+
readonly isEssential: true;
|
|
41
|
+
readonly isContent: true;
|
|
42
|
+
readonly isActive: true;
|
|
43
|
+
}, {
|
|
44
|
+
readonly id: 10700;
|
|
45
|
+
readonly title: "무분별한 구매/판매 요청은 하지 않습니다";
|
|
46
|
+
readonly description: "일반 고객의 무분별한 구매/판매 요청은 하지 않겠다는 약관";
|
|
47
|
+
readonly member_type: "customer";
|
|
48
|
+
readonly dealer_type: any;
|
|
49
|
+
readonly isEssential: true;
|
|
50
|
+
readonly isContent: false;
|
|
51
|
+
readonly isActive: true;
|
|
52
|
+
}, {
|
|
53
|
+
readonly id: 20100;
|
|
54
|
+
readonly title: "서비스 이용약관";
|
|
55
|
+
readonly description: "딜러 고객의 서비스 이용약관입니다";
|
|
56
|
+
readonly member_type: "dealer";
|
|
57
|
+
readonly dealer_type: any;
|
|
58
|
+
readonly isEssential: true;
|
|
59
|
+
readonly isContent: true;
|
|
60
|
+
readonly isActive: true;
|
|
61
|
+
}, {
|
|
62
|
+
readonly id: 20200;
|
|
63
|
+
readonly title: "개인정보 처리방침";
|
|
64
|
+
readonly description: "카매니저의 수집이용 약관입니다";
|
|
65
|
+
readonly member_type: "dealer";
|
|
66
|
+
readonly dealer_type: any;
|
|
67
|
+
readonly isEssential: true;
|
|
68
|
+
readonly isContent: true;
|
|
69
|
+
readonly isActive: true;
|
|
70
|
+
}, {
|
|
71
|
+
readonly id: 24090;
|
|
72
|
+
readonly title: "이용방법 & 거래 주의사항";
|
|
73
|
+
readonly description: "신차 카매니저의 서비스 이용 및 거래에 대한 약관입니다";
|
|
74
|
+
readonly member_type: "dealer";
|
|
75
|
+
readonly dealer_type: "newcar";
|
|
76
|
+
readonly isEssential: true;
|
|
77
|
+
readonly isContent: true;
|
|
78
|
+
readonly isActive: true;
|
|
79
|
+
}, {
|
|
80
|
+
readonly id: 24100;
|
|
81
|
+
readonly title: "국내차/수입차 공식 직원입니다.";
|
|
82
|
+
readonly description: "신차 공식 직원인지에 대한 확인";
|
|
83
|
+
readonly member_type: "dealer";
|
|
84
|
+
readonly dealer_type: "newcar";
|
|
85
|
+
readonly isEssential: true;
|
|
86
|
+
readonly isContent: true;
|
|
87
|
+
readonly isActive: true;
|
|
88
|
+
}, {
|
|
89
|
+
readonly id: 25090;
|
|
90
|
+
readonly title: "이용방법 & 거래 주의사항";
|
|
91
|
+
readonly description: "중고차 카매니저의 서비스 이용 및 거래에 대한 약관입니다";
|
|
92
|
+
readonly member_type: "dealer";
|
|
93
|
+
readonly dealer_type: "usedcar";
|
|
94
|
+
readonly isEssential: true;
|
|
95
|
+
readonly isContent: true;
|
|
96
|
+
readonly isActive: true;
|
|
97
|
+
}, {
|
|
98
|
+
readonly id: 25100;
|
|
99
|
+
readonly title: "자동차매매사업조합연합회 소속입니다.";
|
|
100
|
+
readonly description: "중고차 딜러가 자동차매매사업조합연합회 소속인지 여부를 선택합니다";
|
|
101
|
+
readonly member_type: "dealer";
|
|
102
|
+
readonly dealer_type: "usedcar";
|
|
103
|
+
readonly isEssential: true;
|
|
104
|
+
readonly isContent: true;
|
|
105
|
+
readonly isActive: true;
|
|
106
|
+
}, {
|
|
107
|
+
readonly id: 26090;
|
|
108
|
+
readonly title: "이용방법 & 거래 주의사항";
|
|
109
|
+
readonly description: "리스렌트 카매니저의 서비스 이용 및 거래에 대한 약관입니다";
|
|
110
|
+
readonly member_type: "dealer";
|
|
111
|
+
readonly dealer_type: "leaseRent";
|
|
112
|
+
readonly isEssential: true;
|
|
113
|
+
readonly isContent: true;
|
|
114
|
+
readonly isActive: true;
|
|
115
|
+
}, {
|
|
116
|
+
readonly id: 26100;
|
|
117
|
+
readonly title: "대출성 상품 판매대리 중개업자입니다.";
|
|
118
|
+
readonly description: "대출성 상품 판매대리 중개업자 자격이 있다는 것에 동의합니다";
|
|
119
|
+
readonly member_type: "dealer";
|
|
120
|
+
readonly dealer_type: "leaseRent";
|
|
121
|
+
readonly isEssential: true;
|
|
122
|
+
readonly isContent: true;
|
|
123
|
+
readonly isActive: true;
|
|
124
|
+
}, {
|
|
125
|
+
readonly id: 95100;
|
|
126
|
+
readonly title: "푸시 알람 수신 동의";
|
|
127
|
+
readonly description: "푸시 알람을 통해 광고성 메시지를 받겠다는 약관";
|
|
128
|
+
readonly member_type: any;
|
|
129
|
+
readonly dealer_type: any;
|
|
130
|
+
readonly isEssential: false;
|
|
131
|
+
readonly isContent: true;
|
|
132
|
+
readonly isActive: true;
|
|
133
|
+
}, {
|
|
134
|
+
readonly id: 95200;
|
|
135
|
+
readonly title: "메시지 수신 동의";
|
|
136
|
+
readonly description: "문자 메시지를 통해 광고성 메시지를 받겠다는 약관";
|
|
137
|
+
readonly member_type: any;
|
|
138
|
+
readonly dealer_type: any;
|
|
139
|
+
readonly isEssential: false;
|
|
140
|
+
readonly isContent: true;
|
|
141
|
+
readonly isActive: true;
|
|
142
|
+
}, {
|
|
143
|
+
readonly id: 95300;
|
|
144
|
+
readonly title: "이메일 수신 동의";
|
|
145
|
+
readonly description: "이메일을 통해 광고성 메시지를 받겠다는 약관";
|
|
146
|
+
readonly member_type: any;
|
|
147
|
+
readonly dealer_type: any;
|
|
148
|
+
readonly isEssential: false;
|
|
149
|
+
readonly isContent: true;
|
|
150
|
+
readonly isActive: true;
|
|
151
|
+
}];
|
|
152
|
+
export declare const TermCategoryId: (10100 | 10200 | 10500 | 10600 | 10700 | 20100 | 20200 | 24090 | 24100 | 25090 | 25100 | 26090 | 26100 | 95100 | 95200 | 95300)[];
|
|
153
|
+
export type TermCategoryId = (typeof TermCategoryData)[number]['id'];
|
package/dist/index.d.ts
CHANGED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** DTO는 서버단에 요청을 보낼 때 사용하는 클래스 유형으로 서버단에서 이 곳에 정의된 대로 유효성 검사를 처리합니다. */
|
|
2
|
+
import { BannerCategoryId } from "../../../data";
|
|
3
|
+
export declare class BannerCategoryIdDTO {
|
|
4
|
+
categoryId: BannerCategoryId;
|
|
5
|
+
}
|
|
6
|
+
export declare class BannerCreateDTO {
|
|
7
|
+
categoryId: BannerCategoryId;
|
|
8
|
+
title?: string;
|
|
9
|
+
/** 배너로 사용할 파일 아이디 */
|
|
10
|
+
fileId: string;
|
|
11
|
+
/** 배너 클릭 시 넘어갈 URL Path */
|
|
12
|
+
redirectPath?: string;
|
|
13
|
+
/** 배너가 노출 시작되는 시기를 정의합니다 */
|
|
14
|
+
started_at?: Date;
|
|
15
|
+
/** 배너가 노출 종료되는 시기를 정의합니다 */
|
|
16
|
+
ended_at?: Date;
|
|
17
|
+
}
|
|
18
|
+
export declare class BannerUpdateDTO {
|
|
19
|
+
bannerId: number;
|
|
20
|
+
/** null일 경우 값을 제거합니다 */
|
|
21
|
+
title?: string | null;
|
|
22
|
+
/** 배너로 사용할 파일 아이디 */
|
|
23
|
+
fileId?: string;
|
|
24
|
+
/** 활성화 상태 변경 여부 */
|
|
25
|
+
isActivate?: boolean;
|
|
26
|
+
/** 배너 클릭 시 넘어갈 URL Path */
|
|
27
|
+
redirectPath?: string | null;
|
|
28
|
+
/** 배너가 노출 시작되는 시기를 정의합니다 */
|
|
29
|
+
started_at?: Date | null;
|
|
30
|
+
/** 배너가 노출 종료되는 시기를 정의합니다 */
|
|
31
|
+
ended_at?: Date | null;
|
|
32
|
+
}
|
|
33
|
+
export declare class BannerIdDTO {
|
|
34
|
+
bannerId: number;
|
|
35
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { BannerCategoryId } from "../../../data";
|
|
2
|
+
import { ContentTarget } from "../common";
|
|
3
|
+
import { FileInfo } from "../file";
|
|
4
|
+
import { MemberShort } from "../member";
|
|
5
|
+
export interface BannerContent {
|
|
6
|
+
id: number;
|
|
7
|
+
category: BannerCategory;
|
|
8
|
+
title: string | null;
|
|
9
|
+
bannerFile: FileInfo;
|
|
10
|
+
redirectPath: string | null;
|
|
11
|
+
count_hit: number;
|
|
12
|
+
/** 배너 노출 시작 시점 */
|
|
13
|
+
started_at: Date | null;
|
|
14
|
+
/**
|
|
15
|
+
* @description 배너 노출 종료 시점
|
|
16
|
+
* @case null일 경우 이 배너는 영구적으로 보여집니다
|
|
17
|
+
*/
|
|
18
|
+
ended_at: Date | null;
|
|
19
|
+
}
|
|
20
|
+
export interface BannerListData {
|
|
21
|
+
id: number;
|
|
22
|
+
category: BannerCategory;
|
|
23
|
+
title: string | null;
|
|
24
|
+
writer: MemberShort;
|
|
25
|
+
redirectPath: string | null;
|
|
26
|
+
count_hit: number;
|
|
27
|
+
isActivate: boolean;
|
|
28
|
+
created_at: Date;
|
|
29
|
+
updated_at: Date;
|
|
30
|
+
/** 배너 노출 시작 시점 */
|
|
31
|
+
started_at: Date | null;
|
|
32
|
+
/**
|
|
33
|
+
* @description 배너 노출 종료 시점
|
|
34
|
+
* @case null일 경우 이 배너는 영구적으로 보여집니다
|
|
35
|
+
*/
|
|
36
|
+
ended_at: Date | null;
|
|
37
|
+
}
|
|
38
|
+
export interface BannerCategory {
|
|
39
|
+
id: BannerCategoryId;
|
|
40
|
+
name: string;
|
|
41
|
+
description: string;
|
|
42
|
+
/** 배너가 출력될 적절한 가로 크기(px)
|
|
43
|
+
* 이 가로세로 비율을 앱에서 유지합니다 */
|
|
44
|
+
proper_width: number;
|
|
45
|
+
/** 배너가 출력될 적절한 세로 크기(px)
|
|
46
|
+
* 이 가로세로 비율을 앱에서 유지합니다 */
|
|
47
|
+
proper_height: number;
|
|
48
|
+
count_hit: number;
|
|
49
|
+
target: ContentTarget;
|
|
50
|
+
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
/** DTO는 서버단에 요청을 보낼 때 사용하는 클래스 유형으로 서버단에서 이 곳에 정의된 대로 유효성 검사를 처리합니다. */
|
|
2
|
+
import { Post_LikeHateState } from "./type";
|
|
3
|
+
import { BoardKey } from "../../../data";
|
|
4
|
+
/** 게시판 상세정보 가져오기 */
|
|
5
|
+
export declare class GetBoardInfoDTO {
|
|
6
|
+
boardKey: BoardKey;
|
|
7
|
+
}
|
|
8
|
+
/** 글 작성 */
|
|
9
|
+
export declare class CreatePostDTO {
|
|
10
|
+
/** 글이 작성될 게시판 */
|
|
11
|
+
boardKey: BoardKey;
|
|
12
|
+
title: string;
|
|
13
|
+
content: string;
|
|
14
|
+
content_html: string;
|
|
15
|
+
/** 글이 작성될 카테고리 */
|
|
16
|
+
categoryId: number;
|
|
17
|
+
/** 공개글 여부 */
|
|
18
|
+
isPublic: boolean;
|
|
19
|
+
/** 상단 고정글 여부
|
|
20
|
+
* @notice 이 옵션은 "Admin" 권한인 회원만 사용 가능합니다
|
|
21
|
+
*/
|
|
22
|
+
isImportant?: boolean;
|
|
23
|
+
/** 이 값이 True일 경우 guest_name, guest_password가 정의되어야 합니다 */
|
|
24
|
+
isGuestPost: boolean;
|
|
25
|
+
guest_name?: string;
|
|
26
|
+
guest_password?: string;
|
|
27
|
+
}
|
|
28
|
+
/** 글 수정 */
|
|
29
|
+
export declare class UpdatePostDTO {
|
|
30
|
+
boardKey: BoardKey;
|
|
31
|
+
postId: number;
|
|
32
|
+
title?: string;
|
|
33
|
+
content?: string;
|
|
34
|
+
content_html?: string;
|
|
35
|
+
categoryId?: number;
|
|
36
|
+
isPublic?: boolean;
|
|
37
|
+
/** 상단 고정글 여부
|
|
38
|
+
* @notice 이 옵션은 "Admin" 권한인 회원만 사용 가능합니다
|
|
39
|
+
*/
|
|
40
|
+
isImportant?: boolean;
|
|
41
|
+
guest_name?: string;
|
|
42
|
+
/**
|
|
43
|
+
* 비회원 글 수정 시 입력했던 비밀번호와 같은지 확인합니다
|
|
44
|
+
* @notice 비밀번호를 수정할 수는 없습니다
|
|
45
|
+
*/
|
|
46
|
+
guest_password?: string;
|
|
47
|
+
}
|
|
48
|
+
/** 글 제거 */
|
|
49
|
+
export declare class DeletePostDTO {
|
|
50
|
+
boardKey: BoardKey;
|
|
51
|
+
postId: number;
|
|
52
|
+
/** 비회원 작성 글일 경우 삭제시 해당 글 비밀번호를 입력하여야 합니다 */
|
|
53
|
+
guest_password?: string;
|
|
54
|
+
}
|
|
55
|
+
export declare class GetPostDTO {
|
|
56
|
+
boardKey: BoardKey;
|
|
57
|
+
postId: number;
|
|
58
|
+
/** 비회원 작성 글이며 비공개 글일 경우 해당 글의 비밀번호를 필요로 합니다 */
|
|
59
|
+
guest_password?: string;
|
|
60
|
+
}
|
|
61
|
+
/** 글 신고하기 */
|
|
62
|
+
export declare class ReportPostDTO {
|
|
63
|
+
boardKey: BoardKey;
|
|
64
|
+
postId: number;
|
|
65
|
+
content: string;
|
|
66
|
+
}
|
|
67
|
+
/** 글 좋아요,싫어요 업데이트 */
|
|
68
|
+
export declare class LikeHatePostDTO {
|
|
69
|
+
boardKey: BoardKey;
|
|
70
|
+
postId: number;
|
|
71
|
+
state: Post_LikeHateState;
|
|
72
|
+
}
|
|
73
|
+
/** 글 밴 먹이기
|
|
74
|
+
* @notice 어드민만 가능합니다
|
|
75
|
+
*/
|
|
76
|
+
export declare class UpdatePostBanStatusDTO {
|
|
77
|
+
boardKey: BoardKey;
|
|
78
|
+
postId: number;
|
|
79
|
+
isBanned: boolean;
|
|
80
|
+
}
|
|
81
|
+
/** 댓글 작성 */
|
|
82
|
+
export declare class CreateCommentDTO {
|
|
83
|
+
boardKey: BoardKey;
|
|
84
|
+
postId: number;
|
|
85
|
+
content: string;
|
|
86
|
+
/** 이 값이 True일 경우 guest_name, guest_password가 정의되어야 합니다 */
|
|
87
|
+
isGuestComment: boolean;
|
|
88
|
+
guest_name?: string;
|
|
89
|
+
guest_password?: string;
|
|
90
|
+
}
|
|
91
|
+
/** 대댓글 작성 */
|
|
92
|
+
export declare class CreateCommentReplyDTO {
|
|
93
|
+
boardKey: BoardKey;
|
|
94
|
+
commentId: number;
|
|
95
|
+
content: string;
|
|
96
|
+
/** 이 값이 True일 경우 guest_name, guest_password가 정의되어야 합니다 */
|
|
97
|
+
isGuestComment: boolean;
|
|
98
|
+
guest_name?: string;
|
|
99
|
+
guest_password?: string;
|
|
100
|
+
}
|
|
101
|
+
/** 댓글 수정 */
|
|
102
|
+
export declare class UpdateCommentDTO {
|
|
103
|
+
boardKey: BoardKey;
|
|
104
|
+
commentId: number;
|
|
105
|
+
content: string;
|
|
106
|
+
guest_name?: string;
|
|
107
|
+
/** 비회원 작성 댓글일 경우 수정시 해당 글 비밀번호를 입력하여야 합니다 */
|
|
108
|
+
guest_password?: string;
|
|
109
|
+
}
|
|
110
|
+
/** 대댓글 수정 */
|
|
111
|
+
export declare class UpdateCommentReplyDTO {
|
|
112
|
+
boardKey: BoardKey;
|
|
113
|
+
replyId: number;
|
|
114
|
+
content: string;
|
|
115
|
+
guest_name?: string;
|
|
116
|
+
/** 비회원 작성 대댓글일 경우 수정시 해당 글 비밀번호를 입력하여야 합니다 */
|
|
117
|
+
guest_password?: string;
|
|
118
|
+
}
|
|
119
|
+
/** 댓글 삭제 */
|
|
120
|
+
export declare class DeleteCommentDTO {
|
|
121
|
+
boardKey: BoardKey;
|
|
122
|
+
commentId: number;
|
|
123
|
+
/** 비회원 작성 댓글일 경우 삭제시 해당 글 비밀번호를 입력하여야 합니다 */
|
|
124
|
+
guest_password?: string;
|
|
125
|
+
}
|
|
126
|
+
/** 대댓글 삭제 */
|
|
127
|
+
export declare class DeleteCommentReplyDTO {
|
|
128
|
+
boardKey: BoardKey;
|
|
129
|
+
replyId: number;
|
|
130
|
+
/** 비회원 작성 대댓글일 경우 삭제시 해당 글 비밀번호를 입력하여야 합니다 */
|
|
131
|
+
guest_password?: string;
|
|
132
|
+
}
|
|
133
|
+
/** 댓글 밴 먹이기 */
|
|
134
|
+
export declare class UpdateCommentBanStatusDTO {
|
|
135
|
+
boardKey: BoardKey;
|
|
136
|
+
commentId: number;
|
|
137
|
+
isBanned: boolean;
|
|
138
|
+
}
|
|
139
|
+
/** 대댓글 밴 먹이기 */
|
|
140
|
+
export declare class UpdateCommentReplyBanStatusDTO {
|
|
141
|
+
boardKey: BoardKey;
|
|
142
|
+
replyId: number;
|
|
143
|
+
isBanned: boolean;
|
|
144
|
+
}
|
|
145
|
+
/** 댓글, 대댓글 신고하기 */
|
|
146
|
+
export declare class ReportCommentAndCommentReplyDTO {
|
|
147
|
+
boardKey: BoardKey;
|
|
148
|
+
commentId?: number;
|
|
149
|
+
replyId?: number;
|
|
150
|
+
content: string;
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* @description 글 리스트 검색
|
|
154
|
+
* @description Offset Paging 방식의 검색
|
|
155
|
+
*/
|
|
156
|
+
export declare class GetPostListDTO {
|
|
157
|
+
boardKey: BoardKey;
|
|
158
|
+
skip?: number;
|
|
159
|
+
take: number;
|
|
160
|
+
categoryId?: number;
|
|
161
|
+
option: SecrchPostOptionDTO | null;
|
|
162
|
+
search: SecrchPostDTO | null;
|
|
163
|
+
}
|
|
164
|
+
export declare class SecrchPostOptionDTO {
|
|
165
|
+
/**
|
|
166
|
+
* isPublic이 false인 비공개 글도 검색해 리스트에 넣는지 여부
|
|
167
|
+
*/
|
|
168
|
+
showPrivate?: boolean;
|
|
169
|
+
/**
|
|
170
|
+
* isBanned이 true인 밴된 글도 검색해 리스트에 넣는지 여부
|
|
171
|
+
*/
|
|
172
|
+
showBanned?: boolean;
|
|
173
|
+
}
|
|
174
|
+
export declare class SecrchPostDTO {
|
|
175
|
+
nickname?: string;
|
|
176
|
+
title?: string;
|
|
177
|
+
content?: string;
|
|
178
|
+
}
|
|
179
|
+
/** 글 조회수 증가 */
|
|
180
|
+
export declare class AddBoardClickCount {
|
|
181
|
+
boardKey: BoardKey;
|
|
182
|
+
postId: number;
|
|
183
|
+
}
|
|
184
|
+
/** 고정 글 설정 */
|
|
185
|
+
export declare class SetImportantPostDTO {
|
|
186
|
+
boardKey: BoardKey;
|
|
187
|
+
postId: number;
|
|
188
|
+
isImportant: boolean;
|
|
189
|
+
}
|