@chevre/domain 24.0.0-alpha.6 → 24.0.0-alpha.61

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 (531) hide show
  1. package/lib/chevre/errorHandler.js +7 -3
  2. package/lib/chevre/factory/transaction.d.ts +0 -3
  3. package/lib/chevre/repo/accountTitle.d.ts +7 -3
  4. package/lib/chevre/repo/accountTransaction.js +1 -2
  5. package/lib/chevre/repo/action/acceptCOAOffer.d.ts +32 -0
  6. package/lib/chevre/repo/action/acceptCOAOffer.js +73 -0
  7. package/lib/chevre/repo/action/acceptPay.d.ts +40 -0
  8. package/lib/chevre/repo/action/acceptPay.js +93 -0
  9. package/lib/chevre/repo/action/actionProcess.d.ts +146 -0
  10. package/lib/chevre/repo/action/actionProcess.js +792 -0
  11. package/lib/chevre/repo/action/authorizeInvoice.d.ts +26 -0
  12. package/lib/chevre/repo/action/authorizeInvoice.js +49 -0
  13. package/lib/chevre/repo/action/authorizeOffer.d.ts +72 -0
  14. package/lib/chevre/repo/action/authorizeOffer.js +139 -0
  15. package/lib/chevre/repo/action/authorizePaymentMethod.d.ts +48 -0
  16. package/lib/chevre/repo/action/authorizePaymentMethod.js +64 -0
  17. package/lib/chevre/repo/action/authorizeProductOffer.d.ts +26 -0
  18. package/lib/chevre/repo/action/authorizeProductOffer.js +55 -0
  19. package/lib/chevre/repo/action/authorizeTicketedObject.d.ts +8 -0
  20. package/lib/chevre/repo/action/authorizeTicketedObject.js +11 -0
  21. package/lib/chevre/repo/action/checkMovieTicket.d.ts +111 -0
  22. package/lib/chevre/repo/action/checkMovieTicket.js +200 -0
  23. package/lib/chevre/repo/action/checkThing.d.ts +8 -0
  24. package/lib/chevre/repo/action/checkThing.js +13 -0
  25. package/lib/chevre/repo/action/pay.d.ts +25 -0
  26. package/lib/chevre/repo/action/pay.js +54 -0
  27. package/lib/chevre/repo/action/refund.d.ts +9 -0
  28. package/lib/chevre/repo/action/refund.js +13 -0
  29. package/lib/chevre/repo/action.d.ts +25 -278
  30. package/lib/chevre/repo/action.js +357 -1245
  31. package/lib/chevre/repo/additionalProperty.js +2 -2
  32. package/lib/chevre/repo/advanceBookingRequirement.d.ts +1 -3
  33. package/lib/chevre/repo/advanceBookingRequirement.js +2 -2
  34. package/lib/chevre/repo/aggregateAction.d.ts +102 -0
  35. package/lib/chevre/repo/aggregateAction.js +378 -0
  36. package/lib/chevre/repo/aggregateOffer.d.ts +12 -12
  37. package/lib/chevre/repo/aggregateOffer.js +4 -3
  38. package/lib/chevre/repo/assetTransaction/reserve.d.ts +30 -0
  39. package/lib/chevre/repo/assetTransaction/reserve.js +126 -0
  40. package/lib/chevre/repo/assetTransaction.d.ts +47 -26
  41. package/lib/chevre/repo/assetTransaction.js +13 -6
  42. package/lib/chevre/repo/categoryCode.d.ts +9 -6
  43. package/lib/chevre/repo/categoryCode.js +2 -2
  44. package/lib/chevre/repo/comment.d.ts +7 -3
  45. package/lib/chevre/repo/creativeWork.d.ts +10 -9
  46. package/lib/chevre/repo/creativeWork.js +4 -3
  47. package/lib/chevre/repo/customer.d.ts +8 -3
  48. package/lib/chevre/repo/customer.js +2 -2
  49. package/lib/chevre/repo/customerType.d.ts +1 -1
  50. package/lib/chevre/repo/customerType.js +1 -0
  51. package/lib/chevre/repo/emailMessage.js +1 -1
  52. package/lib/chevre/repo/event.d.ts +12 -24
  53. package/lib/chevre/repo/event.js +32 -27
  54. package/lib/chevre/repo/eventOffer.d.ts +3 -3
  55. package/lib/chevre/repo/eventOffer.js +1 -0
  56. package/lib/chevre/repo/eventSellerMakesOffer.d.ts +3 -3
  57. package/lib/chevre/repo/eventSellerMakesOffer.js +1 -0
  58. package/lib/chevre/repo/eventSeries.d.ts +11 -5
  59. package/lib/chevre/repo/eventSeries.js +2 -2
  60. package/lib/chevre/repo/factory/reservation/createMongoConditions.d.ts +3 -0
  61. package/lib/chevre/repo/factory/reservation/createMongoConditions.js +776 -0
  62. package/lib/chevre/repo/identity.d.ts +13 -6
  63. package/lib/chevre/repo/identityProvider.d.ts +8 -21
  64. package/lib/chevre/repo/identityProvider.js +2 -2
  65. package/lib/chevre/repo/issuer.d.ts +8 -8
  66. package/lib/chevre/repo/issuer.js +3 -3
  67. package/lib/chevre/repo/member.d.ts +7 -3
  68. package/lib/chevre/repo/merchantReturnPolicy.d.ts +7 -3
  69. package/lib/chevre/repo/merchantReturnPolicy.js +1 -1
  70. package/lib/chevre/repo/message.js +1 -1
  71. package/lib/chevre/repo/mongoose/schemas/account.d.ts +4 -3
  72. package/lib/chevre/repo/mongoose/schemas/accountTitle.d.ts +4 -3
  73. package/lib/chevre/repo/mongoose/schemas/accountTransaction.d.ts +5 -4
  74. package/lib/chevre/repo/mongoose/schemas/accountingReport.d.ts +3 -2
  75. package/lib/chevre/repo/mongoose/schemas/action.d.ts +4 -3
  76. package/lib/chevre/repo/mongoose/schemas/actionRecipe.d.ts +4 -3
  77. package/lib/chevre/repo/mongoose/schemas/additionalProperty.d.ts +5 -4
  78. package/lib/chevre/repo/mongoose/schemas/advanceBookingRequirement.d.ts +3 -2
  79. package/lib/chevre/repo/mongoose/schemas/aggregateOffer.d.ts +4 -3
  80. package/lib/chevre/repo/mongoose/schemas/aggregateOrder.d.ts +3 -2
  81. package/lib/chevre/repo/mongoose/schemas/aggregateReservation.d.ts +4 -3
  82. package/lib/chevre/repo/mongoose/schemas/aggregation.d.ts +4 -3
  83. package/lib/chevre/repo/mongoose/schemas/assetTransaction.d.ts +4 -3
  84. package/lib/chevre/repo/mongoose/schemas/authorization.d.ts +4 -3
  85. package/lib/chevre/repo/mongoose/schemas/categoryCode.d.ts +5 -4
  86. package/lib/chevre/repo/mongoose/schemas/civicStructure.d.ts +3 -2
  87. package/lib/chevre/repo/mongoose/schemas/comments.d.ts +4 -3
  88. package/lib/chevre/repo/mongoose/schemas/creativeWork.d.ts +5 -4
  89. package/lib/chevre/repo/mongoose/schemas/customer.d.ts +5 -4
  90. package/lib/chevre/repo/mongoose/schemas/customerType.d.ts +5 -4
  91. package/lib/chevre/repo/mongoose/schemas/emailMessages.d.ts +4 -3
  92. package/lib/chevre/repo/mongoose/schemas/event.d.ts +3 -2
  93. package/lib/chevre/repo/mongoose/schemas/eventOffer.d.ts +4 -3
  94. package/lib/chevre/repo/mongoose/schemas/eventSeries.d.ts +3 -2
  95. package/lib/chevre/repo/mongoose/schemas/identity.d.ts +4 -3
  96. package/lib/chevre/repo/mongoose/schemas/identityProvider.d.ts +4 -3
  97. package/lib/chevre/repo/mongoose/schemas/issuer.d.ts +4 -3
  98. package/lib/chevre/repo/mongoose/schemas/member/global.d.ts +4 -3
  99. package/lib/chevre/repo/mongoose/schemas/member.d.ts +4 -3
  100. package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.d.ts +4 -3
  101. package/lib/chevre/repo/mongoose/schemas/message.d.ts +5 -4
  102. package/lib/chevre/repo/mongoose/schemas/movieTicketTypes.d.ts +4 -3
  103. package/lib/chevre/repo/mongoose/schemas/note.d.ts +3 -2
  104. package/lib/chevre/repo/mongoose/schemas/offerCatalog.d.ts +4 -3
  105. package/lib/chevre/repo/mongoose/schemas/offerCatalogItem.d.ts +4 -3
  106. package/lib/chevre/repo/mongoose/schemas/offerItemCondition.d.ts +5 -4
  107. package/lib/chevre/repo/mongoose/schemas/order.d.ts +4 -3
  108. package/lib/chevre/repo/mongoose/schemas/ownershipInfo.d.ts +6 -5
  109. package/lib/chevre/repo/mongoose/schemas/ownershipInfo.js +78 -71
  110. package/lib/chevre/repo/mongoose/schemas/paymentService.d.ts +4 -3
  111. package/lib/chevre/repo/mongoose/schemas/paymentServiceChannel.d.ts +4 -3
  112. package/lib/chevre/repo/mongoose/schemas/pendingReservation.d.ts +4 -3
  113. package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.d.ts +4 -3
  114. package/lib/chevre/repo/mongoose/schemas/place.d.ts +3 -2
  115. package/lib/chevre/repo/mongoose/schemas/potentialAction.d.ts +4 -3
  116. package/lib/chevre/repo/mongoose/schemas/priceSpecification.d.ts +6 -3
  117. package/lib/chevre/repo/mongoose/schemas/product.d.ts +4 -3
  118. package/lib/chevre/repo/mongoose/schemas/productModel.d.ts +6 -5
  119. package/lib/chevre/repo/mongoose/schemas/productOffer.d.ts +3 -2
  120. package/lib/chevre/repo/mongoose/schemas/project.d.ts +4 -3
  121. package/lib/chevre/repo/mongoose/schemas/reservation.d.ts +5 -4
  122. package/lib/chevre/repo/mongoose/schemas/reserveInterface.d.ts +4 -3
  123. package/lib/chevre/repo/mongoose/schemas/role.d.ts +3 -2
  124. package/lib/chevre/repo/mongoose/schemas/schedule.d.ts +5 -4
  125. package/lib/chevre/repo/mongoose/schemas/seller.d.ts +4 -3
  126. package/lib/chevre/repo/mongoose/schemas/sellerReturnPolicy.d.ts +4 -3
  127. package/lib/chevre/repo/mongoose/schemas/service/availableHour.d.ts +3 -2
  128. package/lib/chevre/repo/mongoose/schemas/serviceOutput.d.ts +5 -4
  129. package/lib/chevre/repo/mongoose/schemas/setting.d.ts +4 -3
  130. package/lib/chevre/repo/mongoose/schemas/task.d.ts +4 -3
  131. package/lib/chevre/repo/mongoose/schemas/task.js +1 -0
  132. package/lib/chevre/repo/mongoose/schemas/ticket.d.ts +4 -3
  133. package/lib/chevre/repo/mongoose/schemas/transaction.d.ts +7 -4
  134. package/lib/chevre/repo/mongoose/schemas/transaction.js +16 -0
  135. package/lib/chevre/repo/mongoose/schemas/transactionNumber.d.ts +3 -2
  136. package/lib/chevre/repo/mongoose/schemas/trip.d.ts +4 -3
  137. package/lib/chevre/repo/mongoose/schemas/webSite.d.ts +4 -3
  138. package/lib/chevre/repo/mongoose/virtuals.d.ts +3 -0
  139. package/lib/chevre/repo/mongoose/virtuals.js +2 -0
  140. package/lib/chevre/repo/movieTicketType.d.ts +3 -4
  141. package/lib/chevre/repo/movieTicketType.js +2 -2
  142. package/lib/chevre/repo/note.d.ts +3 -3
  143. package/lib/chevre/repo/note.js +1 -0
  144. package/lib/chevre/repo/noteAboutOrder.d.ts +1 -1
  145. package/lib/chevre/repo/noteAboutOrder.js +1 -0
  146. package/lib/chevre/repo/offer/offerInCatalogReadOnly.d.ts +1 -3
  147. package/lib/chevre/repo/offer/unitPriceInCatalog.d.ts +1 -3
  148. package/lib/chevre/repo/offerCatalog.d.ts +11 -7
  149. package/lib/chevre/repo/offerCatalog.js +6 -4
  150. package/lib/chevre/repo/offerCatalogItem.d.ts +3 -3
  151. package/lib/chevre/repo/offerCatalogItem.js +5 -4
  152. package/lib/chevre/repo/offerItemCondition.js +2 -2
  153. package/lib/chevre/repo/order.d.ts +8 -7
  154. package/lib/chevre/repo/order.js +3 -1
  155. package/lib/chevre/repo/orderInTransaction.d.ts +4 -0
  156. package/lib/chevre/repo/orderInTransaction.js +4 -0
  157. package/lib/chevre/repo/orderNumber.d.ts +3 -2
  158. package/lib/chevre/repo/orderNumber.js +17 -15
  159. package/lib/chevre/repo/ownershipInfo.d.ts +15 -8
  160. package/lib/chevre/repo/ownershipInfo.js +13 -10
  161. package/lib/chevre/repo/passport.d.ts +1 -1
  162. package/lib/chevre/repo/passport.js +1 -1
  163. package/lib/chevre/repo/paymentService.d.ts +3 -18
  164. package/lib/chevre/repo/paymentService.js +7 -7
  165. package/lib/chevre/repo/paymentServiceChannel.d.ts +1 -3
  166. package/lib/chevre/repo/paymentServiceChannel.js +2 -2
  167. package/lib/chevre/repo/pendingReservation.js +0 -1
  168. package/lib/chevre/repo/person.js +2 -2
  169. package/lib/chevre/repo/place/busStop.js +1 -1
  170. package/lib/chevre/repo/place/hasPOS.js +3 -3
  171. package/lib/chevre/repo/place/movieTheater.d.ts +7 -3
  172. package/lib/chevre/repo/place/movieTheater.js +10 -4
  173. package/lib/chevre/repo/place/screeningRoom.d.ts +7 -3
  174. package/lib/chevre/repo/place/screeningRoom.js +2 -2
  175. package/lib/chevre/repo/place/seat.d.ts +25 -21
  176. package/lib/chevre/repo/place/seat.js +15 -0
  177. package/lib/chevre/repo/place/section.js +6 -0
  178. package/lib/chevre/repo/potentialAction.d.ts +8 -29
  179. package/lib/chevre/repo/potentialAction.js +2 -2
  180. package/lib/chevre/repo/priceSpecification.d.ts +51 -24
  181. package/lib/chevre/repo/priceSpecification.js +11 -15
  182. package/lib/chevre/repo/product.d.ts +13 -13
  183. package/lib/chevre/repo/product.js +4 -3
  184. package/lib/chevre/repo/productModel.d.ts +3 -1
  185. package/lib/chevre/repo/productModel.js +17 -13
  186. package/lib/chevre/repo/productOffer.d.ts +3 -3
  187. package/lib/chevre/repo/productOffer.js +1 -0
  188. package/lib/chevre/repo/project.d.ts +8 -11
  189. package/lib/chevre/repo/rateLimit/offer.js +1 -1
  190. package/lib/chevre/repo/reservation.d.ts +51 -45
  191. package/lib/chevre/repo/reservation.js +40 -789
  192. package/lib/chevre/repo/reserveInterface.js +4 -4
  193. package/lib/chevre/repo/role.d.ts +39 -3
  194. package/lib/chevre/repo/schedule.js +1 -1
  195. package/lib/chevre/repo/seller.d.ts +9 -56
  196. package/lib/chevre/repo/seller.js +2 -2
  197. package/lib/chevre/repo/sellerMakesOffer.d.ts +2 -2
  198. package/lib/chevre/repo/sellerMakesOffer.js +2 -0
  199. package/lib/chevre/repo/sellerReturnPolicy.d.ts +1 -3
  200. package/lib/chevre/repo/sellerReturnPolicy.js +2 -2
  201. package/lib/chevre/repo/task.d.ts +8 -68
  202. package/lib/chevre/repo/task.js +1 -1
  203. package/lib/chevre/repo/transaction/placeOrder.d.ts +140 -0
  204. package/lib/chevre/repo/transaction/placeOrder.js +528 -0
  205. package/lib/chevre/repo/transaction/returnOrder.d.ts +45 -0
  206. package/lib/chevre/repo/transaction/returnOrder.js +341 -0
  207. package/lib/chevre/repo/transaction.d.ts +71 -142
  208. package/lib/chevre/repo/transaction.js +727 -632
  209. package/lib/chevre/repo/transactionProcess.js +1 -1
  210. package/lib/chevre/repo/trip.d.ts +4 -12
  211. package/lib/chevre/repo/trip.js +3 -3
  212. package/lib/chevre/repo/webSite.d.ts +1 -3
  213. package/lib/chevre/repo/webSite.js +3 -2
  214. package/lib/chevre/repository.d.ts +81 -10
  215. package/lib/chevre/repository.js +176 -24
  216. package/lib/chevre/service/aggregation/event/importFromCOA.js +3 -1
  217. package/lib/chevre/service/aggregation/system.d.ts +10 -10
  218. package/lib/chevre/service/aggregation/system.js +9 -9
  219. package/lib/chevre/service/assetTransaction/cancelReservation/factory.d.ts +2 -2
  220. package/lib/chevre/service/assetTransaction/cancelReservation/factory.js +1 -17
  221. package/lib/chevre/service/assetTransaction/cancelReservation/start.d.ts +2 -2
  222. package/lib/chevre/service/assetTransaction/cancelReservation/start.js +1 -1
  223. package/lib/chevre/service/assetTransaction/moneyTransfer.js +8 -5
  224. package/lib/chevre/service/assetTransaction/pay/check.d.ts +5 -4
  225. package/lib/chevre/service/assetTransaction/pay/confirm.d.ts +1 -1
  226. package/lib/chevre/service/assetTransaction/pay/exportTasksById.js +2 -1
  227. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.d.ts +9 -6
  228. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +5 -4
  229. package/lib/chevre/service/assetTransaction/pay/start/factory.js +2 -1
  230. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateAcceptedPaymentMethodIfNeeded.d.ts +4 -9
  231. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateAcceptedPaymentMethodIfNeeded.js +257 -36
  232. package/lib/chevre/service/assetTransaction/pay/start/processAuthorize.d.ts +11 -2
  233. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.d.ts +2 -2
  234. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.d.ts +9 -2
  235. package/lib/chevre/service/assetTransaction/pay/start.d.ts +13 -4
  236. package/lib/chevre/service/assetTransaction/refund.d.ts +5 -2
  237. package/lib/chevre/service/assetTransaction/refund.js +1 -1
  238. package/lib/chevre/service/assetTransaction/reserve/confirm/factory.d.ts +1 -1
  239. package/lib/chevre/service/assetTransaction/reserve/start/createSubReservations.js +6 -3
  240. package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.d.ts +4 -7
  241. package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.js +1 -41
  242. package/lib/chevre/service/assetTransaction/reserve/start/factory/createStartParams.js +3 -15
  243. package/lib/chevre/service/assetTransaction/reserve/start/factory/price.d.ts +1 -1
  244. package/lib/chevre/service/assetTransaction/reserve/start.js +6 -7
  245. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.d.ts +19 -4
  246. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.js +7 -1
  247. package/lib/chevre/service/assetTransaction.d.ts +1 -1
  248. package/lib/chevre/service/delivery/factory.js +44 -40
  249. package/lib/chevre/service/delivery/product/factory.js +2 -4
  250. package/lib/chevre/service/delivery/reservation/factory.js +17 -22
  251. package/lib/chevre/service/event/saveScreeningEvents.js +2 -2
  252. package/lib/chevre/service/event.js +4 -2
  253. package/lib/chevre/service/notification/notifyByEmail.d.ts +1 -1
  254. package/lib/chevre/service/notification/triggerWebhook.d.ts +7 -6
  255. package/lib/chevre/service/notification/triggerWebhook.js +1 -1
  256. package/lib/chevre/service/offer/any.d.ts +1 -1
  257. package/lib/chevre/service/offer/event/authorize/factory.d.ts +1 -1
  258. package/lib/chevre/service/offer/event/authorize/factory.js +18 -58
  259. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.d.ts +1 -3
  260. package/lib/chevre/service/offer/event/authorize.d.ts +6 -5
  261. package/lib/chevre/service/offer/event/authorize.js +27 -25
  262. package/lib/chevre/service/offer/event/importFromCOA.js +6 -2
  263. package/lib/chevre/service/offer/event/issueEventOfferTicket.d.ts +17 -15
  264. package/lib/chevre/service/offer/event/issueEventOfferTicket.js +4 -4
  265. package/lib/chevre/service/offer/event/searchEventTicketOffers.js +2 -1
  266. package/lib/chevre/service/offer/event/searchOffersByIds.js +2 -1
  267. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.d.ts +0 -2
  268. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.js +1 -0
  269. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4coa.d.ts +2 -0
  270. package/lib/chevre/service/offer/event/voidTransaction.d.ts +10 -3
  271. package/lib/chevre/service/offer/event/voidTransaction.js +20 -16
  272. package/lib/chevre/service/offer/event/voidTransactionByActionId.d.ts +8 -3
  273. package/lib/chevre/service/offer/event/voidTransactionByActionId.js +6 -5
  274. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.d.ts +16 -5
  275. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +7 -7
  276. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.d.ts +1 -1
  277. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.js +21 -36
  278. package/lib/chevre/service/offer/eventServiceByCOA/authorize.d.ts +7 -5
  279. package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +3 -10
  280. package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +21 -13
  281. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.d.ts +1 -1
  282. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +19 -10
  283. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.d.ts +2 -2
  284. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.js +2 -1
  285. package/lib/chevre/service/offer/product/factory.d.ts +5 -5
  286. package/lib/chevre/service/offer/product/factory.js +13 -5
  287. package/lib/chevre/service/offer/product.d.ts +9 -7
  288. package/lib/chevre/service/offer/product.js +21 -17
  289. package/lib/chevre/service/offer.d.ts +1 -2
  290. package/lib/chevre/service/offer.js +11 -9
  291. package/lib/chevre/service/order/confirmPayTransaction.d.ts +1 -3
  292. package/lib/chevre/service/order/confirmPayTransaction.js +1 -0
  293. package/lib/chevre/service/order/deleteOrder.js +2 -2
  294. package/lib/chevre/service/order/findPlaceOrderTransaction.d.ts +2 -2
  295. package/lib/chevre/service/order/findPlaceOrderTransaction.js +1 -1
  296. package/lib/chevre/service/order/onAssetTransactionStatusChanged/isDeliverable.d.ts +16 -0
  297. package/lib/chevre/service/order/onAssetTransactionStatusChanged/isDeliverable.js +97 -0
  298. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.d.ts +21 -0
  299. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.js +86 -0
  300. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.d.ts +22 -0
  301. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.js +112 -0
  302. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onReserveTransactionConfirmed.d.ts +22 -0
  303. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onReserveTransactionConfirmed.js +74 -0
  304. package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.d.ts +25 -0
  305. package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.js +111 -0
  306. package/lib/chevre/service/order/onAssetTransactionStatusChanged/processing2inTransit.d.ts +16 -0
  307. package/lib/chevre/service/order/onAssetTransactionStatusChanged/processing2inTransit.js +74 -0
  308. package/lib/chevre/service/order/onAssetTransactionStatusChanged.d.ts +8 -30
  309. package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +39 -349
  310. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.d.ts +1 -1
  311. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.d.ts +6 -7
  312. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +1 -1
  313. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.d.ts +6 -5
  314. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.d.ts +7 -6
  315. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +1 -1
  316. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.js +54 -37
  317. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.d.ts +1 -1
  318. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +82 -66
  319. package/lib/chevre/service/order/payOrder.d.ts +2 -2
  320. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.d.ts +12 -8
  321. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +41 -26
  322. package/lib/chevre/service/order/placeOrder/factory/orderedItem.d.ts +0 -1
  323. package/lib/chevre/service/order/placeOrder/factory/orderedItem.js +3 -28
  324. package/lib/chevre/service/order/placeOrder/factory.js +5 -6
  325. package/lib/chevre/service/order/placeOrder.d.ts +17 -12
  326. package/lib/chevre/service/order/placeOrder.js +7 -2
  327. package/lib/chevre/service/order/returnOrder.d.ts +2 -2
  328. package/lib/chevre/service/order/returnOrder.js +1 -1
  329. package/lib/chevre/service/order/sendOrder.d.ts +6 -6
  330. package/lib/chevre/service/order/sendOrder.js +14 -10
  331. package/lib/chevre/service/order.d.ts +3 -6
  332. package/lib/chevre/service/order.js +3 -9
  333. package/lib/chevre/service/payment/any/{fixOrderAsNeeded.d.ts → authorize/fixOrderAsNeeded.d.ts} +6 -6
  334. package/lib/chevre/service/payment/any/{fixOrderAsNeeded.js → authorize/fixOrderAsNeeded.js} +5 -8
  335. package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.d.ts +8 -5
  336. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.d.ts +14 -10
  337. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +34 -17
  338. package/lib/chevre/service/payment/any/authorize.d.ts +103 -0
  339. package/lib/chevre/service/payment/any/authorize.js +242 -0
  340. package/lib/chevre/service/payment/any/factory.js +1 -0
  341. package/lib/chevre/service/payment/any/findAcceptAction.d.ts +43 -0
  342. package/lib/chevre/service/payment/any/findAcceptAction.js +95 -0
  343. package/lib/chevre/service/payment/any/findAuthorizeAction.d.ts +42 -0
  344. package/lib/chevre/service/payment/any/findAuthorizeAction.js +84 -0
  345. package/lib/chevre/service/payment/any/findCheckAction.d.ts +45 -0
  346. package/lib/chevre/service/payment/any/findCheckAction.js +90 -0
  347. package/lib/chevre/service/payment/any/invalidatePaymentUrl.d.ts +29 -0
  348. package/lib/chevre/service/payment/any/invalidatePaymentUrl.js +188 -0
  349. package/lib/chevre/service/payment/any/onPayActionCompleted.d.ts +14 -5
  350. package/lib/chevre/service/payment/any/onPayActionCompleted.js +10 -2
  351. package/lib/chevre/service/payment/any/onPaymentStatusChanged.d.ts +10 -5
  352. package/lib/chevre/service/payment/any/onPaymentStatusChanged.js +21 -11
  353. package/lib/chevre/service/payment/any/onRefundActionCompletedOrFailed.d.ts +13 -10
  354. package/lib/chevre/service/payment/any/onRefundActionCompletedOrFailed.js +9 -6
  355. package/lib/chevre/service/payment/any/processVoidPayTransaction.d.ts +30 -0
  356. package/lib/chevre/service/payment/any/processVoidPayTransaction.js +126 -0
  357. package/lib/chevre/service/payment/any/publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl.d.ts +2 -2
  358. package/lib/chevre/service/payment/any/publishPaymentUrl.d.ts +66 -0
  359. package/lib/chevre/service/payment/any/publishPaymentUrl.js +133 -0
  360. package/lib/chevre/service/payment/any/verifyTicketTokenAsNeeded.js +2 -1
  361. package/lib/chevre/service/payment/any/voidPayTransaction.d.ts +34 -0
  362. package/lib/chevre/service/payment/any/voidPayTransaction.js +38 -0
  363. package/lib/chevre/service/payment/any.d.ts +8 -305
  364. package/lib/chevre/service/payment/any.js +17 -857
  365. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.d.ts +8 -6
  366. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +4 -4
  367. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.d.ts +8 -6
  368. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.js +3 -3
  369. package/lib/chevre/service/payment/creditCard/authorize.d.ts +3 -2
  370. package/lib/chevre/service/payment/creditCard/authorize.js +2 -2
  371. package/lib/chevre/service/payment/creditCard/payCreditCard.d.ts +7 -2
  372. package/lib/chevre/service/payment/creditCard/payCreditCard.js +8 -4
  373. package/lib/chevre/service/payment/creditCard/refundCreditCard.d.ts +7 -2
  374. package/lib/chevre/service/payment/creditCard/refundCreditCard.js +11 -7
  375. package/lib/chevre/service/payment/creditCard/voidTransaction.d.ts +9 -8
  376. package/lib/chevre/service/payment/creditCard/voidTransaction.js +15 -7
  377. package/lib/chevre/service/payment/faceToFace.d.ts +12 -3
  378. package/lib/chevre/service/payment/faceToFace.js +16 -8
  379. package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.js +2 -1
  380. package/lib/chevre/service/payment/factory.js +4 -2
  381. package/lib/chevre/service/payment/movieTicket/authorize.d.ts +9 -2
  382. package/lib/chevre/service/payment/movieTicket/authorize.js +1 -1
  383. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.d.ts +3 -3
  384. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +3 -3
  385. package/lib/chevre/service/payment/movieTicket/payMovieTicket/payActionParams2seatInfoSyncIn.d.ts +12 -0
  386. package/lib/chevre/service/payment/movieTicket/payMovieTicket/payActionParams2seatInfoSyncIn.js +72 -0
  387. package/lib/chevre/service/payment/movieTicket/payMovieTicket/processSeatInfoSync.d.ts +8 -0
  388. package/lib/chevre/service/payment/movieTicket/payMovieTicket/processSeatInfoSync.js +29 -0
  389. package/lib/chevre/service/payment/movieTicket/payMovieTicket.d.ts +8 -3
  390. package/lib/chevre/service/payment/movieTicket/payMovieTicket.js +14 -77
  391. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/createSeatInfoSyncCancelInOnRefund.d.ts +14 -0
  392. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/createSeatInfoSyncCancelInOnRefund.js +49 -0
  393. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/createSeatInfoSyncInOnRefund.d.ts +14 -0
  394. package/lib/chevre/service/{report.js → payment/movieTicket/refundMovieTicket/createSeatInfoSyncInOnRefund.js} +21 -8
  395. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/processSeatInfoSync.d.ts +12 -0
  396. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/processSeatInfoSync.js +72 -0
  397. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/processSeatInfoSyncCancel.d.ts +8 -0
  398. package/lib/chevre/service/payment/movieTicket/refundMovieTicket/processSeatInfoSyncCancel.js +62 -0
  399. package/lib/chevre/service/payment/movieTicket/refundMovieTicket.d.ts +8 -3
  400. package/lib/chevre/service/payment/movieTicket/refundMovieTicket.js +20 -125
  401. package/lib/chevre/service/payment/movieTicket/validation.d.ts +11 -11
  402. package/lib/chevre/service/payment/movieTicket/validation.js +50 -32
  403. package/lib/chevre/service/payment/movieTicket/voidTransaction.d.ts +6 -2
  404. package/lib/chevre/service/payment/movieTicket/voidTransaction.js +1 -1
  405. package/lib/chevre/service/payment/paymentCard.d.ts +12 -3
  406. package/lib/chevre/service/payment/paymentCard.js +16 -8
  407. package/lib/chevre/service/permit.js +4 -2
  408. package/lib/chevre/service/reserve/cancelReservation.d.ts +1 -1
  409. package/lib/chevre/service/reserve/cancelReservation.js +24 -26
  410. package/lib/chevre/service/reserve/confirmReservation.js +48 -9
  411. package/lib/chevre/service/reserve/factory.d.ts +3 -3
  412. package/lib/chevre/service/reserve/findByCode.d.ts +4 -3
  413. package/lib/chevre/service/reserve/findByCode.js +41 -8
  414. package/lib/chevre/service/reserve/findReservations.d.ts +19 -0
  415. package/lib/chevre/service/reserve/findReservations.js +74 -0
  416. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.d.ts +2 -3
  417. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +1 -0
  418. package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.d.ts +8 -3
  419. package/lib/chevre/service/reserve/searchByOrder.d.ts +2 -2
  420. package/lib/chevre/service/reserve/searchByOrder.js +5 -3
  421. package/lib/chevre/service/reserve/useReservation.js +7 -6
  422. package/lib/chevre/service/reserve/verifyToken4reservation.js +2 -1
  423. package/lib/chevre/service/reserve.d.ts +2 -1
  424. package/lib/chevre/service/reserve.js +3 -1
  425. package/lib/chevre/service/task/acceptCOAOffer.js +11 -6
  426. package/lib/chevre/service/task/authorizePayment.js +25 -8
  427. package/lib/chevre/service/task/checkMovieTicket.js +3 -3
  428. package/lib/chevre/service/task/checkResource.js +2 -2
  429. package/lib/chevre/service/task/confirmPayTransaction.js +2 -2
  430. package/lib/chevre/service/task/confirmReserveTransaction.js +4 -2
  431. package/lib/chevre/service/task/deletePerson.js +0 -1
  432. package/lib/chevre/service/task/deleteTransaction.js +5 -1
  433. package/lib/chevre/service/task/invalidatePaymentUrl.js +8 -2
  434. package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +4 -2
  435. package/lib/chevre/service/task/onOrderPaymentCompleted.js +2 -2
  436. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByEventSeries.d.ts +0 -2
  437. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByEventSeries.js +0 -6
  438. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesBySeller.d.ts +0 -2
  439. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesBySeller.js +0 -6
  440. package/lib/chevre/service/task/onResourceDeleted.js +0 -2
  441. package/lib/chevre/service/task/onResourceUpdated.js +1 -1
  442. package/lib/chevre/service/task/pay.js +11 -3
  443. package/lib/chevre/service/task/payment/invalidatePaymentUrlByTask.d.ts +7 -2
  444. package/lib/chevre/service/task/payment/payByTask.d.ts +22 -14
  445. package/lib/chevre/service/task/payment/payByTask.js +3 -2
  446. package/lib/chevre/service/task/payment/refundByTask.d.ts +7 -2
  447. package/lib/chevre/service/task/payment/voidPaymentByTask.d.ts +8 -0
  448. package/lib/chevre/service/task/placeOrder.js +10 -4
  449. package/lib/chevre/service/task/publishPaymentUrl.js +13 -7
  450. package/lib/chevre/service/task/refund.js +8 -2
  451. package/lib/chevre/service/task/returnOrder.js +4 -4
  452. package/lib/chevre/service/task/returnPayTransaction.js +8 -4
  453. package/lib/chevre/service/task/returnReserveTransaction.js +2 -1
  454. package/lib/chevre/service/task/sendOrder.js +4 -4
  455. package/lib/chevre/service/task/syncResourcesFromCOA.js +2 -0
  456. package/lib/chevre/service/task/voidPayTransaction.js +10 -4
  457. package/lib/chevre/service/task/voidPayment.js +8 -0
  458. package/lib/chevre/service/task/voidRegisterServiceTransaction.js +7 -6
  459. package/lib/chevre/service/task/voidReserveTransaction.js +8 -3
  460. package/lib/chevre/service/transaction/deleteTransaction.d.ts +4 -0
  461. package/lib/chevre/service/transaction/deleteTransaction.js +49 -49
  462. package/lib/chevre/service/transaction/placeOrder/confirm/validation/factory.d.ts +1 -1
  463. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.d.ts +2 -2
  464. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.js +2 -3
  465. package/lib/chevre/service/transaction/placeOrder/confirm/validation.d.ts +3 -3
  466. package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +4 -6
  467. package/lib/chevre/service/transaction/placeOrder/confirm.d.ts +10 -5
  468. package/lib/chevre/service/transaction/placeOrder/confirm.js +77 -53
  469. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +4 -16
  470. package/lib/chevre/service/transaction/placeOrder/exportTasksById.d.ts +7 -6
  471. package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +1 -1
  472. package/lib/chevre/service/transaction/placeOrder/{publishOrderNumberIfNotExist.d.ts → issueOrderNumberIfNotExist.d.ts} +4 -4
  473. package/lib/chevre/service/transaction/placeOrder/{publishOrderNumberIfNotExist.js → issueOrderNumberIfNotExist.js} +21 -13
  474. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.d.ts +2 -2
  475. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.js +3 -3
  476. package/lib/chevre/service/transaction/placeOrder/start.d.ts +3 -3
  477. package/lib/chevre/service/transaction/placeOrder/start.js +2 -2
  478. package/lib/chevre/service/transaction/placeOrder/updateAgent.d.ts +23 -0
  479. package/lib/chevre/service/transaction/placeOrder/updateAgent.js +126 -0
  480. package/lib/chevre/service/transaction/placeOrder.d.ts +2 -1
  481. package/lib/chevre/service/transaction/placeOrder.js +3 -1
  482. package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +2 -1
  483. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +2 -2
  484. package/lib/chevre/service/transaction/returnOrder/preStart/getReturnPolicyByProject.js +5 -3
  485. package/lib/chevre/service/transaction/returnOrder/preStart.d.ts +1 -1
  486. package/lib/chevre/service/transaction/returnOrder/preStart.js +3 -2
  487. package/lib/chevre/service/transaction/returnOrder.d.ts +16 -14
  488. package/lib/chevre/service/transaction/returnOrder.js +4 -4
  489. package/lib/chevre/service/transaction.d.ts +8 -24
  490. package/lib/chevre/service/transaction.js +6 -122
  491. package/lib/chevre/service/validation/validateOrder.js +7 -7
  492. package/lib/chevre/service.d.ts +0 -4
  493. package/lib/chevre/service.js +1 -12
  494. package/package.json +10 -12
  495. package/lib/chevre/repo/acceptedPaymentMethod.d.ts +0 -74
  496. package/lib/chevre/repo/acceptedPaymentMethod.js +0 -239
  497. package/lib/chevre/repo/mongoose/schemas/acceptedPaymentMethod.d.ts +0 -10
  498. package/lib/chevre/repo/mongoose/schemas/acceptedPaymentMethod.js +0 -97
  499. package/lib/chevre/repo/mongoose/schemas/telemetry.d.ts +0 -9
  500. package/lib/chevre/repo/mongoose/schemas/telemetry.js +0 -80
  501. package/lib/chevre/repo/telemetry.d.ts +0 -9
  502. package/lib/chevre/repo/telemetry.js +0 -14
  503. package/lib/chevre/service/offer/moneyTransfer/authorize.d.ts +0 -37
  504. package/lib/chevre/service/offer/moneyTransfer/authorize.js +0 -247
  505. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.d.ts +0 -16
  506. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.js +0 -96
  507. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.d.ts +0 -9
  508. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.js +0 -91
  509. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.d.ts +0 -9
  510. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.js +0 -78
  511. package/lib/chevre/service/offer/moneyTransfer.d.ts +0 -5
  512. package/lib/chevre/service/offer/moneyTransfer.js +0 -11
  513. package/lib/chevre/service/report/ownershipInfo.d.ts +0 -27
  514. package/lib/chevre/service/report/ownershipInfo.js +0 -39
  515. package/lib/chevre/service/report/telemetry.d.ts +0 -309
  516. package/lib/chevre/service/report/telemetry.js +0 -449
  517. package/lib/chevre/service/report.d.ts +0 -6
  518. package/lib/chevre/service/task/confirmMoneyTransfer.d.ts +0 -6
  519. package/lib/chevre/service/task/confirmMoneyTransfer.js +0 -19
  520. package/lib/chevre/service/task/returnMoneyTransfer.d.ts +0 -6
  521. package/lib/chevre/service/task/returnMoneyTransfer.js +0 -55
  522. package/lib/chevre/service/task/voidMoneyTransferTransaction.d.ts +0 -6
  523. package/lib/chevre/service/task/voidMoneyTransferTransaction.js +0 -22
  524. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.d.ts +0 -9
  525. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.js +0 -138
  526. package/lib/chevre/service/transaction/moneyTransfer/factory.d.ts +0 -2
  527. package/lib/chevre/service/transaction/moneyTransfer/factory.js +0 -55
  528. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.d.ts +0 -9
  529. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.js +0 -65
  530. package/lib/chevre/service/transaction/moneyTransfer.d.ts +0 -69
  531. package/lib/chevre/service/transaction/moneyTransfer.js +0 -649
@@ -28,18 +28,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.validateAcceptedPaymentMethodIfNeeded = validateAcceptedPaymentMethodIfNeeded;
30
30
  const debug_1 = __importDefault(require("debug"));
31
+ // import * as jwt from 'jsonwebtoken';
31
32
  const factory = __importStar(require("../../../../../factory"));
32
33
  const debug = (0, debug_1.default)('chevre-domain:service:assetTransaction:pay');
33
34
  /**
34
35
  * 必要あらば関連リソースの対応決済方法を検証する
35
36
  */
36
- function validateAcceptedPaymentMethodIfNeeded(params) {
37
+ function validateAcceptedPaymentMethodIfNeeded(params
38
+ // | {
39
+ // object: factory.action.accept.pay.IPayObject & {
40
+ // paymentMethod: factory.action.accept.pay.IPaymentMethod & {
41
+ // movieTickets: never;
42
+ // };
43
+ // };
44
+ // instrument: factory.action.accept.pay.IInstrument[];
45
+ // }
46
+ ) {
37
47
  return async (repos) => {
38
48
  const now = new Date();
39
49
  /**
40
50
  * 検証対象のイベントIDリスト
41
51
  */
42
52
  let checkingEventIds;
53
+ let paymentService;
43
54
  const paymentServiceType = params.object.typeOf;
44
55
  const paymentServiceId = params.object.id;
45
56
  // CreditCard or MovieTicket?
@@ -49,6 +60,16 @@ function validateAcceptedPaymentMethodIfNeeded(params) {
49
60
  if (Array.isArray(orderedItems)) {
50
61
  checkingEventIds = orderedItems.map((orderedItem) => orderedItem.orderedItem.serviceOutput.reservationFor.id);
51
62
  }
63
+ paymentService = (await repos.paymentService.projectFields({
64
+ limit: 1,
65
+ page: 1,
66
+ // project: { id: { $eq: params.project.id } },
67
+ typeOf: { $eq: paymentServiceType },
68
+ id: { $eq: paymentServiceId }
69
+ }, ['availableChannel', 'serviceType'])).shift();
70
+ if (paymentService === undefined) {
71
+ throw new factory.errors.NotFound(factory.service.paymentService.PaymentServiceType.CreditCard);
72
+ }
52
73
  }
53
74
  else if (paymentServiceType === factory.service.paymentService.PaymentServiceType.MovieTicket) {
54
75
  const movieTickets = params.object.paymentMethod.movieTickets;
@@ -59,6 +80,16 @@ function validateAcceptedPaymentMethodIfNeeded(params) {
59
80
  throw new factory.errors.Argument('movieTickets', 'Number of events must be 1');
60
81
  }
61
82
  }
83
+ paymentService = (await repos.paymentService.projectFields({
84
+ limit: 1,
85
+ page: 1,
86
+ // project: { id: { $eq: params.project.id } },
87
+ typeOf: { $eq: paymentServiceType },
88
+ id: { $eq: paymentServiceId }
89
+ }, ['availableChannel', 'serviceType'])).shift();
90
+ if (paymentService === undefined) {
91
+ throw new factory.errors.NotFound(factory.service.paymentService.PaymentServiceType.MovieTicket);
92
+ }
62
93
  }
63
94
  else {
64
95
  // 対面決済ではひとまず対応決済方法検証なし
@@ -81,47 +112,237 @@ function validateAcceptedPaymentMethodIfNeeded(params) {
81
112
  }
82
113
  const uniqueEventSeriesIds = [...new Set(eventSeriesIds)];
83
114
  debug('validateAcceptedPaymentMethodIfNeeded: eventSeries with AggregateOffer?', uniqueEventSeriesIds);
84
- for (const eventSeriesId of uniqueEventSeriesIds) {
85
- const eventSeries = (await repos.eventSeries.projectEventSeriesFields({
86
- limit: 1,
87
- page: 1,
88
- id: { $eq: eventSeriesId }
89
- }, ['offers'])).shift();
90
- if (eventSeries === undefined) {
91
- throw new factory.errors.NotFound(factory.eventType.ScreeningEventSeries);
92
- }
93
- if (eventSeries.offers?.typeOf === factory.offerType.AggregateOffer) {
94
- // 対応決済方法オファーIDの指定が必要
95
- const acceptedPaymentMethodOfferIds = [];
96
- params.instrument.forEach((instrument) => {
97
- if (instrument.typeOf === factory.offerType.Offer) {
98
- acceptedPaymentMethodOfferIds.push(instrument.id);
99
- }
115
+ // 決済方法に設定されたカスタム検証URLに依存する場合はこちら↓
116
+ if (paymentService !== undefined) {
117
+ const customValidationUrl = paymentService.availableChannel?.customValidationUrl;
118
+ if (typeof customValidationUrl === 'string' && customValidationUrl !== '') {
119
+ await validateByCustomUrl({
120
+ customValidationUrl,
121
+ eventSeriesIds: uniqueEventSeriesIds,
122
+ paymentMethodType: paymentService.serviceType.codeValue,
123
+ // amount: number,
124
+ now
100
125
  });
101
- if (acceptedPaymentMethodOfferIds.length === 0) {
102
- throw new factory.errors.ArgumentNull('acceptedPaymentMethodOfferIds');
103
- }
104
- // 全施設コンテンツについて有効な対応決済方法オファーの存在を検証
105
- const validAcceptedPaymentMethodOffer = (await repos.acceptedPaymentMethod.findAcceptedPaymentMethods({
106
- limit: 1,
107
- page: 1,
108
- id: { $in: acceptedPaymentMethodOfferIds }, // 指定されたIDで
109
- itemOffered: { id: { $eq: eventSeriesId } }, // リソースに対して
110
- acceptedPaymentMethod: { id: { $eq: paymentServiceId } }, // 決済方法を許可
111
- validFrom: { $lte: now }, // 現在有効
112
- validThrough: { $gte: now } // 現在有効
113
- }, ['identifier'])).shift();
114
- if (validAcceptedPaymentMethodOffer === undefined) {
115
- throw new factory.errors.NotFound(factory.offerType.Offer, `payment not accepted. eventSeriesId: ${eventSeriesId}`);
116
- }
117
- }
118
- else {
119
- // 集約オファーでなければ検証の必要なし
120
126
  }
121
127
  }
128
+ // トークンで検証する場合はこち↓
129
+ // // 指定された全トークンを抽出
130
+ // const acceptedPaymentMethodOfferTokens: string[] = [];
131
+ // params.instrument.forEach((instrument) => {
132
+ // if (instrument.typeOf === factory.offerType.Offer) {
133
+ // acceptedPaymentMethodOfferTokens.push(instrument.id);
134
+ // }
135
+ // });
136
+ // await validateAllItemTokens(
137
+ // paymentServiceId,
138
+ // uniqueEventSeriesIds,
139
+ // acceptedPaymentMethodOfferTokens,
140
+ // now
141
+ // )(repos);
122
142
  }
123
143
  else {
124
144
  // 関連注文の指定がなければ検証の必要なし
125
145
  }
126
146
  };
127
147
  }
148
+ const TIMEOUT = 2000;
149
+ // interface ICustomValidationResponse {
150
+ // isAllowed: boolean;
151
+ // };
152
+ async function validateByCustomUrl(params) {
153
+ try {
154
+ // 判定エンジンへのリクエスト
155
+ const validationRequest = {
156
+ eventSeriesIds: params.eventSeriesIds,
157
+ paymentMethodType: params.paymentMethodType,
158
+ // amount: params.amount
159
+ };
160
+ const res = await fetch(params.customValidationUrl, {
161
+ method: 'POST',
162
+ headers: { 'Content-Type': 'application/json' },
163
+ body: JSON.stringify(validationRequest),
164
+ // body data type must match "Content-Type" header
165
+ signal: AbortSignal.timeout(TIMEOUT)
166
+ });
167
+ if (!res.ok) {
168
+ throw new factory.errors.Argument('paymentMethod', `paymentMethod denied by the customValidation. statusCode: ${res.status}`);
169
+ }
170
+ }
171
+ catch (error) {
172
+ // ネットワークエラーやタイムアウト時のハンドリング
173
+ // サービス継続を優先するか、安全側に倒してエラーにするかはポリシー次第
174
+ debug('Custom validation failed:', error.message);
175
+ throw error;
176
+ }
177
+ }
178
+ // /**
179
+ // * トークンのペイロード構造
180
+ // */
181
+ // interface IPaymentOfferPayload extends Pick<factory.acceptedPaymentMethodOffer.IAcceptedPaymentMethodOffer, 'acceptedPaymentMethod' | 'itemOffered' | 'validFrom' | 'validThrough'> {
182
+ // iss: string;
183
+ // // sub: string; // 商品ID
184
+ // // paymentOffer: {
185
+ // // allowedMethods: string[];
186
+ // // limitAmount: number;
187
+ // // currency: string;
188
+ // // };
189
+ // }
190
+ // async function verifyOfferToken(params: {
191
+ // token: string;
192
+ // secret: string;
193
+ // issuer?: string;
194
+ // }): Promise<IPaymentOfferPayload> {
195
+ // let result: IPaymentOfferPayload;
196
+ // const { issuer, secret, token } = params;
197
+ // try {
198
+ // result = await new Promise<IPaymentOfferPayload>((resolve, reject) => {
199
+ // jwt.verify(
200
+ // token,
201
+ // secret,
202
+ // {
203
+ // algorithms: ['HS256'],
204
+ // issuer
205
+ // // ...(Array.isArray(params.audience)) ? { audience: params.audience } : undefined
206
+ // },
207
+ // (err, decoded: any) => {
208
+ // if (err instanceof Error) {
209
+ // reject(err);
210
+ // } else {
211
+ // resolve(decoded);
212
+ // }
213
+ // });
214
+ // });
215
+ // } catch (error) {
216
+ // // JWTエラーをハンドリング
217
+ // if (error instanceof jwt.TokenExpiredError) {
218
+ // throw new factory.errors.Argument('token', `invalid token. [${error.message} expiredAt:${error.expiredAt}]`);
219
+ // } else if (error instanceof jwt.JsonWebTokenError) {
220
+ // throw new factory.errors.Argument('token', `invalid token. [${error.message}]`);
221
+ // }
222
+ // throw error;
223
+ // }
224
+ // return result;
225
+ // }
226
+ // /**
227
+ // * 複数アイテムのトークン検証メイン関数
228
+ // */
229
+ // function validateAllItemTokens(
230
+ // selectedMethodId: string, // ユーザーが選択した決済方法ID
231
+ // eventSeriesIds: string[], // DBから取得した注文商品リスト
232
+ // providedTokens: string[], // クライアントから送られたJWT配列
233
+ // now: Date
234
+ // ) {
235
+ // return async (repos: {
236
+ // eventSeries: EventSeriesRepo;
237
+ // issuer: IssuerRepo;
238
+ // }) => {
239
+ // // 1. トークンをデコードして、商品ID(sub)をキーにしたマップを作成
240
+ // // ※ここでは署名検証前なので、decodeのみ行う
241
+ // const tokenMap = new Map<string, string>();
242
+ // providedTokens.forEach(t => {
243
+ // try {
244
+ // const decoded = jwt.decode(t) as IPaymentOfferPayload;
245
+ // if (decoded && typeof decoded.itemOffered?.id === 'string') {
246
+ // tokenMap.set(decoded.itemOffered.id, t);
247
+ // }
248
+ // } catch {
249
+ // // no op
250
+ // }
251
+ // });
252
+ // // 2. 全アイテムについてループを回して検証
253
+ // for (const eventSeriesId of eventSeriesIds) {
254
+ // const eventSeries = (await repos.eventSeries.projectEventSeriesFields(
255
+ // {
256
+ // limit: 1,
257
+ // page: 1,
258
+ // id: { $eq: eventSeriesId }
259
+ // },
260
+ // ['offers', 'project']
261
+ // )).shift();
262
+ // if (eventSeries === undefined) {
263
+ // throw new factory.errors.NotFound(factory.eventType.ScreeningEventSeries);
264
+ // }
265
+ // if (eventSeries.offers?.typeOf === factory.offerType.AggregateOffer) {
266
+ // // // 対応決済方法オファーIDの指定が必要
267
+ // // const acceptedPaymentMethodOfferTokens: string[] = [];
268
+ // // // const acceptedPaymentMethodOfferIds: string[] = [];
269
+ // // params.instrument.forEach((instrument) => {
270
+ // // if (instrument.typeOf === factory.offerType.Offer) {
271
+ // // acceptedPaymentMethodOfferTokens.push(instrument.id);
272
+ // // // acceptedPaymentMethodOfferIds.push(instrument.id);
273
+ // // }
274
+ // // });
275
+ // // if (acceptedPaymentMethodOfferTokens.length === 0) {
276
+ // // throw new factory.errors.ArgumentNull('acceptedPaymentMethodOfferTokens');
277
+ // // }
278
+ // // // if (acceptedPaymentMethodOfferIds.length === 0) {
279
+ // // // throw new factory.errors.ArgumentNull('acceptedPaymentMethodOfferIds');
280
+ // // // }
281
+ // const token = tokenMap.get(eventSeriesId);
282
+ // if (!token) {
283
+ // // throw new Error(`商品[${eventSeriesId}]の決済許可トークンが不足しています。`);
284
+ // throw new factory.errors.ArgumentNull(
285
+ // factory.offerType.Offer,
286
+ // `token required. eventSeriesId: ${eventSeriesId}`
287
+ // );
288
+ // }
289
+ // console.log('check token...:', token);
290
+ // // 3. 既存の「発行者管理」から公開鍵を取得
291
+ // const issuerCode = 'DefaultTokenIssuer';
292
+ // const issuer = await repos.issuer.findByIdentifier({
293
+ // project: { id: eventSeries.project.id },
294
+ // identifier: issuerCode
295
+ // });
296
+ // if (typeof issuer.tokenSecret !== 'string' || issuer.tokenSecret === '') {
297
+ // throw new factory.errors.NotFound('issuer.tokenSecret');
298
+ // }
299
+ // const verifiedOffer = await verifyOfferToken({
300
+ // secret: issuer.tokenSecret,
301
+ // issuer: issuer.url,
302
+ // token
303
+ // });
304
+ // // 5. ビジネスルールの厳密な検証
305
+ // // (a) トークン内の商品IDが、現在のアイテムと一致するか(すり替え防止)
306
+ // if (verifiedOffer.itemOffered.id !== eventSeriesId) {
307
+ // throw new factory.errors.Argument('token', `invalid token. [itemOffered.id not matched]`);
308
+ // }
309
+ // // (b) 選択された決済方法が、この商品の許可リストに含まれているか
310
+ // if (verifiedOffer.acceptedPaymentMethod.id !== selectedMethodId) {
311
+ // throw new factory.errors.NotFound(
312
+ // factory.offerType.Offer,
313
+ // `payment not accepted. eventSeriesId: ${eventSeriesId}`
314
+ // );
315
+ // }
316
+ // // // (c) 金額の検証(判定時より金額が上がっていないか)
317
+ // // if (item.amount > payload.paymentOffer.limitAmount) {
318
+ // // throw new Error(`商品[${item.productId}]の金額が承認された上限を超えています。`);
319
+ // // }
320
+ // // 現在有効検証
321
+ // console.log('check validFrom?:', now);
322
+ // // // 全施設コンテンツについて有効な対応決済方法オファーの存在を検証
323
+ // // const validAcceptedPaymentMethodOffer = (await repos.acceptedPaymentMethod.findAcceptedPaymentMethods(
324
+ // // {
325
+ // // limit: 1,
326
+ // // page: 1,
327
+ // // id: { $in: acceptedPaymentMethodOfferIds }, // 指定されたIDで
328
+ // // itemOffered: { id: { $eq: eventSeriesId } }, // リソースに対して
329
+ // // acceptedPaymentMethod: { id: { $eq: paymentServiceId } }, // 決済方法を許可
330
+ // // validFrom: { $lte: now }, // 現在有効
331
+ // // validThrough: { $gte: now } // 現在有効
332
+ // // },
333
+ // // ['identifier']
334
+ // // )).shift();
335
+ // // if (validAcceptedPaymentMethodOffer === undefined) {
336
+ // // throw new factory.errors.NotFound(
337
+ // // factory.offerType.Offer,
338
+ // // `payment not accepted. eventSeriesId: ${eventSeriesId}`
339
+ // // );
340
+ // // }
341
+ // } else {
342
+ // // 集約オファーでなければ検証の必要なし
343
+ // }
344
+ // }
345
+ // // 全てのアイテムで検証が通れば true
346
+ // return true;
347
+ // }
348
+ // }
@@ -1,7 +1,10 @@
1
1
  import * as factory from '../../../../factory';
2
2
  import { Settings } from '../../../../settings';
3
3
  import type { AccountingReportRepo } from '../../../../repo/accountingReport';
4
- import type { ActionRepo } from '../../../../repo/action';
4
+ import type { PayActionRepo } from '../../../../repo/action/pay';
5
+ import type { RefundActionRepo } from '../../../../repo/action/refund';
6
+ import type { CheckMovieTicketActionRepo } from '../../../../repo/action/checkMovieTicket';
7
+ import type { AuthorizeInvoiceActionRepo } from '../../../../repo/action/authorizeInvoice';
5
8
  import type { AssetTransactionRepo } from '../../../../repo/assetTransaction';
6
9
  import type { CredentialsRepo } from '../../../../repo/credentials';
7
10
  import type { EventRepo } from '../../../../repo/event';
@@ -13,7 +16,13 @@ import type { TaskRepo } from '../../../../repo/task';
13
16
  import { IPaymentAgencyTransaction } from '../../../payment/creditCard';
14
17
  export interface IProcessAuthorizeOperationRepos {
15
18
  accountingReport: AccountingReportRepo;
16
- action: ActionRepo;
19
+ action?: never;
20
+ actions: {
21
+ pay: PayActionRepo;
22
+ refund: RefundActionRepo;
23
+ };
24
+ checkMovieTicketAction: CheckMovieTicketActionRepo;
25
+ authorizeInvoiceAction: AuthorizeInvoiceActionRepo;
17
26
  credentials: CredentialsRepo;
18
27
  event: EventRepo;
19
28
  paymentAccepted: SellerPaymentAcceptedRepo;
@@ -1,6 +1,6 @@
1
1
  import * as factory from '../../../../factory';
2
2
  import { Settings } from '../../../../settings';
3
- import type { ActionRepo } from '../../../../repo/action';
3
+ import type { AuthorizeInvoiceActionRepo } from '../../../../repo/action/authorizeInvoice';
4
4
  import type { AssetTransactionRepo } from '../../../../repo/assetTransaction';
5
5
  import type { PaymentServiceRepo } from '../../../../repo/paymentService';
6
6
  import type { PaymentServiceProviderRepo } from '../../../../repo/paymentServiceProvider';
@@ -21,7 +21,7 @@ export declare function processAuthorizeCreditCard(params: factory.assetTransact
21
21
  id?: string;
22
22
  };
23
23
  }): (repos: {
24
- action: ActionRepo;
24
+ authorizeInvoiceAction: AuthorizeInvoiceActionRepo;
25
25
  paymentAccepted: SellerPaymentAcceptedRepo;
26
26
  paymentService: PaymentServiceRepo;
27
27
  paymentServiceProvider: PaymentServiceProviderRepo;
@@ -1,7 +1,9 @@
1
1
  import * as factory from '../../../../factory';
2
2
  import { Settings } from '../../../../settings';
3
3
  import type { AccountingReportRepo } from '../../../../repo/accountingReport';
4
- import type { ActionRepo } from '../../../../repo/action';
4
+ import type { PayActionRepo } from '../../../../repo/action/pay';
5
+ import type { RefundActionRepo } from '../../../../repo/action/refund';
6
+ import type { CheckMovieTicketActionRepo } from '../../../../repo/action/checkMovieTicket';
5
7
  import type { AssetTransactionRepo } from '../../../../repo/assetTransaction';
6
8
  import type { CredentialsRepo } from '../../../../repo/credentials';
7
9
  import type { EventRepo } from '../../../../repo/event';
@@ -31,7 +33,12 @@ export declare function processAuthorizeMovieTicket(params: factory.assetTransac
31
33
  };
32
34
  }): (repos: {
33
35
  accountingReport: AccountingReportRepo;
34
- action: ActionRepo;
36
+ action?: never;
37
+ actions: {
38
+ pay: PayActionRepo;
39
+ refund: RefundActionRepo;
40
+ };
41
+ checkMovieTicketAction: CheckMovieTicketActionRepo;
35
42
  credentials: CredentialsRepo;
36
43
  event: EventRepo;
37
44
  paymentAccepted: SellerPaymentAcceptedRepo;
@@ -1,12 +1,15 @@
1
1
  import * as factory from '../../../factory';
2
2
  import { Settings } from '../../../settings';
3
- import type { AcceptedPaymentMethodRepo } from '../../../repo/acceptedPaymentMethod';
4
3
  import type { AccountingReportRepo } from '../../../repo/accountingReport';
5
- import type { ActionRepo } from '../../../repo/action';
4
+ import type { PayActionRepo } from '../../../repo/action/pay';
5
+ import type { RefundActionRepo } from '../../../repo/action/refund';
6
+ import type { CheckMovieTicketActionRepo } from '../../../repo/action/checkMovieTicket';
7
+ import type { AuthorizeInvoiceActionRepo } from '../../../repo/action/authorizeInvoice';
6
8
  import type { AssetTransactionRepo } from '../../../repo/assetTransaction';
7
9
  import type { CredentialsRepo } from '../../../repo/credentials';
8
10
  import type { EventRepo } from '../../../repo/event';
9
11
  import type { EventSeriesRepo } from '../../../repo/eventSeries';
12
+ import type { IssuerRepo } from '../../../repo/issuer';
10
13
  import type { PaymentServiceRepo } from '../../../repo/paymentService';
11
14
  import type { PaymentServiceProviderRepo } from '../../../repo/paymentServiceProvider';
12
15
  import type { PotentialActionRepo } from '../../../repo/potentialAction';
@@ -15,11 +18,17 @@ import type { SellerPaymentAcceptedRepo } from '../../../repo/sellerPaymentAccep
15
18
  import type { TaskRepo } from '../../../repo/task';
16
19
  import { IPaymentAgencyTransaction } from '../../payment/creditCard';
17
20
  export interface IStartOperationRepos {
18
- acceptedPaymentMethod: AcceptedPaymentMethodRepo;
19
21
  accountingReport: AccountingReportRepo;
20
- action: ActionRepo;
22
+ action?: never;
23
+ actions: {
24
+ pay: PayActionRepo;
25
+ refund: RefundActionRepo;
26
+ };
27
+ checkMovieTicketAction: CheckMovieTicketActionRepo;
28
+ authorizeInvoiceAction: AuthorizeInvoiceActionRepo;
21
29
  credentials: CredentialsRepo;
22
30
  event: EventRepo;
31
+ issuer: IssuerRepo;
23
32
  eventSeries: EventSeriesRepo;
24
33
  paymentAccepted: SellerPaymentAcceptedRepo;
25
34
  paymentService: PaymentServiceRepo;
@@ -1,12 +1,15 @@
1
1
  import * as factory from '../../factory';
2
- import type { ActionRepo } from '../../repo/action';
2
+ import type { PayActionRepo } from '../../repo/action/pay';
3
3
  import type { AssetTransactionRepo } from '../../repo/assetTransaction';
4
4
  import type { PaymentServiceRepo } from '../../repo/paymentService';
5
5
  import type { PotentialActionRepo } from '../../repo/potentialAction';
6
6
  import type { ProductRepo } from '../../repo/product';
7
7
  import type { TaskRepo } from '../../repo/task';
8
8
  export interface IStartOperationRepos {
9
- action: ActionRepo;
9
+ action?: never;
10
+ actions: {
11
+ pay: PayActionRepo;
12
+ };
10
13
  paymentService: PaymentServiceRepo;
11
14
  potentialAction: PotentialActionRepo;
12
15
  product: ProductRepo;
@@ -54,7 +54,7 @@ function start(params) {
54
54
  });
55
55
  const paymentServiceType = payTransaction.object.typeOf;
56
56
  // PayActionを確認する
57
- const payAction = await repos.action.findPayAction({ project: { id: params.project.id }, paymentMethodId });
57
+ const payAction = await repos.actions.pay.findPayActionByPaymentMethodId({ project: { id: params.project.id }, paymentMethodId });
58
58
  if (payAction === undefined) {
59
59
  throw new factory.errors.NotFound(factory.actionType.PayAction);
60
60
  }
@@ -3,6 +3,6 @@ declare function createPotentialActions(params: {
3
3
  order?: Pick<factory.order.IOrder, 'orderNumber' | 'customer' | 'typeOf'>;
4
4
  }): {
5
5
  potentialActions: factory.assetTransaction.reserve.IPotentialActions;
6
- underName?: factory.reservation.IUnderName<factory.reservationType.EventReservation>;
6
+ underName?: factory.assetTransaction.reserve.IUnderName;
7
7
  };
8
8
  export { createPotentialActions };
@@ -421,7 +421,7 @@ function validateProgramMembershipUsed(params) {
421
421
  throw new factory.errors.Argument('acceptedOffer.itemOffered.serviceOutput.programMembershipUsed', `invalid issuedThrough.typeOf: ${issuedThroughTypeOf}`);
422
422
  }
423
423
  switch (permitIssuedThrough.typeOf) {
424
- case factory.service.paymentService.PaymentServiceType.FaceToFace:
424
+ case factory.service.paymentService.PaymentServiceType.FaceToFace: {
425
425
  // 適用メンバーシップ条件有のオファーであれば、問答無用に受け入れる
426
426
  const eligibleMembershipType = params.availableOffer.eligibleMembershipType?.[0]?.codeValue;
427
427
  if (typeof eligibleMembershipType === 'string') {
@@ -435,8 +435,9 @@ function validateProgramMembershipUsed(params) {
435
435
  };
436
436
  }
437
437
  break;
438
+ }
438
439
  // 発行サービスがCreditCardのケースに対応(2023-09-01~)
439
- case factory.service.paymentService.PaymentServiceType.CreditCard:
440
+ case factory.service.paymentService.PaymentServiceType.CreditCard: {
440
441
  // 決済サービスのserviceOutputにPermitが存在すれば、設定されたメンバーシップ区分のPermitをprogramMembershipUsedとして適用する
441
442
  let issuedThroughServiceType;
442
443
  if (Array.isArray(permitIssuedThrough.serviceOutput)) {
@@ -460,7 +461,8 @@ function validateProgramMembershipUsed(params) {
460
461
  throw new factory.errors.Argument('acceptedOffer.itemOffered.serviceOutput.programMembershipUsed', 'issuedThrough has no serviceOutput as Permit');
461
462
  }
462
463
  break;
463
- case factory.product.ProductType.MembershipService:
464
+ }
465
+ case factory.product.ProductType.MembershipService: {
464
466
  // requestedProgramMembershipUsedの発行サービスIDから外部連携設定を取得する
465
467
  const permitService = await createPermitService({ issuedThrough: { id: permitIssuedThrough.id } })(repos);
466
468
  // メンバーシップの存在確認
@@ -492,6 +494,7 @@ function validateProgramMembershipUsed(params) {
492
494
  };
493
495
  }
494
496
  break;
497
+ }
495
498
  default:
496
499
  throw new factory.errors.Argument('acceptedOffer.itemOffered.serviceOutput.programMembershipUsed', `${permitIssuedThrough.typeOf} not implemented`);
497
500
  }
@@ -2,10 +2,7 @@ import * as factory from '../../../../../factory';
2
2
  import { IMinimizedIndividualEvent } from '../../../../../factory/event';
3
3
  import { IAcceptedAddOn } from './price';
4
4
  type IObjectSubReservation = factory.assetTransaction.reserve.IObjectSubReservation;
5
- /**
6
- * 確定時予約のITicket
7
- */
8
- type IReservedTicket = Pick<factory.reservation.ITicket, 'identifier' | 'issuedBy' | 'ticketType' | 'ticketedSeat' | 'typeOf'>;
5
+ type IReservedTicket = Pick<factory.assetTransaction.reserve.ISubReservationReservedTicket, 'identifier' | 'issuedBy' | 'ticketType' | 'ticketedSeat' | 'typeOf'>;
9
6
  declare function createReservedTicket(params: {
10
7
  id: string;
11
8
  acceptedOffer: factory.assetTransaction.reserve.IAcceptedTicketOfferWithoutDetail;
@@ -43,14 +40,14 @@ declare function createReservation(params: {
43
40
  };
44
41
  id: string;
45
42
  reservationFor: IMinimizedIndividualEvent;
46
- reservedTicket: IReservedTicket;
43
+ reservedTicket: factory.assetTransaction.reserve.ISubReservationReservedTicket;
47
44
  additionalProperty?: factory.propertyValue.IPropertyValue<string>[];
48
45
  additionalTicketText?: string;
49
46
  ticketOffer: factory.product.ITicketOffer;
50
47
  seatPriceComponent: factory.place.seat.IPriceComponent[];
51
48
  acceptedAddOns: IAcceptedAddOn[];
52
- subReservation?: factory.reservation.ISubReservation<factory.reservationType.EventReservation>[];
53
- programMembershipUsed?: factory.reservation.IProgramMembershipUsed<factory.reservationType.EventReservation>;
49
+ subReservation?: factory.reservation.eventReservation.ISubReservation[];
50
+ programMembershipUsed?: factory.reservation.IProgramMembershipUsed;
54
51
  availableOffer: factory.unitPriceOffer.IUnitPriceOffer;
55
52
  appliesToMovieTicket?: factory.assetTransaction.reserve.IAcceptedAppliesToMovieTicket;
56
53
  validateAppliesToMovieTicket: boolean;
@@ -393,46 +393,6 @@ function createReservation(params) {
393
393
  };
394
394
  }
395
395
  else {
396
- return {
397
- // project: params.project,
398
- typeOf: factory.reservationType.BusReservation,
399
- id: params.id,
400
- // reservationPackage保管に移行(2023-06-06~)
401
- // issuedThrough,
402
- additionalProperty: params.additionalProperty,
403
- // bookingTime: params.reserveDate,
404
- // modifiedTime: params.reserveDate,
405
- numSeats: 1,
406
- price: price4reservation,
407
- priceCurrency: factory.priceCurrency.JPY,
408
- // reservationNumber: params.reservationNumber,
409
- // statusは不要なので削除(2023-07-19~)
410
- // reservationStatus: factory.reservationStatusType.ReservationPending,
411
- reservedTicket: params.reservedTicket,
412
- // underName: {
413
- // typeOf: params.agent.typeOf,
414
- // name: params.agent.name
415
- // },
416
- // checkedIn: false,
417
- // attended: false,
418
- ...(typeof params.additionalTicketText === 'string') ? { additionalTicketText: params.additionalTicketText } : undefined,
419
- ...(Array.isArray(params.subReservation))
420
- ? {
421
- subReservation: params.subReservation.map((r) => {
422
- return {
423
- reservedTicket: {
424
- ticketedSeat: r.reservedTicket.ticketedSeat,
425
- typeOf: 'Ticket'
426
- }
427
- };
428
- })
429
- }
430
- : undefined,
431
- // reservationPackage保管に移行(2023-06-06~)
432
- // ...(typeof params.broker?.typeOf === 'string') ? { broker: params.broker } : undefined,
433
- ...(typeof params.programMembershipUsed?.identifier === 'string')
434
- ? { programMembershipUsed: params.programMembershipUsed }
435
- : undefined
436
- };
396
+ throw new factory.errors.NotImplemented(`reservationFor not implemented. typeOf:${params.reservationFor.typeOf}`);
437
397
  }
438
398
  }
@@ -125,17 +125,15 @@ function createIssuedThrough(params) {
125
125
  typeOf: 'CategoryCode'
126
126
  }
127
127
  : undefined;
128
- const availableChannel = eventOffers.itemOffered.availableChannel;
129
- if (availableChannel === undefined) {
128
+ if (typeof eventOffers.itemOffered.id !== 'string') {
130
129
  // availableChannelは必ず存在するはず
131
- throw new factory.errors.NotFound('reservationFor.offers.availableChannel');
130
+ throw new factory.errors.NotFound('reservationFor.offers.itemOffered.id');
132
131
  }
133
132
  if (params.reservationFor.typeOf === factory.eventType.ScreeningEvent) {
134
133
  const issuedThrough = {
135
134
  typeOf: factory.product.ProductType.EventService,
136
135
  // 興行IDを追加(2022-09-08~)
137
136
  id: eventOffers.itemOffered.id,
138
- availableChannel,
139
137
  // issuedThrough.serviceTypeを連携
140
138
  ...(typeof serviceTypeOfIssuedThrough?.typeOf === 'string') ? { serviceType: serviceTypeOfIssuedThrough } : undefined
141
139
  };
@@ -144,16 +142,6 @@ function createIssuedThrough(params) {
144
142
  };
145
143
  }
146
144
  else {
147
- const issuedThrough = {
148
- typeOf: factory.product.ProductType.Transportation,
149
- // 興行IDを追加(2022-09-08~)
150
- id: eventOffers.itemOffered.id,
151
- availableChannel,
152
- // issuedThrough.serviceTypeを連携
153
- ...(typeof serviceTypeOfIssuedThrough?.typeOf === 'string') ? { serviceType: serviceTypeOfIssuedThrough } : undefined
154
- };
155
- return {
156
- issuedThrough
157
- };
145
+ throw new factory.errors.NotImplemented(`reservationFor not implemented. typeOf:${params.reservationFor.typeOf}`);
158
146
  }
159
147
  }
@@ -14,4 +14,4 @@ export declare function createPrice(params: {
14
14
  seatPriceComponent: factory.place.seat.IPriceComponent[];
15
15
  acceptedAddOns: IAcceptedAddOn[];
16
16
  appliesToMovieTicket?: factory.assetTransaction.reserve.IAcceptedAppliesToMovieTicket;
17
- }): factory.reservation.IPriceSpecification<factory.reservationType.EventReservation>;
17
+ }): factory.reservation.eventReservation.IPrice;