@carsayo/types 1.1.892080 → 1.1.892082

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.
Files changed (227) hide show
  1. package/dist/data/bankcode.d.ts +167 -0
  2. package/dist/data/bankcode.js +66 -0
  3. package/dist/data/board.d.ts +74 -0
  4. package/dist/data/board.js +56 -0
  5. package/dist/data/car.d.ts +822 -0
  6. package/dist/data/car.js +895 -0
  7. package/dist/data/carOptionRelationCategory.d.ts +20 -0
  8. package/dist/data/carOptionRelationCategory.js +28 -0
  9. package/dist/data/carPopularCategory.d.ts +20 -0
  10. package/dist/data/carPopularCategory.js +28 -0
  11. package/dist/data/collaborator.d.ts +9 -0
  12. package/dist/data/collaborator.js +18 -0
  13. package/dist/data/index.d.ts +11 -0
  14. package/dist/data/index.js +27 -0
  15. package/dist/data/purchase.d.ts +18 -0
  16. package/dist/data/purchase.js +25 -0
  17. package/dist/data/region.d.ts +1226 -0
  18. package/dist/data/region.js +267 -0
  19. package/dist/data/role.d.ts +121 -0
  20. package/dist/data/role.js +150 -0
  21. package/dist/data/sell_car.d.ts +57 -0
  22. package/dist/data/sell_car.js +71 -0
  23. package/dist/data/system.d.ts +19 -0
  24. package/dist/data/system.js +28 -0
  25. package/dist/data/term.d.ts +349 -0
  26. package/dist/data/term.js +395 -0
  27. package/dist/index.d.ts +2 -0
  28. package/dist/index.js +18 -0
  29. package/dist/types/index.d.ts +2 -0
  30. package/dist/types/index.js +18 -0
  31. package/dist/types/modules/accidentReport/dto.d.ts +73 -0
  32. package/dist/types/modules/accidentReport/dto.js +2 -0
  33. package/dist/types/modules/accidentReport/index.d.ts +3 -0
  34. package/dist/types/modules/accidentReport/index.js +19 -0
  35. package/dist/types/modules/accidentReport/interface.d.ts +309 -0
  36. package/dist/types/modules/accidentReport/interface.js +2 -0
  37. package/dist/types/modules/accidentReport/type.d.ts +36 -0
  38. package/dist/types/modules/accidentReport/type.js +35 -0
  39. package/dist/types/modules/board/dto.d.ts +189 -0
  40. package/dist/types/modules/board/dto.js +3 -0
  41. package/dist/types/modules/board/index.d.ts +3 -0
  42. package/dist/types/modules/board/index.js +19 -0
  43. package/dist/types/modules/board/interface.d.ts +233 -0
  44. package/dist/types/modules/board/interface.js +2 -0
  45. package/dist/types/modules/board/type.d.ts +30 -0
  46. package/dist/types/modules/board/type.js +8 -0
  47. package/dist/types/modules/car/dto.d.ts +404 -0
  48. package/dist/types/modules/car/dto.js +15 -0
  49. package/dist/types/modules/car/index.d.ts +3 -0
  50. package/dist/types/modules/car/index.js +19 -0
  51. package/dist/types/modules/car/interface.d.ts +594 -0
  52. package/dist/types/modules/car/interface.js +2 -0
  53. package/dist/types/modules/car/type.d.ts +11 -0
  54. package/dist/types/modules/car/type.js +13 -0
  55. package/dist/types/modules/chat/constants.d.ts +2 -0
  56. package/dist/types/modules/chat/constants.js +5 -0
  57. package/dist/types/modules/chat/dto.d.ts +4 -0
  58. package/dist/types/modules/chat/dto.js +2 -0
  59. package/dist/types/modules/chat/index.d.ts +6 -0
  60. package/dist/types/modules/chat/index.js +22 -0
  61. package/dist/types/modules/chat/type.d.ts +117 -0
  62. package/dist/types/modules/chat/type.js +17 -0
  63. package/dist/types/modules/chat/type.opponent.additionalInfo.d.ts +7 -0
  64. package/dist/types/modules/chat/type.opponent.additionalInfo.js +2 -0
  65. package/dist/types/modules/chat/type.room.additionalInfo.d.ts +52 -0
  66. package/dist/types/modules/chat/type.room.additionalInfo.js +2 -0
  67. package/dist/types/modules/chat/type.socket.d.ts +46 -0
  68. package/dist/types/modules/chat/type.socket.js +2 -0
  69. package/dist/types/modules/collaborator/dto.d.ts +10 -0
  70. package/dist/types/modules/collaborator/dto.js +3 -0
  71. package/dist/types/modules/collaborator/index.d.ts +1 -0
  72. package/dist/types/modules/collaborator/index.js +17 -0
  73. package/dist/types/modules/common/enum.d.ts +65 -0
  74. package/dist/types/modules/common/enum.js +69 -0
  75. package/dist/types/modules/common/index.d.ts +3 -0
  76. package/dist/types/modules/common/index.js +19 -0
  77. package/dist/types/modules/common/interface.d.ts +40 -0
  78. package/dist/types/modules/common/interface.js +2 -0
  79. package/dist/types/modules/common/type.d.ts +14 -0
  80. package/dist/types/modules/common/type.js +13 -0
  81. package/dist/types/modules/data/dto.d.ts +4 -0
  82. package/dist/types/modules/data/dto.js +7 -0
  83. package/dist/types/modules/data/index.d.ts +2 -0
  84. package/dist/types/modules/data/index.js +18 -0
  85. package/dist/types/modules/data/interface.d.ts +6 -0
  86. package/dist/types/modules/data/interface.js +2 -0
  87. package/dist/types/modules/file/dto.d.ts +18 -0
  88. package/dist/types/modules/file/dto.js +3 -0
  89. package/dist/types/modules/file/index.d.ts +3 -0
  90. package/dist/types/modules/file/index.js +19 -0
  91. package/dist/types/modules/file/interface.d.ts +26 -0
  92. package/dist/types/modules/file/interface.js +2 -0
  93. package/dist/types/modules/file/type.d.ts +13 -0
  94. package/dist/types/modules/file/type.js +15 -0
  95. package/dist/types/modules/history/dto.d.ts +13 -0
  96. package/dist/types/modules/history/dto.js +3 -0
  97. package/dist/types/modules/history/index.d.ts +2 -0
  98. package/dist/types/modules/history/index.js +18 -0
  99. package/dist/types/modules/history/interface.d.ts +12 -0
  100. package/dist/types/modules/history/interface.js +2 -0
  101. package/dist/types/modules/index.d.ts +20 -0
  102. package/dist/types/modules/index.js +36 -0
  103. package/dist/types/modules/inquiry/dto.d.ts +79 -0
  104. package/dist/types/modules/inquiry/dto.js +2 -0
  105. package/dist/types/modules/inquiry/index.d.ts +3 -0
  106. package/dist/types/modules/inquiry/index.js +19 -0
  107. package/dist/types/modules/inquiry/interface.d.ts +37 -0
  108. package/dist/types/modules/inquiry/interface.js +2 -0
  109. package/dist/types/modules/inquiry/type.d.ts +14 -0
  110. package/dist/types/modules/inquiry/type.js +15 -0
  111. package/dist/types/modules/insurance/dto.d.ts +88 -0
  112. package/dist/types/modules/insurance/dto.js +3 -0
  113. package/dist/types/modules/insurance/index.d.ts +2 -0
  114. package/dist/types/modules/insurance/index.js +18 -0
  115. package/dist/types/modules/insurance/interface.d.ts +58 -0
  116. package/dist/types/modules/insurance/interface.js +2 -0
  117. package/dist/types/modules/member/dto.d.ts +677 -0
  118. package/dist/types/modules/member/dto.js +3 -0
  119. package/dist/types/modules/member/index.d.ts +3 -0
  120. package/dist/types/modules/member/index.js +19 -0
  121. package/dist/types/modules/member/interface.d.ts +696 -0
  122. package/dist/types/modules/member/interface.js +2 -0
  123. package/dist/types/modules/member/type.d.ts +92 -0
  124. package/dist/types/modules/member/type.js +86 -0
  125. package/dist/types/modules/message/dto.d.ts +15 -0
  126. package/dist/types/modules/message/dto.js +2 -0
  127. package/dist/types/modules/message/index.d.ts +3 -0
  128. package/dist/types/modules/message/index.js +19 -0
  129. package/dist/types/modules/message/interface.d.ts +20 -0
  130. package/dist/types/modules/message/interface.js +2 -0
  131. package/dist/types/modules/message/type.d.ts +22 -0
  132. package/dist/types/modules/message/type.js +22 -0
  133. package/dist/types/modules/notification/dto.d.ts +13 -0
  134. package/dist/types/modules/notification/dto.js +3 -0
  135. package/dist/types/modules/notification/index.d.ts +3 -0
  136. package/dist/types/modules/notification/index.js +19 -0
  137. package/dist/types/modules/notification/interface.d.ts +19 -0
  138. package/dist/types/modules/notification/interface.js +2 -0
  139. package/dist/types/modules/notification/type.d.ts +5 -0
  140. package/dist/types/modules/notification/type.js +7 -0
  141. package/dist/types/modules/order/dto.d.ts +446 -0
  142. package/dist/types/modules/order/dto.js +16 -0
  143. package/dist/types/modules/order/index.d.ts +3 -0
  144. package/dist/types/modules/order/index.js +19 -0
  145. package/dist/types/modules/order/interface.d.ts +913 -0
  146. package/dist/types/modules/order/interface.js +2 -0
  147. package/dist/types/modules/order/type.d.ts +160 -0
  148. package/dist/types/modules/order/type.js +147 -0
  149. package/dist/types/modules/partners/dto.d.ts +37 -0
  150. package/dist/types/modules/partners/dto.js +11 -0
  151. package/dist/types/modules/partners/index.d.ts +3 -0
  152. package/dist/types/modules/partners/index.js +19 -0
  153. package/dist/types/modules/partners/interface.d.ts +40 -0
  154. package/dist/types/modules/partners/interface.js +2 -0
  155. package/dist/types/modules/partners/type.d.ts +12 -0
  156. package/dist/types/modules/partners/type.js +13 -0
  157. package/dist/types/modules/repair/constant.d.ts +28 -0
  158. package/dist/types/modules/repair/constant.js +139 -0
  159. package/dist/types/modules/repair/dto.d.ts +96 -0
  160. package/dist/types/modules/repair/dto.js +2 -0
  161. package/dist/types/modules/repair/index.d.ts +4 -0
  162. package/dist/types/modules/repair/index.js +20 -0
  163. package/dist/types/modules/repair/interface.d.ts +659 -0
  164. package/dist/types/modules/repair/interface.js +2 -0
  165. package/dist/types/modules/repair/type.d.ts +64 -0
  166. package/dist/types/modules/repair/type.js +71 -0
  167. package/dist/types/modules/sellMyCar/constant.d.ts +54 -0
  168. package/dist/types/modules/sellMyCar/constant.js +117 -0
  169. package/dist/types/modules/sellMyCar/dto-admin.d.ts +259 -0
  170. package/dist/types/modules/sellMyCar/dto-admin.js +2 -0
  171. package/dist/types/modules/sellMyCar/dto.d.ts +186 -0
  172. package/dist/types/modules/sellMyCar/dto.js +15 -0
  173. package/dist/types/modules/sellMyCar/index.d.ts +9 -0
  174. package/dist/types/modules/sellMyCar/index.js +25 -0
  175. package/dist/types/modules/sellMyCar/interface-admin.d.ts +85 -0
  176. package/dist/types/modules/sellMyCar/interface-admin.js +23 -0
  177. package/dist/types/modules/sellMyCar/interface-faq.d.ts +52 -0
  178. package/dist/types/modules/sellMyCar/interface-faq.js +22 -0
  179. package/dist/types/modules/sellMyCar/interface-member.d.ts +252 -0
  180. package/dist/types/modules/sellMyCar/interface-member.js +16 -0
  181. package/dist/types/modules/sellMyCar/interface-notice.d.ts +28 -0
  182. package/dist/types/modules/sellMyCar/interface-notice.js +2 -0
  183. package/dist/types/modules/sellMyCar/interface.d.ts +1075 -0
  184. package/dist/types/modules/sellMyCar/interface.js +7 -0
  185. package/dist/types/modules/sellMyCar/type.d.ts +203 -0
  186. package/dist/types/modules/sellMyCar/type.js +199 -0
  187. package/dist/types/modules/system/dto.d.ts +13 -0
  188. package/dist/types/modules/system/dto.js +3 -0
  189. package/dist/types/modules/system/index.d.ts +2 -0
  190. package/dist/types/modules/system/index.js +18 -0
  191. package/dist/types/modules/system/interface.d.ts +18 -0
  192. package/dist/types/modules/system/interface.js +2 -0
  193. package/dist/types/modules/term/dto.d.ts +171 -0
  194. package/dist/types/modules/term/dto.js +3 -0
  195. package/dist/types/modules/term/index.d.ts +3 -0
  196. package/dist/types/modules/term/index.js +19 -0
  197. package/dist/types/modules/term/interface.d.ts +52 -0
  198. package/dist/types/modules/term/interface.js +2 -0
  199. package/dist/types/modules/term/type.d.ts +11 -0
  200. package/dist/types/modules/term/type.js +13 -0
  201. package/dist/types/providers/coocon-usedcar/constant.d.ts +46 -0
  202. package/dist/types/providers/coocon-usedcar/constant.js +673 -0
  203. package/dist/types/providers/coocon-usedcar/dto.d.ts +23 -0
  204. package/dist/types/providers/coocon-usedcar/dto.js +3 -0
  205. package/dist/types/providers/coocon-usedcar/index.d.ts +3 -0
  206. package/dist/types/providers/coocon-usedcar/index.js +19 -0
  207. package/dist/types/providers/coocon-usedcar/interface.d.ts +305 -0
  208. package/dist/types/providers/coocon-usedcar/interface.js +2 -0
  209. package/dist/types/providers/firebase-message/dto.d.ts +56 -0
  210. package/dist/types/providers/firebase-message/dto.js +3 -0
  211. package/dist/types/providers/firebase-message/index.d.ts +2 -0
  212. package/dist/types/providers/firebase-message/index.js +18 -0
  213. package/dist/types/providers/firebase-message/interface.d.ts +4 -0
  214. package/dist/types/providers/firebase-message/interface.js +2 -0
  215. package/dist/types/providers/gabia-sms/dto.d.ts +31 -0
  216. package/dist/types/providers/gabia-sms/dto.js +3 -0
  217. package/dist/types/providers/gabia-sms/index.d.ts +1 -0
  218. package/dist/types/providers/gabia-sms/index.js +17 -0
  219. package/dist/types/providers/index.d.ts +5 -0
  220. package/dist/types/providers/index.js +21 -0
  221. package/dist/types/providers/niceapi/dto.d.ts +15 -0
  222. package/dist/types/providers/niceapi/dto.js +3 -0
  223. package/dist/types/providers/niceapi/index.d.ts +2 -0
  224. package/dist/types/providers/niceapi/index.js +18 -0
  225. package/dist/types/providers/niceapi/interface.d.ts +25 -0
  226. package/dist/types/providers/niceapi/interface.js +2 -0
  227. package/package.json +1 -1
@@ -0,0 +1,659 @@
1
+ import { SidoName } from "../../../data";
2
+ import { Admin_RepairShop, RepairShop } from "../accidentReport";
3
+ import { FileInfo } from "../file";
4
+ import { CustomerCarInfo } from "../member";
5
+ import { CarPartitionKey, RepairBidState, RepairSettlementUnitState, RepairState, RepairType, TireSize } from "./type";
6
+ export interface RepairCustomer {
7
+ /** MemberID */
8
+ id: string;
9
+ /** 고객 이름
10
+ * @note RepaieBid에서는 예약시 고객이 예약 당시 입력한 연락처가 들어옵니다.
11
+ */
12
+ name: string | null;
13
+ /** 고객 전화번호
14
+ * @note RepaieBid에서는 예약시 고객이 예약 당시 입력한 연락처가 들어옵니다.
15
+ */
16
+ phoneNumber: string | null;
17
+ }
18
+ /** 고객이 수리 요청시 생성 */
19
+ export interface Repair {
20
+ /** 견적 번호
21
+ * YYYYMMDD_(T)0001
22
+ * (T)는 A: 사고 수리, E: 외장 수리, O: 엔진오일 교체, T: 타이어 교체
23
+ */
24
+ id: string;
25
+ state: RepairState;
26
+ type: RepairType;
27
+ /** 차량번호 */
28
+ carName: string;
29
+ /** 차량 모델명 */
30
+ carModel: string;
31
+ /** 견적 요청 위치
32
+ * @note 견적 요청 위치를 기준으로 공업사가 요청을 할 수 있습니다.
33
+ */
34
+ location: RepairAddress;
35
+ /** 견적 요청 내용 */
36
+ request: RepairRequest;
37
+ /** 요청 고객 정보 */
38
+ member: RepairCustomer;
39
+ /** 고객이 작성한 리뷰 */
40
+ review: RepairReview | null;
41
+ /** 고객이 선택한 견적 내용 */
42
+ accepted_bid: RepairBid | null;
43
+ /** 견적 제출 일시 */
44
+ submitted_at: Date;
45
+ /** 만기 일시
46
+ * @note 견적 제출 후 만기 일시가 지나면 서버단에서 견적 제출 취소 처리
47
+ */
48
+ expire_at: Date;
49
+ /** 견적 수락 일시 */
50
+ reserved_at: Date | null;
51
+ /** 견적 예약 취소 일시 */
52
+ reserve_canceled_at: Date | null;
53
+ /** 입고 일시 */
54
+ checked_in_at: Date | null;
55
+ /** 수리 시작 일시 */
56
+ in_repair_at: Date | null;
57
+ /** 수리 완료 일시 */
58
+ repaired_at: Date | null;
59
+ }
60
+ /**
61
+ * 견적 발송 내용
62
+ * @description 공업사가 견적 제출할 때 생성
63
+ * @description 해당 견적에 대하여 고객이 수락할 수 있음
64
+ * @description 견적서 내용, 정비 명세서 데이터 JSON 형식으로 저장
65
+ */
66
+ export interface RepairBid {
67
+ id: string;
68
+ state: RepairBidState;
69
+ /** 예약 번호
70
+ * @note 고객이 예약 완료할 때 저장되는 유니크 키값
71
+ * YYYYMMDD_(T)0001
72
+ * (T)는 A: 사고 수리, E: 외장 수리, O: 엔진오일 교체, T: 타이어 교체
73
+ */
74
+ reservationNumber: string | null;
75
+ /** 고객 정보 */
76
+ customer: RepairCustomer;
77
+ /** 견적 설명 */
78
+ description: string;
79
+ /** 공업사 위치와 견적 요청 위치간 거리 (m단위) */
80
+ distance: number;
81
+ /** 견적 발송 내용 */
82
+ estimate: RepairEstimate;
83
+ /** 정비 명세서 */
84
+ progress: RepairProgress | null;
85
+ /** 견적 발송 공업사 정보 */
86
+ repairShop: RepairShop;
87
+ /** 진행 이력 (공업사) */
88
+ history: RepairHistory[];
89
+ /** 예약 정보
90
+ * @note 예약 일시
91
+ * @note DB엔 날짜, 시간 컬럼 나누어서 저장 & 날짜에 인덱싱 처리
92
+ */
93
+ reservation: RepairReservation | null;
94
+ /** 견적과 연결된 채팅방 Id */
95
+ chatRoomId: string | null;
96
+ /** 견적 취소 사유
97
+ * @note 견적 취소 시 저장
98
+ */
99
+ cancelReason: string | null;
100
+ /** 견적 취소 주체 */
101
+ canceled_by: "customer" | "partner" | null;
102
+ /** 고객이 읽은 시간
103
+ * @note 이 값이 non-null이면 공업사가 견적서를 삭제할 수 없습니다.
104
+ */
105
+ estimate_read_at: Date | null;
106
+ /** 견적 제출 일시 */
107
+ submitted_at: Date;
108
+ /** 견적 수락 일시 */
109
+ reserved_at: Date | null;
110
+ /** 견적 취소 일시 */
111
+ canceled_at: Date | null;
112
+ price: {
113
+ /** 견적서 비용
114
+ * @note VAT 포함 가격
115
+ */
116
+ estimate: number;
117
+ /** 정비 명세서 비용
118
+ * @note VAT 포함 가격
119
+ */
120
+ progress: number | null;
121
+ };
122
+ }
123
+ /** 사고접수 진행 이력 */
124
+ export interface RepairHistory {
125
+ title: {
126
+ content: string;
127
+ color?: string;
128
+ };
129
+ contents: {
130
+ title: string;
131
+ content: string;
132
+ additionalInfo?: {
133
+ content: string;
134
+ color?: string;
135
+ };
136
+ }[];
137
+ features: RepairHistoryFeature[];
138
+ }
139
+ export type RepairHistoryFeature = {
140
+ type: "copy";
141
+ title: string;
142
+ value: string;
143
+ } | {
144
+ type: "download";
145
+ title: string;
146
+ value: string;
147
+ };
148
+ export interface RepairReservation {
149
+ /** YYYY-MM-DD */
150
+ day: string;
151
+ /** HH:MM */
152
+ time: string;
153
+ }
154
+ /** 견적 요청 내용 */
155
+ export type RepairRequest = {
156
+ /** 수리 요청 타입 */
157
+ type: RepairType;
158
+ /** 선택 차량 정보 */
159
+ selectedCar: CustomerCarInfo;
160
+ /** 견적 요청 위치
161
+ * @note 견적 요청 위치를 기준으로 공업사가 요청을 할 수 있습니다.
162
+ * @note 주문 유형에 따라 클라이언트에서 값을 잘 처리해야 합니다.
163
+ * @example ex) 사고접수 > 비보험사고일 경우 견적주소를 사용, 사고접수 > 보험사고 & 견인요청 시 견인주소를 사용 (견인 위치를 기준으로 공업사 호출하여야 하므로)
164
+ */
165
+ location: RepairAddress;
166
+ /** 사고수리 요청 내용 */
167
+ accident: {
168
+ /** 수리 부분 사진 3장 이상 첨부 URL */
169
+ pictures: string[];
170
+ /** 수리 부위에 대한 설명 */
171
+ description: string;
172
+ method: {
173
+ /** 견인요청과 픽업이 동시에 true일 수 없습니다. */
174
+ 비보험수리: {
175
+ 견인요청: boolean;
176
+ 픽업: boolean;
177
+ 딜리버리: boolean;
178
+ } | null;
179
+ /** 견인요청과 픽업이 동시에 true일 수 없습니다. */
180
+ 보험수리: {
181
+ type: "자차" | "피해차";
182
+ 견인요청: boolean;
183
+ 픽업: boolean;
184
+ 딜리버리: boolean;
185
+ } | null;
186
+ };
187
+ address: {
188
+ /** 견적주소를 기준으로 공업사에 견적 요청 */
189
+ 견적주소: RepairAddress;
190
+ /**
191
+ * @condition 견인 선택 시
192
+ */
193
+ 견인주소: {
194
+ /** 견인 주소 (검색 주소) */
195
+ 검색주소: RepairAddress;
196
+ /** 상세 위치 (고객 입력) */
197
+ 상세위치: string;
198
+ } | null;
199
+ 픽업주소: {
200
+ /** 견인 주소 (검색 주소) */
201
+ 검색주소: RepairAddress;
202
+ /** 상세 위치 (고객 입력) */
203
+ 상세위치: string;
204
+ } | null;
205
+ /** 차량을 인도받을 위치
206
+ * @condition 딜리버리 선택 시
207
+ */
208
+ 딜리버리주소: {
209
+ /** 견인 주소 (검색 주소) */
210
+ 검색주소: RepairAddress;
211
+ /** 상세 위치 (고객 입력) */
212
+ 상세위치: string;
213
+ } | null;
214
+ };
215
+ } | null;
216
+ /** 외부수리 요청 내용 */
217
+ exterior: {
218
+ /** 수리 부분 사진 3장 이상 첨부 URL */
219
+ pictures: string[];
220
+ /** 수리 부위에 대한 설명 */
221
+ description: string;
222
+ /** 수리 방식 */
223
+ method: {
224
+ 비보험수리: {
225
+ 픽업: boolean;
226
+ 딜리버리: boolean;
227
+ } | null;
228
+ 보험수리: {
229
+ type: "자차" | "피해차";
230
+ 픽업: boolean;
231
+ 딜리버리: boolean;
232
+ 렌트카: boolean;
233
+ } | null;
234
+ };
235
+ address: {
236
+ /** 견적주소를 기준으로 공업사에 견적 요청 */
237
+ 견적주소: RepairAddress;
238
+ 픽업주소: {
239
+ /** 견인 주소 (검색 주소) */
240
+ 검색주소: RepairAddress;
241
+ /** 상세 위치 (고객 입력) */
242
+ 상세위치: string;
243
+ } | null;
244
+ /** 차량을 인도받을 위치
245
+ * @condition 딜리버리 선택 시
246
+ */
247
+ 딜리버리주소: {
248
+ /** 견인 주소 (검색 주소) */
249
+ 검색주소: RepairAddress;
250
+ /** 상세 위치 (고객 입력) */
251
+ 상세위치: string;
252
+ } | null;
253
+ };
254
+ damagedParts: CarPartitionKey[];
255
+ } | null;
256
+ /** 엔진오일 요청 내용 */
257
+ engineOil: {
258
+ /** 견적 서비스 */
259
+ service: {
260
+ type: "출장교환" | "방문교환";
261
+ /** 출장교환일 때 필수 */
262
+ 출장교환위치: {
263
+ 검색주소: RepairAddress;
264
+ 내차량상세위치: string;
265
+ } | null;
266
+ /** 방문교환일 때 필수 */
267
+ 방문교환위치: RepairAddress | null;
268
+ };
269
+ /** 교환 내용 */
270
+ method: {
271
+ 에어필터: boolean;
272
+ 에어컨필터: boolean;
273
+ };
274
+ /** 추가 요청 사항 (선택) */
275
+ additionalRequest: string | null;
276
+ } | null;
277
+ /** 타이어 요청 내용 */
278
+ tire: {
279
+ /** 견적 요청 위치 */
280
+ address: RepairAddress;
281
+ /** 추가 요청 사항 (선택) */
282
+ additionalRequest: string | null;
283
+ /** 선택 타이어 정보 */
284
+ tire: {
285
+ size: TireSize;
286
+ count: number;
287
+ };
288
+ } | null;
289
+ };
290
+ /** 견적서 내용 */
291
+ export interface RepairEstimate {
292
+ /** 수리 항목 견적서 내용
293
+ * @note 사고수리, 외장수리일 때 정의
294
+ */
295
+ repairItems: {
296
+ /** 수리부위 */
297
+ repairPart: string;
298
+ /** 수리방법 */
299
+ repairMethod: string;
300
+ /** 부품 */
301
+ part: {
302
+ /** 부품명 */
303
+ name: string;
304
+ /** 새 부품 여부 */
305
+ isNew: boolean;
306
+ /** 부품비
307
+ * @note VAT 포함 가격
308
+ */
309
+ price: number;
310
+ } | null;
311
+ /** 공임비
312
+ * @note VAT 포함 가격
313
+ */
314
+ price: number;
315
+ }[] | null;
316
+ /** 엔진 오일 견적서 내용
317
+ * @note 엔진오일일 때 정의
318
+ */
319
+ engineOilItems: {
320
+ /** 엔진 오일 항목 */
321
+ engineOil: {
322
+ name: string;
323
+ /** 부품비
324
+ * @note VAT 포함 가격
325
+ */
326
+ price: number;
327
+ };
328
+ /** 추가 사항
329
+ * @example 에어필터, 에어컨필터 등
330
+ */
331
+ part: {
332
+ type: "오일필터" | "에어필터" | "에어컨필터";
333
+ /** 부품명 */
334
+ name: string;
335
+ /** 부품비
336
+ * @note VAT 포함 가격
337
+ */
338
+ price: number;
339
+ /** 새 부품 여부 */
340
+ isNew: boolean;
341
+ }[];
342
+ /** 공임비
343
+ * @note VAT 포함 가격
344
+ */
345
+ price: number;
346
+ } | null;
347
+ /** 타이어 견적서 내용
348
+ * @note 타이어일 때 정의
349
+ */
350
+ tireItems: {
351
+ /** 타이어 항목 */
352
+ tire: {
353
+ /** 타이어 브랜드 */
354
+ brandName: string;
355
+ /** 타이어 사이즈 */
356
+ size: TireSize;
357
+ /** 타이어 개수 */
358
+ count: number;
359
+ /** 타이어 비용
360
+ * @note 이 가격은 타이어 총 가격입니다. (타이어 한짝 가격 = price/count)
361
+ * @note VAT 포함 가격
362
+ */
363
+ price: number;
364
+ };
365
+ /** 장착 옵션
366
+ * @example 장착 옵션 1, 장착 옵션 2 등
367
+ */
368
+ options: {
369
+ type: "장착비용" | "휠 밸런스" | "휠 얼라인먼트";
370
+ /** 장착 옵션 비용
371
+ * @note VAT 포함 가격
372
+ */
373
+ price: number;
374
+ /** 무상 제공 여부 */
375
+ isFree: boolean;
376
+ }[];
377
+ } | null;
378
+ /** 추가 요청 사항 비용 */
379
+ additionalPrice?: {
380
+ /** 견인
381
+ * @note 사고수리에서만 가능
382
+ */
383
+ 견인: {
384
+ /** 견인 비용
385
+ * @note VAT 포함 가격
386
+ * @note null: 무료 선택 시
387
+ */
388
+ price: number | null;
389
+ } | null;
390
+ /** 픽업 */
391
+ 픽업: {
392
+ /** 픽업 비용
393
+ * @note VAT 포함 가격
394
+ * @note null: 무료 선택 시
395
+ * @note 사고수리, 외부수리에서만 가능
396
+ */
397
+ price: number | null;
398
+ } | null;
399
+ /** 딜리버리
400
+ * @note 사고수리, 외부수리에서만 가능
401
+ */
402
+ 딜리버리: {
403
+ /** 딜리버리 비용
404
+ * @note null: 무료 선택 시
405
+ * @note VAT 포함 가격
406
+ */
407
+ price: number | null;
408
+ } | null;
409
+ /** 출장 */
410
+ 출장: {
411
+ /** 출장 비용
412
+ * @note VAT 포함 가격
413
+ * @note null: 무료 선택 시
414
+ * @note 엔진오일 > 출장 방문일때
415
+ */
416
+ price: number | null;
417
+ } | null;
418
+ };
419
+ /** 예상 기간
420
+ * @note 엔진오일, 타이어일 경우 null
421
+ * @case null: 처리 X
422
+ * @case 0: 입고 당일로 처리
423
+ */
424
+ estimatedPeriod: number | null;
425
+ /** 무상 제공 가능 서비스 리스트 */
426
+ freeServices: string[];
427
+ /** 명세서 총 비용
428
+ * @note VAT 포함 가격
429
+ */
430
+ totalPrice: number;
431
+ }
432
+ /** 정비 진행 내용 */
433
+ export interface RepairProgress {
434
+ /** 사고수리, 외부수리에서 사용 */
435
+ 입고정보: {
436
+ /** 입고일
437
+ * @note YYYYMMDD
438
+ */
439
+ in_date: string;
440
+ /** 입고시 주행거리(km) */
441
+ mileage: number;
442
+ /** 입고 사진 URL */
443
+ pictures: string[];
444
+ } | null;
445
+ /** 사고수리, 외부수리에서 사용 */
446
+ 수리정보: {
447
+ /** 수리일
448
+ * @note YYYYMMDD
449
+ */
450
+ start_date: string;
451
+ /** 수리 사진 URL */
452
+ pictures: string[];
453
+ } | null;
454
+ /** 사고수리, 외부수리에서 사용 */
455
+ 수리완료정보: {
456
+ /** 수리 완료일 (출고일)
457
+ * @note YYYYMMDD
458
+ */
459
+ finish_date: string;
460
+ /** 수리 완료 사진 URL */
461
+ pictures: string[];
462
+ /** @note VAT 포함 가격 */
463
+ price: {
464
+ 부품비: number;
465
+ 공임비: number;
466
+ /** 차감되는 비용 (값이 -로 들어옴)
467
+ * @example 보험 차감금액이 "50000"이면 "-50000"을 저장
468
+ */
469
+ 보험: number;
470
+ additionalPrice?: {
471
+ 견인: RepairEstimate["additionalPrice"]["견인"] | null;
472
+ 픽업: RepairEstimate["additionalPrice"]["픽업"] | null;
473
+ 딜리버리: RepairEstimate["additionalPrice"]["딜리버리"] | null;
474
+ };
475
+ /** 총 비용
476
+ * @note VAT 포함 가격
477
+ */
478
+ totalPrice: number;
479
+ };
480
+ files: {
481
+ /** 파일 첨부 내용 */
482
+ "보험사 제출용 수리명세서": FileInfo | null;
483
+ };
484
+ } | null;
485
+ /** 엔진오일, 타이어에서 사용 */
486
+ 교체완료정보: {
487
+ /** 입고일
488
+ * @note YYYYMMDD
489
+ */
490
+ in_date: string;
491
+ /** 입고시 주행거리(km) */
492
+ mileage: number;
493
+ /** 출고일
494
+ * @note YYYYMMDD
495
+ */
496
+ finish_date: string;
497
+ /** 교체 완료 사진 URL */
498
+ pictures: string[];
499
+ /** 엔진오일 교체 정보 */
500
+ engineOilItems: RepairEstimate["engineOilItems"] | null;
501
+ /** 타이어 교체 정보 */
502
+ tireItems: RepairEstimate["tireItems"] | null;
503
+ additionalPrice?: {
504
+ 출장: RepairEstimate["additionalPrice"]["출장"] | null;
505
+ };
506
+ /** 총 비용
507
+ * @note VAT 포함 가격
508
+ */
509
+ totalPrice: number;
510
+ } | null;
511
+ }
512
+ /** 정비 리뷰 내용 */
513
+ export interface RepairReview {
514
+ id: string;
515
+ /** 작성자 */
516
+ writer: {
517
+ id: string;
518
+ nickname: string;
519
+ };
520
+ /** 공업사 */
521
+ partner: {
522
+ id: string;
523
+ name: string;
524
+ location: string;
525
+ };
526
+ /**
527
+ * @true 좋아요
528
+ * @false 별로에요
529
+ */
530
+ isGood: boolean;
531
+ /** 평점 */
532
+ rating: number;
533
+ /** 선택 태그 내용 */
534
+ tags: string[];
535
+ /** 리뷰 내용 */
536
+ content: string;
537
+ /** 리뷰 내 첨부 이미지 url */
538
+ images: string[];
539
+ /** 공업사가 작성한 답글 */
540
+ partnerReply: {
541
+ content: string;
542
+ created_at: Date;
543
+ } | null;
544
+ /** 리뷰 작성 일시 */
545
+ created_at: Date;
546
+ }
547
+ /** 수리 주소 정보 */
548
+ export interface RepairAddress {
549
+ /** 주소
550
+ * @example 서울특별시 중구 세종대로 110 1004호
551
+ */
552
+ address: string;
553
+ /** 위도 */
554
+ latitude: number;
555
+ /** 경도 */
556
+ longitude: number;
557
+ }
558
+ export interface RepairBidDescription {
559
+ id: number;
560
+ /** 이 값만 꺼내서 사용 */
561
+ content: string;
562
+ /** 생성/수정 일시 */
563
+ updated_at: Date;
564
+ }
565
+ /** 서버에서 조회한 서비스 가능 지역 데이터 */
566
+ export interface RepairServiceAvailableRegionData {
567
+ 엔진오일_출장정비_국산: RepairServiceAvailableRegion[];
568
+ 엔진오일_출장정비_수입: RepairServiceAvailableRegion[];
569
+ }
570
+ /** 수리 가능 지역 정보 */
571
+ export interface RepairServiceAvailableRegion {
572
+ /** 시도 */
573
+ name: SidoName;
574
+ /** undefined일 경우 "전 지역"
575
+ * @note 시군구
576
+ */
577
+ sigungu?: string[];
578
+ }
579
+ export interface Admin_RepairBid extends RepairBid {
580
+ repairShop: Admin_RepairShop;
581
+ }
582
+ /** 관리자가 조회한 스마트 정비 내용 */
583
+ export interface Admin_Repair extends Repair {
584
+ member: RepairCustomer & {
585
+ name_real: string;
586
+ };
587
+ accepted_bid: Admin_RepairBid | null;
588
+ biddableRepairShop: {
589
+ repairShop: Admin_RepairShop;
590
+ bid: Admin_RepairBid | null;
591
+ }[];
592
+ }
593
+ export interface Repair_Settlement {
594
+ id: number;
595
+ amount: number;
596
+ /** 정산 정보 생성 일시 */
597
+ created_at: Date;
598
+ /** 정산 취소 사유 */
599
+ cancel_reason: string | null;
600
+ /** 정산 취소 일시 */
601
+ canceled_at: Date | null;
602
+ /** 대상 입찰 Id */
603
+ repair_bid_id: string;
604
+ /** 정산 대상 단위 Id */
605
+ repair_settlement_unit_id: number | null;
606
+ /** 견적 번호 */
607
+ repair_id: string;
608
+ /** 예약 번호 */
609
+ reservationNumber: string | null;
610
+ /** 견적 요청 유형 */
611
+ repairType: RepairType;
612
+ /** 정비 명세서 */
613
+ progress: RepairProgress | null;
614
+ /** 정산 대상 변경 내역 */
615
+ repair_settlement_history: Repair_Settlement_History[];
616
+ }
617
+ export interface Repair_Settlement_Unit {
618
+ id: number;
619
+ state: RepairSettlementUnitState;
620
+ /** 대상 공업사 Id */
621
+ partner_repairshop_id: string;
622
+ /** 정산 년월 */
623
+ year: number | null;
624
+ month: number | null;
625
+ /** 세금계산서 승인번호
626
+ * @note 세금계산서 승인번호가 있어야만 정산 요청이 가능합니다.
627
+ */
628
+ tax_invoice_approval_number: string | null;
629
+ /** 관리자에서 추가한 납부 정보 */
630
+ payment_info: {
631
+ /** 입금 계좌 */
632
+ account_number: string;
633
+ /** 예금주명 */
634
+ account_owner: string;
635
+ /** 입금 금액 */
636
+ amount: number;
637
+ /** 입금 기한 (YYYYMMDD) */
638
+ due_day: string;
639
+ } | null;
640
+ /** 정산 요청 일시 */
641
+ created_at: Date;
642
+ /** 정산 요청 일시 */
643
+ pending_at: Date | null;
644
+ /** 정산 취소 일시 */
645
+ canceled_at: Date | null;
646
+ /** 정산 완료 일시 */
647
+ finished_at: Date | null;
648
+ repair_settlement: Repair_Settlement[];
649
+ }
650
+ export interface Admin_Repair_Settlement_Unit extends Repair_Settlement_Unit {
651
+ partner_repairshop: Admin_RepairShop;
652
+ admin_memo: string | null;
653
+ repair_settlement_unit_history: Repair_Settlement_History[];
654
+ }
655
+ export interface Repair_Settlement_History {
656
+ title: string;
657
+ content: string;
658
+ created_at: Date;
659
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });