@trusted-solutions/sdit.models 0.31.0 → 0.32.0

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 (408) hide show
  1. package/base-data.d.ts +15 -15
  2. package/base-data.js +2 -2
  3. package/constants/client-endpoints.d.ts +7 -7
  4. package/constants/client-endpoints.js +10 -10
  5. package/constants/district-zip.taiwan.d.ts +7 -7
  6. package/constants/district-zip.taiwan.js +499 -499
  7. package/constants/index.d.ts +3 -3
  8. package/constants/index.js +6 -6
  9. package/constants/industry.d.ts +4 -4
  10. package/constants/industry.js +27 -27
  11. package/data-service/config.d.ts +62 -62
  12. package/data-service/config.js +895 -895
  13. package/data-service/config.js.map +1 -1
  14. package/data-service/enum.d.ts +82 -82
  15. package/data-service/enum.js +101 -101
  16. package/data-service/index.d.ts +4 -4
  17. package/data-service/index.js +7 -7
  18. package/data-service/lambda.d.ts +92 -92
  19. package/data-service/lambda.js +3 -3
  20. package/data-service/model.d.ts +79 -79
  21. package/data-service/model.js +190 -190
  22. package/enums/analysis.d.ts +201 -201
  23. package/enums/analysis.js +213 -213
  24. package/enums/block-storage.d.ts +4 -4
  25. package/enums/block-storage.js +8 -8
  26. package/enums/close-type.d.ts +4 -4
  27. package/enums/close-type.js +8 -8
  28. package/enums/cognito-filter-key.d.ts +14 -14
  29. package/enums/cognito-filter-key.js +19 -19
  30. package/enums/cognito-operator.d.ts +4 -4
  31. package/enums/cognito-operator.js +8 -8
  32. package/enums/company.d.ts +4 -4
  33. package/enums/company.js +8 -8
  34. package/enums/customer.d.ts +23 -23
  35. package/enums/customer.js +29 -29
  36. package/enums/discount-module.d.ts +18 -18
  37. package/enums/discount-module.js +27 -27
  38. package/enums/dynamodb-operator.d.ts +66 -66
  39. package/enums/dynamodb-operator.js +77 -77
  40. package/enums/error-type.d.ts +109 -109
  41. package/enums/error-type.js +145 -145
  42. package/enums/event.d.ts +29 -29
  43. package/enums/event.js +36 -36
  44. package/enums/external.d.ts +3 -3
  45. package/enums/external.js +7 -7
  46. package/enums/filter-keys.d.ts +9 -9
  47. package/enums/filter-keys.js +15 -15
  48. package/enums/import-data.d.ts +3 -3
  49. package/enums/import-data.js +7 -7
  50. package/enums/index.d.ts +41 -41
  51. package/enums/index.js +44 -44
  52. package/enums/inventory.d.ts +7 -7
  53. package/enums/inventory.js +11 -11
  54. package/enums/invoice-carrier-type.d.ts +5 -5
  55. package/enums/invoice-carrier-type.js +9 -9
  56. package/enums/invoice-error-name.d.ts +4 -4
  57. package/enums/invoice-error-name.js +8 -8
  58. package/enums/invoice-provider.d.ts +6 -6
  59. package/enums/invoice-provider.js +10 -10
  60. package/enums/invoice-status-type.d.ts +4 -4
  61. package/enums/invoice-status-type.js +8 -8
  62. package/enums/invoice-type.d.ts +6 -6
  63. package/enums/invoice-type.js +10 -10
  64. package/enums/language.d.ts +4 -4
  65. package/enums/language.js +8 -8
  66. package/enums/number-of-customers-group-type.d.ts +12 -12
  67. package/enums/number-of-customers-group-type.js +16 -16
  68. package/enums/offline-sync-type.d.ts +7 -7
  69. package/enums/offline-sync-type.js +11 -11
  70. package/enums/order-action-name.d.ts +4 -4
  71. package/enums/order-action-name.js +8 -8
  72. package/enums/order-item.d.ts +13 -13
  73. package/enums/order-item.js +18 -18
  74. package/enums/order-source-type.d.ts +5 -5
  75. package/enums/order-source-type.js +9 -9
  76. package/enums/order-status.d.ts +18 -18
  77. package/enums/order-status.js +22 -22
  78. package/enums/payment-parameters.d.ts +18 -18
  79. package/enums/payment-parameters.js +25 -25
  80. package/enums/payment-service-provider.d.ts +28 -28
  81. package/enums/payment-service-provider.js +32 -32
  82. package/enums/payment-type.d.ts +35 -35
  83. package/enums/payment-type.js +39 -39
  84. package/enums/permission-name.d.ts +30 -30
  85. package/enums/permission-name.js +34 -34
  86. package/enums/printer.d.ts +57 -57
  87. package/enums/printer.js +68 -68
  88. package/enums/real-time-switch-type.d.ts +8 -8
  89. package/enums/real-time-switch-type.js +12 -12
  90. package/enums/receipt.d.ts +4 -4
  91. package/enums/receipt.js +8 -8
  92. package/enums/serve-type.d.ts +6 -6
  93. package/enums/serve-type.js +10 -10
  94. package/enums/server-error.d.ts +4 -4
  95. package/enums/server-error.js +8 -8
  96. package/enums/store.d.ts +15 -15
  97. package/enums/store.js +21 -21
  98. package/enums/table-index.d.ts +25 -25
  99. package/enums/table-index.js +32 -32
  100. package/enums/table.d.ts +6 -6
  101. package/enums/table.js +10 -10
  102. package/enums/tax-type.d.ts +5 -5
  103. package/enums/tax-type.js +9 -9
  104. package/enums/user.d.ts +8 -8
  105. package/enums/user.js +13 -13
  106. package/lambda/contract.d.ts +97 -97
  107. package/lambda/contract.js +2 -2
  108. package/lambda/error/create-order-when-item-sold-out.d.ts +6 -6
  109. package/lambda/error/create-order-when-item-sold-out.js +2 -2
  110. package/lambda/error/index.d.ts +1 -1
  111. package/lambda/error/index.js +4 -4
  112. package/lambda/index.d.ts +10 -10
  113. package/lambda/index.js +13 -13
  114. package/lambda/line-notify.d.ts +8 -8
  115. package/lambda/line-notify.js +4 -4
  116. package/lambda/online-integration.d.ts +110 -110
  117. package/lambda/online-integration.js +2 -2
  118. package/lambda/online-ordering.d.ts +290 -290
  119. package/lambda/online-ordering.js +2 -2
  120. package/lambda/override.d.ts +23 -23
  121. package/lambda/override.js +2 -2
  122. package/lambda/pos-integration.d.ts +19 -19
  123. package/lambda/pos-integration.js +2 -2
  124. package/lambda/request/analysis.d.ts +4 -4
  125. package/lambda/request/analysis.js +2 -2
  126. package/lambda/request/chain.d.ts +30 -30
  127. package/lambda/request/chain.js +2 -2
  128. package/lambda/request/closing.d.ts +64 -64
  129. package/lambda/request/closing.js +2 -2
  130. package/lambda/request/common.d.ts +19 -19
  131. package/lambda/request/common.js +2 -2
  132. package/lambda/request/custom-analysis-group.d.ts +19 -19
  133. package/lambda/request/custom-analysis-group.js +2 -2
  134. package/lambda/request/customer.d.ts +19 -19
  135. package/lambda/request/customer.js +2 -2
  136. package/lambda/request/discount-module.d.ts +50 -50
  137. package/lambda/request/discount-module.js +2 -2
  138. package/lambda/request/event.d.ts +9 -9
  139. package/lambda/request/event.js +2 -2
  140. package/lambda/request/import-data.d.ts +15 -15
  141. package/lambda/request/import-data.js +2 -2
  142. package/lambda/request/index.d.ts +20 -20
  143. package/lambda/request/index.js +23 -23
  144. package/lambda/request/invoice.d.ts +96 -96
  145. package/lambda/request/invoice.js +2 -2
  146. package/lambda/request/kiosk.d.ts +15 -15
  147. package/lambda/request/kiosk.js +2 -2
  148. package/lambda/request/menu.d.ts +89 -89
  149. package/lambda/request/menu.js +2 -2
  150. package/lambda/request/offline-sync.d.ts +33 -33
  151. package/lambda/request/offline-sync.js +2 -2
  152. package/lambda/request/order.d.ts +49 -49
  153. package/lambda/request/order.js +2 -2
  154. package/lambda/request/payment.d.ts +19 -19
  155. package/lambda/request/payment.js +2 -2
  156. package/lambda/request/printer.d.ts +42 -42
  157. package/lambda/request/printer.js +2 -2
  158. package/lambda/request/real-time-switch.d.ts +33 -33
  159. package/lambda/request/real-time-switch.js +2 -2
  160. package/lambda/request/receipt.d.ts +5 -5
  161. package/lambda/request/receipt.js +2 -2
  162. package/lambda/request/store.d.ts +77 -77
  163. package/lambda/request/store.js +2 -2
  164. package/lambda/request/user.d.ts +29 -29
  165. package/lambda/request/user.js +2 -2
  166. package/lambda/response/analysis.d.ts +4 -4
  167. package/lambda/response/analysis.js +2 -2
  168. package/lambda/response/chain.d.ts +14 -14
  169. package/lambda/response/chain.js +2 -2
  170. package/lambda/response/closing.d.ts +14 -14
  171. package/lambda/response/closing.js +3 -3
  172. package/lambda/response/common.d.ts +15 -15
  173. package/lambda/response/common.js +2 -2
  174. package/lambda/response/custom-analysis-group.d.ts +14 -14
  175. package/lambda/response/custom-analysis-group.js +7 -7
  176. package/lambda/response/customer.d.ts +12 -12
  177. package/lambda/response/customer.js +2 -2
  178. package/lambda/response/discount-module.d.ts +28 -28
  179. package/lambda/response/discount-module.js +2 -2
  180. package/lambda/response/event.d.ts +4 -4
  181. package/lambda/response/event.js +2 -2
  182. package/lambda/response/index.d.ts +17 -17
  183. package/lambda/response/index.js +20 -20
  184. package/lambda/response/invoice.d.ts +34 -34
  185. package/lambda/response/invoice.js +2 -2
  186. package/lambda/response/kiosk.d.ts +12 -12
  187. package/lambda/response/kiosk.js +2 -2
  188. package/lambda/response/menu.d.ts +54 -54
  189. package/lambda/response/menu.js +2 -2
  190. package/lambda/response/order.d.ts +20 -20
  191. package/lambda/response/order.js +2 -2
  192. package/lambda/response/payment.d.ts +199 -199
  193. package/lambda/response/payment.js +2 -2
  194. package/lambda/response/printer.d.ts +22 -22
  195. package/lambda/response/printer.js +2 -2
  196. package/lambda/response/receipt.d.ts +4 -4
  197. package/lambda/response/receipt.js +2 -2
  198. package/lambda/response/store.d.ts +38 -38
  199. package/lambda/response/store.js +2 -2
  200. package/lambda/response/user.d.ts +17 -17
  201. package/lambda/response/user.js +2 -2
  202. package/lambda/subscription.d.ts +141 -141
  203. package/lambda/subscription.js +9 -9
  204. package/models/analysis-summary.d.ts +23 -23
  205. package/models/analysis-summary.js +2 -2
  206. package/models/analysis.d.ts +56 -56
  207. package/models/analysis.js +2 -2
  208. package/models/appointment.d.ts +18 -18
  209. package/models/appointment.js +2 -2
  210. package/models/array-mutations.d.ts +8 -8
  211. package/models/array-mutations.js +2 -2
  212. package/models/chain.d.ts +5 -5
  213. package/models/chain.js +2 -2
  214. package/models/cognito-filters.d.ts +21 -21
  215. package/models/cognito-filters.js +2 -2
  216. package/models/contract.d.ts +31 -31
  217. package/models/contract.js +2 -2
  218. package/models/csv/customer.d.ts +18 -18
  219. package/models/csv/customer.js +2 -2
  220. package/models/csv/index.d.ts +1 -1
  221. package/models/csv/index.js +4 -4
  222. package/models/custom-analysis-group.d.ts +5 -5
  223. package/models/custom-analysis-group.js +2 -2
  224. package/models/customer.d.ts +33 -33
  225. package/models/customer.js +2 -2
  226. package/models/discount-module/bundle-discount-module.d.ts +9 -9
  227. package/models/discount-module/bundle-discount-module.js +2 -2
  228. package/models/discount-module/discount-module.d.ts +92 -92
  229. package/models/discount-module/discount-module.js +2 -2
  230. package/models/discount-module/entire-order-discount-module.d.ts +6 -6
  231. package/models/discount-module/entire-order-discount-module.js +2 -2
  232. package/models/discount-module/index.d.ts +3 -3
  233. package/models/discount-module/index.js +6 -6
  234. package/models/discount-module/selected-item-discount-module.d.ts +9 -9
  235. package/models/discount-module/selected-item-discount-module.js +2 -2
  236. package/models/dynamodb-filters.d.ts +37 -37
  237. package/models/dynamodb-filters.js +2 -2
  238. package/models/dynamodb-index.d.ts +19 -19
  239. package/models/dynamodb-index.js +2 -2
  240. package/models/error/index.d.ts +11 -11
  241. package/models/error/index.js +6 -6
  242. package/models/error/invoice.d.ts +3 -3
  243. package/models/error/invoice.js +11 -11
  244. package/models/error/order.d.ts +17 -17
  245. package/models/error/order.js +42 -42
  246. package/models/error/store.d.ts +6 -6
  247. package/models/error/store.js +18 -18
  248. package/models/event.d.ts +13 -13
  249. package/models/event.js +2 -2
  250. package/models/external-config.d.ts +10 -10
  251. package/models/external-config.js +2 -2
  252. package/models/filter-request.d.ts +13 -13
  253. package/models/filter-request.js +2 -2
  254. package/models/index.d.ts +40 -40
  255. package/models/index.js +43 -43
  256. package/models/inventory/index.d.ts +5 -5
  257. package/models/inventory/index.js +8 -8
  258. package/models/inventory/inventory-item-record.d.ts +52 -52
  259. package/models/inventory/inventory-item-record.js +2 -2
  260. package/models/inventory/inventory-item.d.ts +38 -38
  261. package/models/inventory/inventory-item.js +2 -2
  262. package/models/inventory/inventory-record.d.ts +40 -40
  263. package/models/inventory/inventory-record.js +2 -2
  264. package/models/inventory/inventory.d.ts +23 -23
  265. package/models/inventory/inventory.js +2 -2
  266. package/models/inventory/relation.d.ts +17 -17
  267. package/models/inventory/relation.js +2 -2
  268. package/models/invoice-config.d.ts +25 -25
  269. package/models/invoice-config.js +2 -2
  270. package/models/invoice.d.ts +83 -83
  271. package/models/invoice.js +2 -2
  272. package/models/json/base-json.d.ts +3 -3
  273. package/models/json/base-json.js +2 -2
  274. package/models/json/index.d.ts +2 -2
  275. package/models/json/index.js +5 -5
  276. package/models/json/product-json.d.ts +16 -16
  277. package/models/json/product-json.js +2 -2
  278. package/models/kiosk.d.ts +4 -4
  279. package/models/kiosk.js +2 -2
  280. package/models/language.d.ts +8 -8
  281. package/models/language.js +2 -2
  282. package/models/menu.d.ts +111 -111
  283. package/models/menu.js +10 -10
  284. package/models/online-integration.d.ts +88 -88
  285. package/models/online-integration.js +59 -59
  286. package/models/online-ordering.d.ts +256 -253
  287. package/models/online-ordering.js +43 -43
  288. package/models/online-ordering.js.map +1 -1
  289. package/models/order-action.d.ts +11 -11
  290. package/models/order-action.js +2 -2
  291. package/models/order.d.ts +452 -452
  292. package/models/order.js +2 -2
  293. package/models/override.d.ts +28 -28
  294. package/models/override.js +14 -14
  295. package/models/payment-config.d.ts +69 -69
  296. package/models/payment-config.js +2 -2
  297. package/models/payment-parameters.d.ts +116 -116
  298. package/models/payment-parameters.js +3 -3
  299. package/models/payment.d.ts +42 -42
  300. package/models/payment.js +2 -2
  301. package/models/permission/index.d.ts +4 -4
  302. package/models/permission/index.js +7 -7
  303. package/models/permission/store-permission.d.ts +9 -9
  304. package/models/permission/store-permission.js +2 -2
  305. package/models/permission/store-role-store-permission.d.ts +5 -5
  306. package/models/permission/store-role-store-permission.js +2 -2
  307. package/models/permission/store-role-store-user.d.ts +5 -5
  308. package/models/permission/store-role-store-user.js +2 -2
  309. package/models/permission/store-role.d.ts +5 -5
  310. package/models/permission/store-role.js +2 -2
  311. package/models/plugin/index.d.ts +5 -5
  312. package/models/plugin/index.js +8 -8
  313. package/models/plugin/intent-handler/index.d.ts +2 -2
  314. package/models/plugin/intent-handler/index.js +5 -5
  315. package/models/plugin/intent-handler/intent-handler-request.d.ts +14 -14
  316. package/models/plugin/intent-handler/intent-handler-request.js +2 -2
  317. package/models/plugin/intent-handler/intent-handler-response.d.ts +7 -7
  318. package/models/plugin/intent-handler/intent-handler-response.js +2 -2
  319. package/models/plugin/payment-machine/index.d.ts +3 -3
  320. package/models/plugin/payment-machine/index.js +6 -6
  321. package/models/plugin/payment-machine/models/fixed-string.model.d.ts +14 -14
  322. package/models/plugin/payment-machine/models/fixed-string.model.js +52 -52
  323. package/models/plugin/payment-machine/models/index.d.ts +5 -5
  324. package/models/plugin/payment-machine/models/index.js +8 -8
  325. package/models/plugin/payment-machine/models/nccc/index.d.ts +3 -3
  326. package/models/plugin/payment-machine/models/nccc/index.js +6 -6
  327. package/models/plugin/payment-machine/models/nccc/payment-machine-d200.model.d.ts +41 -41
  328. package/models/plugin/payment-machine/models/nccc/payment-machine-d200.model.js +140 -140
  329. package/models/plugin/payment-machine/models/nccc/payment-machine-v3p.model.d.ts +42 -42
  330. package/models/plugin/payment-machine/models/nccc/payment-machine-v3p.model.js +621 -621
  331. package/models/plugin/payment-machine/models/nccc/payment-machine-vx520.model.d.ts +21 -21
  332. package/models/plugin/payment-machine/models/nccc/payment-machine-vx520.model.js +28 -28
  333. package/models/plugin/payment-machine/models/payment-machine-minimum.model.d.ts +38 -38
  334. package/models/plugin/payment-machine/models/payment-machine-minimum.model.js +27 -27
  335. package/models/plugin/payment-machine/models/payment-machine-union.model.d.ts +123 -123
  336. package/models/plugin/payment-machine/models/payment-machine-union.model.js +376 -376
  337. package/models/plugin/payment-machine/models/payment-machine-union.model.js.map +1 -1
  338. package/models/plugin/payment-machine/models/tsb/index.d.ts +1 -1
  339. package/models/plugin/payment-machine/models/tsb/index.js +4 -4
  340. package/models/plugin/payment-machine/models/tsb/payment-machine-d220.model.d.ts +20 -20
  341. package/models/plugin/payment-machine/models/tsb/payment-machine-d220.model.js +27 -27
  342. package/models/plugin/payment-machine/payment-machine-request.d.ts +8 -8
  343. package/models/plugin/payment-machine/payment-machine-request.js +2 -2
  344. package/models/plugin/payment-machine/payment-machine.d.ts +43 -43
  345. package/models/plugin/payment-machine/payment-machine.js +50 -50
  346. package/models/plugin/peripheral.model.d.ts +53 -53
  347. package/models/plugin/peripheral.model.js +38 -38
  348. package/models/plugin/printer/index.d.ts +2 -2
  349. package/models/plugin/printer/index.js +5 -5
  350. package/models/plugin/printer/printer-request.d.ts +20 -20
  351. package/models/plugin/printer/printer-request.js +2 -2
  352. package/models/plugin/printer/printer.d.ts +92 -92
  353. package/models/plugin/printer/printer.js +11 -11
  354. package/models/plugin/serial-port/index.d.ts +2 -2
  355. package/models/plugin/serial-port/index.js +5 -5
  356. package/models/plugin/serial-port/serial-port-request.d.ts +11 -11
  357. package/models/plugin/serial-port/serial-port-request.js +2 -2
  358. package/models/plugin/serial-port/serial-port.d.ts +17 -17
  359. package/models/plugin/serial-port/serial-port.js +22 -22
  360. package/models/printer.d.ts +70 -70
  361. package/models/printer.js +2 -2
  362. package/models/receipt.d.ts +61 -61
  363. package/models/receipt.js +2 -2
  364. package/models/store.d.ts +251 -251
  365. package/models/store.js +3 -3
  366. package/models/table.d.ts +35 -35
  367. package/models/table.js +9 -9
  368. package/models/template-interface/index.d.ts +1 -1
  369. package/models/template-interface/index.js +4 -4
  370. package/models/template-interface/list.d.ts +10 -10
  371. package/models/template-interface/list.js +2 -2
  372. package/models/user.d.ts +31 -31
  373. package/models/user.js +2 -2
  374. package/models/utils/index.d.ts +1 -1
  375. package/models/utils/index.js +4 -4
  376. package/models/utils/utils-data.d.ts +4 -4
  377. package/models/utils/utils-data.js +2 -2
  378. package/package.json +1 -1
  379. package/public-api.d.ts +5 -5
  380. package/public-api.js +8 -8
  381. package/third-party-api/uber-eats/enums/ub-menu.d.ts +24 -24
  382. package/third-party-api/uber-eats/enums/ub-menu.js +32 -32
  383. package/third-party-api/uber-eats/enums/ub-order.d.ts +55 -55
  384. package/third-party-api/uber-eats/enums/ub-order.js +66 -66
  385. package/third-party-api/uber-eats/enums/ub-utils.d.ts +34 -34
  386. package/third-party-api/uber-eats/enums/ub-utils.js +40 -40
  387. package/third-party-api/uber-eats/index.d.ts +13 -13
  388. package/third-party-api/uber-eats/index.js +16 -16
  389. package/third-party-api/uber-eats/models/ub-cancel-order.d.ts +28 -28
  390. package/third-party-api/uber-eats/models/ub-cancel-order.js +17 -17
  391. package/third-party-api/uber-eats/models/ub-cart.d.ts +84 -84
  392. package/third-party-api/uber-eats/models/ub-cart.js +2 -2
  393. package/third-party-api/uber-eats/models/ub-menu-config.d.ts +40 -40
  394. package/third-party-api/uber-eats/models/ub-menu-config.js +2 -2
  395. package/third-party-api/uber-eats/models/ub-menu-item.d.ts +112 -112
  396. package/third-party-api/uber-eats/models/ub-menu-item.js +2 -2
  397. package/third-party-api/uber-eats/models/ub-order.d.ts +59 -59
  398. package/third-party-api/uber-eats/models/ub-order.js +2 -2
  399. package/third-party-api/uber-eats/models/ub-payment.d.ts +59 -59
  400. package/third-party-api/uber-eats/models/ub-payment.js +2 -2
  401. package/third-party-api/uber-eats/models/ub-pos-accept-order.d.ts +39 -39
  402. package/third-party-api/uber-eats/models/ub-pos-accept-order.js +2 -2
  403. package/third-party-api/uber-eats/models/ub-pos-deny-order.d.ts +29 -29
  404. package/third-party-api/uber-eats/models/ub-pos-deny-order.js +17 -17
  405. package/third-party-api/uber-eats/models/ub-quantity-constraint-rules.d.ts +48 -48
  406. package/third-party-api/uber-eats/models/ub-quantity-constraint-rules.js +2 -2
  407. package/third-party-api/uber-eats/models/ub-utils.d.ts +41 -41
  408. package/third-party-api/uber-eats/models/ub-utils.js +2 -2
@@ -1,377 +1,377 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PaymentMachineCommunicationModel = void 0;
4
- const tslib_1 = require("tslib");
5
- const moment_1 = tslib_1.__importDefault(require("moment"));
6
- const payment_machine_1 = require("../payment-machine");
7
- // payment-machine-union.model.ts
8
- const __1 = require("..");
9
- /**
10
- * @Deprecated - Please import from HAL
11
- */
12
- class PaymentMachineCommunicationModel {
13
- //#endregion
14
- //#endregion
15
- constructor() {
16
- this.CreatePaymentCardTypeString();
17
- PaymentMachineCommunicationModel.CreateTradeTypeString();
18
- }
19
- CreatePaymentCardTypeString() {
20
- this.paymentCardTypeString = [];
21
- for (let i = 0; i < __1.PaymentCardTypeEnum.count; i++) {
22
- this.paymentCardTypeString.push('');
23
- }
24
- this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard] = 'creditCard'; // 'N', '03'
25
- this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay] = 'chinaUnionPay'; // 'C', '03' 註:結帳時 'N', '03'
26
- this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade] = 'dCCTrade'; // 'N', '04'
27
- this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket] = 'eTicket'; // 'E', '06'
28
- this.paymentCardTypeString[__1.PaymentCardTypeEnum.unknown] = 'unknown';
29
- }
30
- StringToPaymentCardType(cUPSmartPayESVCIndicator, hostId) {
31
- switch (cUPSmartPayESVCIndicator) {
32
- case 'N':
33
- switch (hostId) {
34
- case '03':
35
- this.paymentCardType = this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard];
36
- break;
37
- case '04':
38
- this.paymentCardType = this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade];
39
- break;
40
- }
41
- break;
42
- case 'C':
43
- this.paymentCardType = this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay];
44
- break;
45
- case 'E':
46
- this.paymentCardType = this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket];
47
- break;
48
- }
49
- }
50
- PaymentCardTypeToStrings(isSettlement) {
51
- let cUPSmartPayESVCIndicator;
52
- let hostId;
53
- if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard]) {
54
- cUPSmartPayESVCIndicator = 'N';
55
- hostId = '03';
56
- }
57
- else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay]) {
58
- // 欄位定義詳見說明文件 P17。
59
- // 註:回傳資料的欄位中並無銀聯卡專用欄位
60
- cUPSmartPayESVCIndicator = isSettlement ? 'N' : 'C';
61
- hostId = '03';
62
- }
63
- else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade]) {
64
- cUPSmartPayESVCIndicator = 'N';
65
- hostId = '04';
66
- }
67
- else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket]) {
68
- cUPSmartPayESVCIndicator = 'E';
69
- hostId = '06';
70
- }
71
- else if (this.paymentCardType === null || this.paymentCardType === undefined) {
72
- cUPSmartPayESVCIndicator = ' ';
73
- hostId = ' ';
74
- }
75
- else {
76
- throw new Error('Unknown card type.');
77
- }
78
- return { cUPSmartPayESVCIndicator, hostId };
79
- }
80
- // tslint:disable-next-line:member-ordering
81
- static CreateTradeTypeString() {
82
- this.tradeTypeString = [];
83
- for (let i = 0; i < payment_machine_1.PaymentMachineActionEnum.count; i++) {
84
- this.tradeTypeString.push('');
85
- }
86
- this.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay] = 'pay';
87
- this.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund] = 'refund';
88
- this.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement] = 'settlement';
89
- this.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry] = 'retry';
90
- }
91
- StringToTradeType(transType) {
92
- switch (transType) {
93
- case '01':
94
- this.tradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay];
95
- break;
96
- case '02':
97
- this.tradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund];
98
- break;
99
- case '50':
100
- this.tradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement];
101
- break;
102
- case '62':
103
- this.tradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry];
104
- break;
105
- }
106
- }
107
- TradeTypeToString() {
108
- if (this.tradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay]) {
109
- return '01';
110
- }
111
- else if (this.tradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund]) {
112
- return '02';
113
- }
114
- else if (this.tradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement]) {
115
- return '50';
116
- }
117
- else if (this.tradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry]) {
118
- return '62';
119
- }
120
- else {
121
- throw new Error('Unknown trade type.');
122
- }
123
- }
124
- // tslint:disable-next-line:member-ordering
125
- static GetTradeTypeString(paymentMachineAction) {
126
- this.CreateTradeTypeString();
127
- return PaymentMachineCommunicationModel.tradeTypeString[paymentMachineAction];
128
- }
129
- //#endregion
130
- //#region Unix time stamp: currentTradeUnixTime, targetTradeUnixTime
131
- StringToCurrentTradeUnixTime(date, time) {
132
- const dateTime = moment_1.default(date + time, 'YYMMDDHHmmss');
133
- if (dateTime.isValid()) {
134
- this.currentTradeUnixTime = dateTime.unix();
135
- }
136
- else {
137
- this.currentTradeUnixTime = undefined;
138
- }
139
- }
140
- StringToTargetTradeUnixTime(date) {
141
- try {
142
- let isSpaces = true;
143
- for (let i = 0; i < date.length; i++) {
144
- if (date.charAt(i) !== ' ') {
145
- isSpaces = false;
146
- break;
147
- }
148
- }
149
- if (isSpaces) {
150
- this.targetTradeUnixTime = 0;
151
- return;
152
- }
153
- const tempDate = moment_1.default(date, 'YYYYMMDD');
154
- this.targetTradeUnixTime = tempDate.unix();
155
- }
156
- catch (_a) {
157
- this.targetTradeUnixTime = 0;
158
- }
159
- }
160
- // tslint:disable-next-line:member-ordering
161
- static ToDateTime(unixTime) {
162
- if (unixTime === 0) {
163
- return { date: null, time: null };
164
- }
165
- const localDateTimeOffset = moment_1.default.unix(unixTime);
166
- const dateTimeString = localDateTimeOffset.format('YYMMDDHHmmss');
167
- return { date: dateTimeString.slice(0, 6), time: dateTimeString.slice(6, 12) };
168
- }
169
- // tslint:disable-next-line:member-ordering
170
- static ToDate(unixTime) {
171
- if (unixTime === 0 || unixTime === undefined) {
172
- return null;
173
- }
174
- const localDateTimeOffset = moment_1.default.unix(unixTime);
175
- const dateString = localDateTimeOffset.format('YYYYMMDD');
176
- return dateString;
177
- }
178
- StringToTransactionId(creditCardApprovalNo, aTSETicketTransactionId) {
179
- if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard] ||
180
- this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay] ||
181
- this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade]) {
182
- this.transactionId = creditCardApprovalNo;
183
- }
184
- else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket]) {
185
- this.transactionId = aTSETicketTransactionId;
186
- }
187
- }
188
- TransactionIdToStrings() {
189
- let creditCardApprovalNo;
190
- let aTSETicketTransactionId;
191
- if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard] ||
192
- this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay] ||
193
- this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade]) {
194
- creditCardApprovalNo = this.transactionId;
195
- }
196
- else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket]) {
197
- aTSETicketTransactionId = this.transactionId;
198
- }
199
- else {
200
- throw new Error('Unknown card type.');
201
- }
202
- return { creditCardApprovalNo, aTSETicketTransactionId };
203
- }
204
- StringToRetryTradeType(transType) {
205
- switch (transType) {
206
- case '01':
207
- this.retryTradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay];
208
- break;
209
- case '02':
210
- this.retryTradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund];
211
- break;
212
- case '50':
213
- this.retryTradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement];
214
- break;
215
- case '62':
216
- this.retryTradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry];
217
- break;
218
- }
219
- }
220
- RetryTradeTypeToString() {
221
- if (this.retryTradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay]) {
222
- return '01';
223
- }
224
- else if (this.retryTradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund]) {
225
- return '02';
226
- }
227
- else if (this.retryTradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement]) {
228
- return '50';
229
- }
230
- else if (this.retryTradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry]) {
231
- return '62';
232
- }
233
- else {
234
- throw new Error('Unknown trade type.');
235
- }
236
- }
237
- StringToPaymentCardDetailedType(cardType) {
238
- switch (cardType) {
239
- case '01':
240
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.twin;
241
- break;
242
- case '02':
243
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.visa;
244
- break;
245
- case '03':
246
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.master;
247
- break;
248
- case '04':
249
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.jcb;
250
- break;
251
- case '05':
252
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.amex;
253
- break;
254
- case '06':
255
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.cup;
256
- break;
257
- case '07':
258
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.discover;
259
- break;
260
- case '08':
261
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.smartPay;
262
- break;
263
- case '11':
264
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.easyCard;
265
- break;
266
- case '12':
267
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.iPass;
268
- break;
269
- case '13':
270
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.iCash;
271
- break;
272
- case '14':
273
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.happyCash;
274
- break;
275
- case '15':
276
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.other;
277
- break;
278
- default:
279
- this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.other;
280
- break;
281
- }
282
- }
283
- GetNCCCV3PResponseMessage(eCRResponseCode) {
284
- this.retry = false;
285
- this.isSuccess = false;
286
- switch (eCRResponseCode) {
287
- case '0000':
288
- this.responseMessage = '交易成功';
289
- this.isSuccess = true;
290
- break;
291
- case '0001':
292
- this.responseMessage = '交易失敗(主機拒絕或是卡片拒絕)';
293
- break;
294
- case '0002':
295
- this.responseMessage = '請連絡銀行';
296
- break;
297
- case '0003':
298
- this.responseMessage = '交易逾時';
299
- break;
300
- case '0004':
301
- this.responseMessage = '操作錯誤';
302
- break;
303
- case 'responseMessage =':
304
- this.responseMessage = '通訊失敗';
305
- break;
306
- case '0006':
307
- this.responseMessage = '使用者終止交易';
308
- break;
309
- case '0009':
310
- this.responseMessage = '非參加機構卡片';
311
- break;
312
- case '0010':
313
- this.responseMessage = '電文錯誤';
314
- break;
315
- case '0011':
316
- this.responseMessage = '非聯名卡';
317
- break;
318
- case '0012':
319
- this.responseMessage = '電票金額超過上限';
320
- break;
321
- case '0013':
322
- this.responseMessage = '票卡已鎖';
323
- break;
324
- case '0014':
325
- this.responseMessage = '無法比對原始電票交易';
326
- break;
327
- case '0015':
328
- this.responseMessage = '票卡未開啟自動加值';
329
- break;
330
- case '0016':
331
- this.responseMessage = '電票餘額不足';
332
- break;
333
- case '0017':
334
- this.responseMessage = '多張票卡讀取失敗';
335
- break;
336
- case '0018':
337
- this.retry = true;
338
- // TODO: 408 timeout exception(printer & scanner), 601 timeout exception(PaymentMachine only)
339
- this.responseMessage = '請重新感應卡片';
340
- break;
341
- case '1001':
342
- this.responseMessage = '信用卡及電票皆結帳失敗';
343
- break;
344
- case '1002':
345
- this.responseMessage = '信用卡結帳成功,電票結帳失敗';
346
- break;
347
- case '1003':
348
- this.responseMessage = '信用卡結帳失敗,電票結帳成功';
349
- break;
350
- case '2001':
351
- this.responseMessage = '優惠券已被使用';
352
- break;
353
- case '2002':
354
- this.responseMessage = '優惠券不存在';
355
- break;
356
- case '2003':
357
- this.responseMessage = '不符合優惠規則';
358
- break;
359
- case '2004':
360
- this.responseMessage = '優惠活動已結束';
361
- break;
362
- case '2005':
363
- this.responseMessage = '優惠券已過期';
364
- break;
365
- case '2006':
366
- this.responseMessage = '無法辨識的 QR CODE';
367
- break;
368
- default:
369
- this.responseMessage = '未知的 ECR Response Code';
370
- break;
371
- }
372
- }
373
- }
374
- exports.PaymentMachineCommunicationModel = PaymentMachineCommunicationModel;
375
- // tslint:disable-next-line:member-ordering
376
- PaymentMachineCommunicationModel.tradeTypeString = [];
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PaymentMachineCommunicationModel = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const moment_1 = tslib_1.__importDefault(require("moment"));
6
+ const payment_machine_1 = require("../payment-machine");
7
+ // payment-machine-union.model.ts
8
+ const __1 = require("..");
9
+ /**
10
+ * @Deprecated - Please import from HAL
11
+ */
12
+ class PaymentMachineCommunicationModel {
13
+ CreatePaymentCardTypeString() {
14
+ this.paymentCardTypeString = [];
15
+ for (let i = 0; i < __1.PaymentCardTypeEnum.count; i++) {
16
+ this.paymentCardTypeString.push('');
17
+ }
18
+ this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard] = 'creditCard'; // 'N', '03'
19
+ this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay] = 'chinaUnionPay'; // 'C', '03' 註:結帳時 'N', '03'
20
+ this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade] = 'dCCTrade'; // 'N', '04'
21
+ this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket] = 'eTicket'; // 'E', '06'
22
+ this.paymentCardTypeString[__1.PaymentCardTypeEnum.unknown] = 'unknown';
23
+ }
24
+ StringToPaymentCardType(cUPSmartPayESVCIndicator, hostId) {
25
+ switch (cUPSmartPayESVCIndicator) {
26
+ case 'N':
27
+ switch (hostId) {
28
+ case '03':
29
+ this.paymentCardType = this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard];
30
+ break;
31
+ case '04':
32
+ this.paymentCardType = this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade];
33
+ break;
34
+ }
35
+ break;
36
+ case 'C':
37
+ this.paymentCardType = this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay];
38
+ break;
39
+ case 'E':
40
+ this.paymentCardType = this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket];
41
+ break;
42
+ }
43
+ }
44
+ PaymentCardTypeToStrings(isSettlement) {
45
+ let cUPSmartPayESVCIndicator;
46
+ let hostId;
47
+ if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard]) {
48
+ cUPSmartPayESVCIndicator = 'N';
49
+ hostId = '03';
50
+ }
51
+ else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay]) {
52
+ // 欄位定義詳見說明文件 P17。
53
+ // 註:回傳資料的欄位中並無銀聯卡專用欄位
54
+ cUPSmartPayESVCIndicator = isSettlement ? 'N' : 'C';
55
+ hostId = '03';
56
+ }
57
+ else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade]) {
58
+ cUPSmartPayESVCIndicator = 'N';
59
+ hostId = '04';
60
+ }
61
+ else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket]) {
62
+ cUPSmartPayESVCIndicator = 'E';
63
+ hostId = '06';
64
+ }
65
+ else if (this.paymentCardType === null || this.paymentCardType === undefined) {
66
+ cUPSmartPayESVCIndicator = ' ';
67
+ hostId = ' ';
68
+ }
69
+ else {
70
+ throw new Error('Unknown card type.');
71
+ }
72
+ return { cUPSmartPayESVCIndicator, hostId };
73
+ }
74
+ // tslint:disable-next-line:member-ordering
75
+ static CreateTradeTypeString() {
76
+ this.tradeTypeString = [];
77
+ for (let i = 0; i < payment_machine_1.PaymentMachineActionEnum.count; i++) {
78
+ this.tradeTypeString.push('');
79
+ }
80
+ this.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay] = 'pay';
81
+ this.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund] = 'refund';
82
+ this.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement] = 'settlement';
83
+ this.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry] = 'retry';
84
+ }
85
+ StringToTradeType(transType) {
86
+ switch (transType) {
87
+ case '01':
88
+ this.tradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay];
89
+ break;
90
+ case '02':
91
+ this.tradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund];
92
+ break;
93
+ case '50':
94
+ this.tradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement];
95
+ break;
96
+ case '62':
97
+ this.tradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry];
98
+ break;
99
+ }
100
+ }
101
+ TradeTypeToString() {
102
+ if (this.tradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay]) {
103
+ return '01';
104
+ }
105
+ else if (this.tradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund]) {
106
+ return '02';
107
+ }
108
+ else if (this.tradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement]) {
109
+ return '50';
110
+ }
111
+ else if (this.tradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry]) {
112
+ return '62';
113
+ }
114
+ else {
115
+ throw new Error('Unknown trade type.');
116
+ }
117
+ }
118
+ // tslint:disable-next-line:member-ordering
119
+ static GetTradeTypeString(paymentMachineAction) {
120
+ this.CreateTradeTypeString();
121
+ return PaymentMachineCommunicationModel.tradeTypeString[paymentMachineAction];
122
+ }
123
+ //#endregion
124
+ //#region Unix time stamp: currentTradeUnixTime, targetTradeUnixTime
125
+ StringToCurrentTradeUnixTime(date, time) {
126
+ const dateTime = (0, moment_1.default)(date + time, 'YYMMDDHHmmss');
127
+ if (dateTime.isValid()) {
128
+ this.currentTradeUnixTime = dateTime.unix();
129
+ }
130
+ else {
131
+ this.currentTradeUnixTime = undefined;
132
+ }
133
+ }
134
+ StringToTargetTradeUnixTime(date) {
135
+ try {
136
+ let isSpaces = true;
137
+ for (let i = 0; i < date.length; i++) {
138
+ if (date.charAt(i) !== ' ') {
139
+ isSpaces = false;
140
+ break;
141
+ }
142
+ }
143
+ if (isSpaces) {
144
+ this.targetTradeUnixTime = 0;
145
+ return;
146
+ }
147
+ const tempDate = (0, moment_1.default)(date, 'YYYYMMDD');
148
+ this.targetTradeUnixTime = tempDate.unix();
149
+ }
150
+ catch (_a) {
151
+ this.targetTradeUnixTime = 0;
152
+ }
153
+ }
154
+ // tslint:disable-next-line:member-ordering
155
+ static ToDateTime(unixTime) {
156
+ if (unixTime === 0) {
157
+ return { date: null, time: null };
158
+ }
159
+ const localDateTimeOffset = moment_1.default.unix(unixTime);
160
+ const dateTimeString = localDateTimeOffset.format('YYMMDDHHmmss');
161
+ return { date: dateTimeString.slice(0, 6), time: dateTimeString.slice(6, 12) };
162
+ }
163
+ // tslint:disable-next-line:member-ordering
164
+ static ToDate(unixTime) {
165
+ if (unixTime === 0 || unixTime === undefined) {
166
+ return null;
167
+ }
168
+ const localDateTimeOffset = moment_1.default.unix(unixTime);
169
+ const dateString = localDateTimeOffset.format('YYYYMMDD');
170
+ return dateString;
171
+ }
172
+ StringToTransactionId(creditCardApprovalNo, aTSETicketTransactionId) {
173
+ if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard] ||
174
+ this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay] ||
175
+ this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade]) {
176
+ this.transactionId = creditCardApprovalNo;
177
+ }
178
+ else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket]) {
179
+ this.transactionId = aTSETicketTransactionId;
180
+ }
181
+ }
182
+ TransactionIdToStrings() {
183
+ let creditCardApprovalNo;
184
+ let aTSETicketTransactionId;
185
+ if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.creditCard] ||
186
+ this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.chinaUnionPay] ||
187
+ this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.dCCTrade]) {
188
+ creditCardApprovalNo = this.transactionId;
189
+ }
190
+ else if (this.paymentCardType === this.paymentCardTypeString[__1.PaymentCardTypeEnum.eTicket]) {
191
+ aTSETicketTransactionId = this.transactionId;
192
+ }
193
+ else {
194
+ throw new Error('Unknown card type.');
195
+ }
196
+ return { creditCardApprovalNo, aTSETicketTransactionId };
197
+ }
198
+ StringToRetryTradeType(transType) {
199
+ switch (transType) {
200
+ case '01':
201
+ this.retryTradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay];
202
+ break;
203
+ case '02':
204
+ this.retryTradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund];
205
+ break;
206
+ case '50':
207
+ this.retryTradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement];
208
+ break;
209
+ case '62':
210
+ this.retryTradeType = PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry];
211
+ break;
212
+ }
213
+ }
214
+ RetryTradeTypeToString() {
215
+ if (this.retryTradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.pay]) {
216
+ return '01';
217
+ }
218
+ else if (this.retryTradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.refund]) {
219
+ return '02';
220
+ }
221
+ else if (this.retryTradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.settlement]) {
222
+ return '50';
223
+ }
224
+ else if (this.retryTradeType === PaymentMachineCommunicationModel.tradeTypeString[payment_machine_1.PaymentMachineActionEnum.retry]) {
225
+ return '62';
226
+ }
227
+ else {
228
+ throw new Error('Unknown trade type.');
229
+ }
230
+ }
231
+ StringToPaymentCardDetailedType(cardType) {
232
+ switch (cardType) {
233
+ case '01':
234
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.twin;
235
+ break;
236
+ case '02':
237
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.visa;
238
+ break;
239
+ case '03':
240
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.master;
241
+ break;
242
+ case '04':
243
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.jcb;
244
+ break;
245
+ case '05':
246
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.amex;
247
+ break;
248
+ case '06':
249
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.cup;
250
+ break;
251
+ case '07':
252
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.discover;
253
+ break;
254
+ case '08':
255
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.smartPay;
256
+ break;
257
+ case '11':
258
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.easyCard;
259
+ break;
260
+ case '12':
261
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.iPass;
262
+ break;
263
+ case '13':
264
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.iCash;
265
+ break;
266
+ case '14':
267
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.happyCash;
268
+ break;
269
+ case '15':
270
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.other;
271
+ break;
272
+ default:
273
+ this.paymentCardDetailedType = __1.PaymentCardDetailedTypeEnum.other;
274
+ break;
275
+ }
276
+ }
277
+ GetNCCCV3PResponseMessage(eCRResponseCode) {
278
+ this.retry = false;
279
+ this.isSuccess = false;
280
+ switch (eCRResponseCode) {
281
+ case '0000':
282
+ this.responseMessage = '交易成功';
283
+ this.isSuccess = true;
284
+ break;
285
+ case '0001':
286
+ this.responseMessage = '交易失敗(主機拒絕或是卡片拒絕)';
287
+ break;
288
+ case '0002':
289
+ this.responseMessage = '請連絡銀行';
290
+ break;
291
+ case '0003':
292
+ this.responseMessage = '交易逾時';
293
+ break;
294
+ case '0004':
295
+ this.responseMessage = '操作錯誤';
296
+ break;
297
+ case 'responseMessage =':
298
+ this.responseMessage = '通訊失敗';
299
+ break;
300
+ case '0006':
301
+ this.responseMessage = '使用者終止交易';
302
+ break;
303
+ case '0009':
304
+ this.responseMessage = '非參加機構卡片';
305
+ break;
306
+ case '0010':
307
+ this.responseMessage = '電文錯誤';
308
+ break;
309
+ case '0011':
310
+ this.responseMessage = '非聯名卡';
311
+ break;
312
+ case '0012':
313
+ this.responseMessage = '電票金額超過上限';
314
+ break;
315
+ case '0013':
316
+ this.responseMessage = '票卡已鎖';
317
+ break;
318
+ case '0014':
319
+ this.responseMessage = '無法比對原始電票交易';
320
+ break;
321
+ case '0015':
322
+ this.responseMessage = '票卡未開啟自動加值';
323
+ break;
324
+ case '0016':
325
+ this.responseMessage = '電票餘額不足';
326
+ break;
327
+ case '0017':
328
+ this.responseMessage = '多張票卡讀取失敗';
329
+ break;
330
+ case '0018':
331
+ this.retry = true;
332
+ // TODO: 408 timeout exception(printer & scanner), 601 timeout exception(PaymentMachine only)
333
+ this.responseMessage = '請重新感應卡片';
334
+ break;
335
+ case '1001':
336
+ this.responseMessage = '信用卡及電票皆結帳失敗';
337
+ break;
338
+ case '1002':
339
+ this.responseMessage = '信用卡結帳成功,電票結帳失敗';
340
+ break;
341
+ case '1003':
342
+ this.responseMessage = '信用卡結帳失敗,電票結帳成功';
343
+ break;
344
+ case '2001':
345
+ this.responseMessage = '優惠券已被使用';
346
+ break;
347
+ case '2002':
348
+ this.responseMessage = '優惠券不存在';
349
+ break;
350
+ case '2003':
351
+ this.responseMessage = '不符合優惠規則';
352
+ break;
353
+ case '2004':
354
+ this.responseMessage = '優惠活動已結束';
355
+ break;
356
+ case '2005':
357
+ this.responseMessage = '優惠券已過期';
358
+ break;
359
+ case '2006':
360
+ this.responseMessage = '無法辨識的 QR CODE';
361
+ break;
362
+ default:
363
+ this.responseMessage = '未知的 ECR Response Code';
364
+ break;
365
+ }
366
+ }
367
+ //#endregion
368
+ //#endregion
369
+ constructor() {
370
+ this.CreatePaymentCardTypeString();
371
+ PaymentMachineCommunicationModel.CreateTradeTypeString();
372
+ }
373
+ }
374
+ // tslint:disable-next-line:member-ordering
375
+ PaymentMachineCommunicationModel.tradeTypeString = [];
376
+ exports.PaymentMachineCommunicationModel = PaymentMachineCommunicationModel;
377
377
  //# sourceMappingURL=payment-machine-union.model.js.map