@chevre/domain 23.2.0-alpha.61 → 23.2.0-alpha.63

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 (481) hide show
  1. package/lib/chevre/credentials/customSearch.js +2 -0
  2. package/lib/chevre/credentials/lineNotify.js +4 -0
  3. package/lib/chevre/credentials/sendGrid.js +2 -0
  4. package/lib/chevre/credentials.js +15 -30
  5. package/lib/chevre/emailMessageBuilder.js +225 -250
  6. package/lib/chevre/errorHandler.js +38 -59
  7. package/lib/chevre/eventEmitter/assetTransaction.js +0 -1
  8. package/lib/chevre/eventEmitter/task.js +0 -1
  9. package/lib/chevre/eventEmitter/transaction.js +0 -1
  10. package/lib/chevre/factory/event.js +69 -42
  11. package/lib/chevre/factory/transactionNumber.js +2 -2
  12. package/lib/chevre/index.js +15 -30
  13. package/lib/chevre/repo/acceptedOffer.js +177 -197
  14. package/lib/chevre/repo/acceptedPaymentMethod.js +131 -144
  15. package/lib/chevre/repo/account.js +194 -238
  16. package/lib/chevre/repo/accountTitle.js +9 -21
  17. package/lib/chevre/repo/accountTransaction.js +186 -193
  18. package/lib/chevre/repo/accountingReport.js +88 -107
  19. package/lib/chevre/repo/action.js +849 -883
  20. package/lib/chevre/repo/additionalProperty.js +64 -92
  21. package/lib/chevre/repo/advanceBookingRequirement.js +69 -91
  22. package/lib/chevre/repo/aggregateOffer.js +392 -430
  23. package/lib/chevre/repo/aggregateOrder.js +50 -62
  24. package/lib/chevre/repo/aggregateReservation.js +76 -89
  25. package/lib/chevre/repo/aggregation.js +42 -63
  26. package/lib/chevre/repo/assetTransaction.js +692 -729
  27. package/lib/chevre/repo/authorization.js +115 -134
  28. package/lib/chevre/repo/categoryCode.js +114 -147
  29. package/lib/chevre/repo/comment.js +73 -82
  30. package/lib/chevre/repo/concurrentLock.js +17 -29
  31. package/lib/chevre/repo/confirmationNumber.js +19 -35
  32. package/lib/chevre/repo/creativeWork.js +152 -180
  33. package/lib/chevre/repo/credentials.js +39 -51
  34. package/lib/chevre/repo/customer.js +64 -88
  35. package/lib/chevre/repo/customerType.js +52 -62
  36. package/lib/chevre/repo/emailMessage.js +51 -80
  37. package/lib/chevre/repo/event.js +640 -684
  38. package/lib/chevre/repo/eventOffer.js +122 -125
  39. package/lib/chevre/repo/eventSellerMakesOffer.js +64 -76
  40. package/lib/chevre/repo/eventSeries.js +207 -244
  41. package/lib/chevre/repo/identity.js +94 -107
  42. package/lib/chevre/repo/identityProvider.js +72 -96
  43. package/lib/chevre/repo/issuer.js +102 -135
  44. package/lib/chevre/repo/member.js +238 -259
  45. package/lib/chevre/repo/memberProgram.js +157 -177
  46. package/lib/chevre/repo/merchantReturnPolicy.js +61 -94
  47. package/lib/chevre/repo/message.js +122 -135
  48. package/lib/chevre/repo/mongoose/onIndexCreated.js +0 -1
  49. package/lib/chevre/repo/mongoose/schemas/acceptedPaymentMethod.js +1 -1
  50. package/lib/chevre/repo/mongoose/schemas/account.js +1 -1
  51. package/lib/chevre/repo/mongoose/schemas/accountTitle.js +1 -1
  52. package/lib/chevre/repo/mongoose/schemas/accountTransaction.js +1 -1
  53. package/lib/chevre/repo/mongoose/schemas/accountingReport.js +1 -1
  54. package/lib/chevre/repo/mongoose/schemas/action.js +1 -1
  55. package/lib/chevre/repo/mongoose/schemas/actionRecipe.js +1 -1
  56. package/lib/chevre/repo/mongoose/schemas/additionalProperty.js +1 -1
  57. package/lib/chevre/repo/mongoose/schemas/advanceBookingRequirement.js +1 -1
  58. package/lib/chevre/repo/mongoose/schemas/aggregateOffer.js +1 -1
  59. package/lib/chevre/repo/mongoose/schemas/aggregateOrder.js +1 -1
  60. package/lib/chevre/repo/mongoose/schemas/aggregateReservation.js +1 -1
  61. package/lib/chevre/repo/mongoose/schemas/aggregation.js +1 -1
  62. package/lib/chevre/repo/mongoose/schemas/assetTransaction.js +1 -1
  63. package/lib/chevre/repo/mongoose/schemas/authorization.js +1 -1
  64. package/lib/chevre/repo/mongoose/schemas/categoryCode.js +1 -1
  65. package/lib/chevre/repo/mongoose/schemas/civicStructure.js +1 -1
  66. package/lib/chevre/repo/mongoose/schemas/creativeWork.js +1 -1
  67. package/lib/chevre/repo/mongoose/schemas/customer.js +1 -1
  68. package/lib/chevre/repo/mongoose/schemas/customerType.js +1 -1
  69. package/lib/chevre/repo/mongoose/schemas/event.js +1 -1
  70. package/lib/chevre/repo/mongoose/schemas/eventOffer.js +1 -1
  71. package/lib/chevre/repo/mongoose/schemas/eventSeries.js +1 -1
  72. package/lib/chevre/repo/mongoose/schemas/identity.js +1 -1
  73. package/lib/chevre/repo/mongoose/schemas/identityProvider.js +1 -1
  74. package/lib/chevre/repo/mongoose/schemas/issuer.js +1 -1
  75. package/lib/chevre/repo/mongoose/schemas/member/global.js +1 -1
  76. package/lib/chevre/repo/mongoose/schemas/member.js +1 -1
  77. package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.js +1 -1
  78. package/lib/chevre/repo/mongoose/schemas/message.js +1 -1
  79. package/lib/chevre/repo/mongoose/schemas/movieTicketTypes.js +1 -1
  80. package/lib/chevre/repo/mongoose/schemas/note.js +1 -1
  81. package/lib/chevre/repo/mongoose/schemas/offerCatalog.js +1 -1
  82. package/lib/chevre/repo/mongoose/schemas/offerCatalogItem.js +1 -1
  83. package/lib/chevre/repo/mongoose/schemas/offerItemCondition.js +1 -1
  84. package/lib/chevre/repo/mongoose/schemas/order.js +1 -1
  85. package/lib/chevre/repo/mongoose/schemas/paymentService.js +1 -1
  86. package/lib/chevre/repo/mongoose/schemas/paymentServiceChannel.js +1 -1
  87. package/lib/chevre/repo/mongoose/schemas/pendingReservation.js +1 -1
  88. package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.js +1 -1
  89. package/lib/chevre/repo/mongoose/schemas/place.js +1 -1
  90. package/lib/chevre/repo/mongoose/schemas/potentialAction.js +1 -1
  91. package/lib/chevre/repo/mongoose/schemas/product.js +1 -1
  92. package/lib/chevre/repo/mongoose/schemas/productModel.js +1 -1
  93. package/lib/chevre/repo/mongoose/schemas/productOffer.js +1 -1
  94. package/lib/chevre/repo/mongoose/schemas/reservation.js +1 -1
  95. package/lib/chevre/repo/mongoose/schemas/reserveInterface.js +1 -1
  96. package/lib/chevre/repo/mongoose/schemas/role.js +1 -1
  97. package/lib/chevre/repo/mongoose/schemas/schedule.js +1 -1
  98. package/lib/chevre/repo/mongoose/schemas/seller.js +1 -1
  99. package/lib/chevre/repo/mongoose/schemas/sellerReturnPolicy.js +1 -1
  100. package/lib/chevre/repo/mongoose/schemas/service/availableHour.js +1 -1
  101. package/lib/chevre/repo/mongoose/schemas/setting.js +1 -1
  102. package/lib/chevre/repo/mongoose/schemas/task.js +1 -2
  103. package/lib/chevre/repo/mongoose/schemas/ticket.js +1 -1
  104. package/lib/chevre/repo/mongoose/schemas/transaction.js +1 -1
  105. package/lib/chevre/repo/mongoose/schemas/transactionNumber.js +1 -1
  106. package/lib/chevre/repo/mongoose/schemas/trip.js +1 -1
  107. package/lib/chevre/repo/mongoose/schemas/webSite.js +1 -1
  108. package/lib/chevre/repo/movieTicketType.js +67 -94
  109. package/lib/chevre/repo/note.js +143 -147
  110. package/lib/chevre/repo/noteAboutOrder.js +112 -113
  111. package/lib/chevre/repo/offer/unitPriceInCatalog.js +330 -314
  112. package/lib/chevre/repo/offerCatalog.js +302 -334
  113. package/lib/chevre/repo/offerCatalogItem.js +289 -317
  114. package/lib/chevre/repo/offerItemCondition.js +60 -85
  115. package/lib/chevre/repo/order.js +559 -607
  116. package/lib/chevre/repo/orderInTransaction.js +113 -136
  117. package/lib/chevre/repo/orderNumber.js +95 -112
  118. package/lib/chevre/repo/ownershipInfo.js +212 -240
  119. package/lib/chevre/repo/passport.js +93 -102
  120. package/lib/chevre/repo/paymentMethod/creditCard.js +151 -169
  121. package/lib/chevre/repo/paymentService.js +179 -200
  122. package/lib/chevre/repo/paymentServiceChannel.js +76 -100
  123. package/lib/chevre/repo/paymentServiceProvider.js +186 -201
  124. package/lib/chevre/repo/pendingReservation.js +272 -305
  125. package/lib/chevre/repo/permit.js +47 -42
  126. package/lib/chevre/repo/person.js +217 -256
  127. package/lib/chevre/repo/place/busStop.js +76 -106
  128. package/lib/chevre/repo/place/entranceGate.js +123 -128
  129. package/lib/chevre/repo/place/hasPOS.js +108 -120
  130. package/lib/chevre/repo/place/movieTheater.js +185 -220
  131. package/lib/chevre/repo/place/screeningRoom.js +339 -325
  132. package/lib/chevre/repo/place/seat.js +538 -481
  133. package/lib/chevre/repo/place/section.js +328 -296
  134. package/lib/chevre/repo/potentialAction.js +67 -87
  135. package/lib/chevre/repo/priceSpecification.js +102 -146
  136. package/lib/chevre/repo/product.js +203 -239
  137. package/lib/chevre/repo/productHasOfferCatalog.js +39 -50
  138. package/lib/chevre/repo/productModel.js +94 -127
  139. package/lib/chevre/repo/productOffer.js +119 -118
  140. package/lib/chevre/repo/project.js +123 -141
  141. package/lib/chevre/repo/projectMakesOffer.js +96 -108
  142. package/lib/chevre/repo/rateLimit/offer.js +43 -57
  143. package/lib/chevre/repo/reservation.js +369 -398
  144. package/lib/chevre/repo/reserveInterface.js +31 -42
  145. package/lib/chevre/repo/role.js +93 -112
  146. package/lib/chevre/repo/schedule.js +25 -36
  147. package/lib/chevre/repo/seller.js +114 -147
  148. package/lib/chevre/repo/sellerMakesOffer.js +95 -110
  149. package/lib/chevre/repo/sellerPaymentAccepted.js +92 -109
  150. package/lib/chevre/repo/sellerReturnPolicy.js +74 -97
  151. package/lib/chevre/repo/service/availableHour.js +27 -38
  152. package/lib/chevre/repo/serviceOutput.js +54 -67
  153. package/lib/chevre/repo/serviceOutputIdentifier.js +46 -58
  154. package/lib/chevre/repo/setting/jwt.js +40 -50
  155. package/lib/chevre/repo/setting.js +48 -48
  156. package/lib/chevre/repo/stockHolder.js +179 -199
  157. package/lib/chevre/repo/task.js +610 -619
  158. package/lib/chevre/repo/telemetry.js +1 -0
  159. package/lib/chevre/repo/ticket.js +52 -65
  160. package/lib/chevre/repo/transaction.js +754 -815
  161. package/lib/chevre/repo/transactionNumber.js +67 -80
  162. package/lib/chevre/repo/transactionNumberCounter.js +68 -79
  163. package/lib/chevre/repo/transactionProcess.js +36 -47
  164. package/lib/chevre/repo/trip.js +144 -164
  165. package/lib/chevre/repo/webSite.js +90 -106
  166. package/lib/chevre/repository.js +455 -647
  167. package/lib/chevre/service/account.js +9 -21
  168. package/lib/chevre/service/accountTransaction/deposit.js +16 -17
  169. package/lib/chevre/service/accountTransaction/transfer.js +18 -22
  170. package/lib/chevre/service/accountTransaction/withdraw.js +16 -17
  171. package/lib/chevre/service/accountTransaction.js +4 -16
  172. package/lib/chevre/service/aggregation/event/aggregateOffers.js +63 -60
  173. package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +52 -55
  174. package/lib/chevre/service/aggregation/event/findEventOffers.js +7 -17
  175. package/lib/chevre/service/aggregation/event/importFromCOA.js +4 -14
  176. package/lib/chevre/service/aggregation/project.js +10 -19
  177. package/lib/chevre/service/aggregation/system.js +182 -99
  178. package/lib/chevre/service/assetTransaction/cancelReservation/factory.js +31 -17
  179. package/lib/chevre/service/assetTransaction/cancelReservation/start.js +17 -24
  180. package/lib/chevre/service/assetTransaction/cancelReservation/startAndConfirm.js +17 -15
  181. package/lib/chevre/service/assetTransaction/cancelReservation.js +7 -18
  182. package/lib/chevre/service/assetTransaction/cancelReservationCOA/factory.js +11 -4
  183. package/lib/chevre/service/assetTransaction/cancelReservationCOA.js +4 -13
  184. package/lib/chevre/service/assetTransaction/fixInformAction.js +6 -16
  185. package/lib/chevre/service/assetTransaction/moneyTransfer/potentialActions.js +13 -25
  186. package/lib/chevre/service/assetTransaction/moneyTransfer.js +101 -90
  187. package/lib/chevre/service/assetTransaction/pay/cancel.js +3 -12
  188. package/lib/chevre/service/assetTransaction/pay/check.js +4 -14
  189. package/lib/chevre/service/assetTransaction/pay/confirm.js +18 -21
  190. package/lib/chevre/service/assetTransaction/pay/exportTasksById.js +4 -14
  191. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +33 -34
  192. package/lib/chevre/service/assetTransaction/pay/searchGMOTrade.js +7 -17
  193. package/lib/chevre/service/assetTransaction/pay/start/account/validation.js +6 -16
  194. package/lib/chevre/service/assetTransaction/pay/start/factory.js +64 -37
  195. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateAcceptedPaymentMethodIfNeeded.js +7 -19
  196. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateSeller.js +6 -16
  197. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeAccount.js +7 -17
  198. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.js +9 -15
  199. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.js +3 -12
  200. package/lib/chevre/service/assetTransaction/pay/start.js +29 -35
  201. package/lib/chevre/service/assetTransaction/refund/factory.js +36 -16
  202. package/lib/chevre/service/assetTransaction/refund/potentialActions.js +12 -21
  203. package/lib/chevre/service/assetTransaction/refund.js +35 -41
  204. package/lib/chevre/service/assetTransaction/registerService/factory.js +65 -28
  205. package/lib/chevre/service/assetTransaction/registerService/potentialActions.js +50 -43
  206. package/lib/chevre/service/assetTransaction/registerService.js +45 -56
  207. package/lib/chevre/service/assetTransaction/reserve/cancel.js +5 -14
  208. package/lib/chevre/service/assetTransaction/reserve/confirm/factory.js +15 -4
  209. package/lib/chevre/service/assetTransaction/reserve/confirm.js +21 -26
  210. package/lib/chevre/service/assetTransaction/reserve/exportTasksById.js +3 -13
  211. package/lib/chevre/service/assetTransaction/reserve/start/createSubReservations.js +99 -83
  212. package/lib/chevre/service/assetTransaction/reserve/start/factory/createPointAward.js +17 -12
  213. package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.js +108 -72
  214. package/lib/chevre/service/assetTransaction/reserve/start/factory/createStartParams.js +69 -30
  215. package/lib/chevre/service/assetTransaction/reserve/start/factory/price.js +29 -20
  216. package/lib/chevre/service/assetTransaction/reserve/start.js +91 -108
  217. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/fixExtendedEventOffer.js +5 -15
  218. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/validateIssuedOfferIfExists.js +41 -54
  219. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/validateMemberTierIfExists.js +42 -56
  220. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/verifyTicketTokenAsNeeded.js +7 -19
  221. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest.js +15 -27
  222. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.js +24 -24
  223. package/lib/chevre/service/assetTransaction/reserveCOA/factory.js +12 -4
  224. package/lib/chevre/service/assetTransaction/reserveCOA.js +4 -13
  225. package/lib/chevre/service/assetTransaction.js +17 -21
  226. package/lib/chevre/service/delivery/factory.js +3 -4
  227. package/lib/chevre/service/delivery/product/factory.js +16 -7
  228. package/lib/chevre/service/delivery/reservation/factory.js +14 -3
  229. package/lib/chevre/service/delivery.js +48 -52
  230. package/lib/chevre/service/event/processUpdateMovieTheater.js +21 -26
  231. package/lib/chevre/service/event/saveScreeningEventSeries.js +56 -41
  232. package/lib/chevre/service/event/saveScreeningEvents.js +14 -29
  233. package/lib/chevre/service/event.js +34 -30
  234. package/lib/chevre/service/iam.js +8 -17
  235. package/lib/chevre/service/moneyTransfer.js +128 -112
  236. package/lib/chevre/service/notification/factory.js +11 -10
  237. package/lib/chevre/service/notification/notifyAbortedTasksByEmail.js +11 -15
  238. package/lib/chevre/service/notification/notifyByEmail.js +7 -19
  239. package/lib/chevre/service/notification/sendEmailMessage.js +23 -26
  240. package/lib/chevre/service/notification/triggerWebhook.js +58 -56
  241. package/lib/chevre/service/offer/any.js +6 -15
  242. package/lib/chevre/service/offer/event/authorize/factory.js +139 -63
  243. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre/requestedProgramMembershipUsed2permit.js +8 -19
  244. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.js +43 -27
  245. package/lib/chevre/service/offer/event/authorize.js +114 -71
  246. package/lib/chevre/service/offer/event/checkAvailability.js +5 -15
  247. package/lib/chevre/service/offer/event/importFromCOA/factory.js +9 -3
  248. package/lib/chevre/service/offer/event/importFromCOA.js +13 -19
  249. package/lib/chevre/service/offer/event/issueEventOfferTicket.js +38 -39
  250. package/lib/chevre/service/offer/event/searchEventTicketOffers.js +26 -41
  251. package/lib/chevre/service/offer/event/searchOfferAppliesToMovieTicket.js +11 -22
  252. package/lib/chevre/service/offer/event/searchOfferCatalogItemAvailability.js +13 -26
  253. package/lib/chevre/service/offer/event/searchOfferCatalogItems.js +15 -23
  254. package/lib/chevre/service/offer/event/searchOffersByIds.js +24 -39
  255. package/lib/chevre/service/offer/event/searchPriceSpecs4event.js +5 -14
  256. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.js +4 -13
  257. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4coa.js +6 -15
  258. package/lib/chevre/service/offer/event/voidTransaction.js +35 -41
  259. package/lib/chevre/service/offer/event/voidTransactionByActionId.js +14 -20
  260. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer/authorize.js +52 -42
  261. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer/factory.js +5 -1
  262. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +34 -37
  263. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.js +45 -26
  264. package/lib/chevre/service/offer/eventServiceByCOA/authorize/validateAcceptedOffers.js +67 -62
  265. package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +16 -27
  266. package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +8 -18
  267. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +42 -43
  268. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.js +22 -25
  269. package/lib/chevre/service/offer/factory.js +18 -8
  270. package/lib/chevre/service/offer/moneyTransfer/authorize.js +31 -36
  271. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.js +9 -18
  272. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.js +10 -19
  273. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.js +14 -24
  274. package/lib/chevre/service/offer/onEventChanged.js +69 -65
  275. package/lib/chevre/service/offer/product/factory.js +54 -32
  276. package/lib/chevre/service/offer/product/searchProductOffers.js +30 -24
  277. package/lib/chevre/service/offer/product.js +106 -82
  278. package/lib/chevre/service/offer.js +48 -45
  279. package/lib/chevre/service/order/confirmPayTransaction.js +28 -27
  280. package/lib/chevre/service/order/createAccountingReportIfNotExist.js +54 -41
  281. package/lib/chevre/service/order/deleteOrder.js +28 -36
  282. package/lib/chevre/service/order/findPlaceOrderTransaction.js +3 -12
  283. package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +64 -70
  284. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.js +1 -2
  285. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled.js +3 -12
  286. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered/factory.js +11 -6
  287. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.js +5 -14
  288. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.js +22 -9
  289. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.js +5 -14
  290. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +23 -26
  291. package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.js +13 -19
  292. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/createSendEmailMessageTaskIfNotExist.js +5 -14
  293. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/factory.js +24 -14
  294. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.js +23 -32
  295. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.js +8 -18
  296. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.js +10 -9
  297. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +23 -28
  298. package/lib/chevre/service/order/onOrderUpdated/factory.js +3 -5
  299. package/lib/chevre/service/order/onOrderUpdated.js +13 -15
  300. package/lib/chevre/service/order/payOrder.js +3 -12
  301. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +9 -20
  302. package/lib/chevre/service/order/placeOrder/factory/orderedItem.js +31 -15
  303. package/lib/chevre/service/order/placeOrder/factory.js +35 -22
  304. package/lib/chevre/service/order/placeOrder/voidAcceptedOfferIfNecessary.js +3 -12
  305. package/lib/chevre/service/order/placeOrder.js +12 -23
  306. package/lib/chevre/service/order/placeOrderWithoutTransaction.js +10 -18
  307. package/lib/chevre/service/order/returnOrder.js +27 -30
  308. package/lib/chevre/service/order/sendOrder.js +37 -37
  309. package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.js +19 -25
  310. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +24 -39
  311. package/lib/chevre/service/payment/any/factory.js +106 -50
  312. package/lib/chevre/service/payment/any/fixOrderAsNeeded.js +4 -13
  313. package/lib/chevre/service/payment/any/onPayActionCompleted.js +13 -18
  314. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onPaid.js +34 -37
  315. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onRefunded.js +18 -24
  316. package/lib/chevre/service/payment/any/onPaymentStatusChanged.js +16 -16
  317. package/lib/chevre/service/payment/any/onRefundActionCompletedOrFailed.js +15 -21
  318. package/lib/chevre/service/payment/any/person2username.js +32 -45
  319. package/lib/chevre/service/payment/any/publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl.js +8 -18
  320. package/lib/chevre/service/payment/any/verifyTicketTokenAsNeeded.js +5 -17
  321. package/lib/chevre/service/payment/any.js +181 -142
  322. package/lib/chevre/service/payment/creditCard/authorize/handleAuthorizeError.js +2 -2
  323. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +44 -25
  324. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.js +6 -15
  325. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3dsResult2recipe.js +5 -1
  326. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCardResult2recipe.js +10 -2
  327. package/lib/chevre/service/payment/creditCard/authorize.js +20 -22
  328. package/lib/chevre/service/payment/creditCard/factory.js +22 -4
  329. package/lib/chevre/service/payment/creditCard/getGMOInfoFromSeller.js +8 -18
  330. package/lib/chevre/service/payment/creditCard/payCreditCard.js +31 -36
  331. package/lib/chevre/service/payment/creditCard/refundCreditCard.js +40 -51
  332. package/lib/chevre/service/payment/creditCard/searchGMOTrade.js +33 -45
  333. package/lib/chevre/service/payment/creditCard/voidTransaction.js +15 -26
  334. package/lib/chevre/service/payment/faceToFace.js +14 -23
  335. package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.js +44 -25
  336. package/lib/chevre/service/payment/factory.js +50 -24
  337. package/lib/chevre/service/payment/movieTicket/authorize.js +35 -30
  338. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +22 -25
  339. package/lib/chevre/service/payment/movieTicket/factory.js +33 -10
  340. package/lib/chevre/service/payment/movieTicket/getCredentials.js +5 -15
  341. package/lib/chevre/service/payment/movieTicket/payMovieTicket.js +29 -40
  342. package/lib/chevre/service/payment/movieTicket/processPurchaseNumberAuth.js +8 -18
  343. package/lib/chevre/service/payment/movieTicket/refundMovieTicket.js +60 -60
  344. package/lib/chevre/service/payment/movieTicket/validation.js +41 -37
  345. package/lib/chevre/service/payment/movieTicket/voidTransaction.js +8 -18
  346. package/lib/chevre/service/payment/paymentCard.js +87 -104
  347. package/lib/chevre/service/permit.js +36 -35
  348. package/lib/chevre/service/product.js +23 -28
  349. package/lib/chevre/service/project.js +22 -31
  350. package/lib/chevre/service/report/ownershipInfo.js +3 -4
  351. package/lib/chevre/service/report/telemetry.js +51 -70
  352. package/lib/chevre/service/reserve/cancelReservation.js +92 -93
  353. package/lib/chevre/service/reserve/checkInReservation.js +24 -29
  354. package/lib/chevre/service/reserve/confirmReservation.js +33 -39
  355. package/lib/chevre/service/reserve/factory.js +42 -20
  356. package/lib/chevre/service/reserve/findByCode.js +13 -18
  357. package/lib/chevre/service/reserve/potentialActions/onPendingReservationCanceled.js +18 -24
  358. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +17 -25
  359. package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +38 -30
  360. package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +45 -37
  361. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +37 -33
  362. package/lib/chevre/service/reserve/potentialActions/onReservationsCreated.js +17 -23
  363. package/lib/chevre/service/reserve/searchByOrder.js +10 -20
  364. package/lib/chevre/service/reserve/useReservation.js +47 -34
  365. package/lib/chevre/service/reserve/verifyToken4reservation.js +7 -14
  366. package/lib/chevre/service/reserveCOA/cancelReservation.js +7 -17
  367. package/lib/chevre/service/reserveCOA/factory.js +5 -1
  368. package/lib/chevre/service/task/acceptCOAOffer.js +20 -25
  369. package/lib/chevre/service/task/aggregateOffers.js +3 -12
  370. package/lib/chevre/service/task/aggregateOnSystem.js +4 -14
  371. package/lib/chevre/service/task/aggregateScreeningEvent.js +3 -12
  372. package/lib/chevre/service/task/authorizePayment.js +9 -15
  373. package/lib/chevre/service/task/cancelMoneyTransfer.js +3 -12
  374. package/lib/chevre/service/task/cancelPendingReservation.js +10 -20
  375. package/lib/chevre/service/task/cancelReservation.js +3 -12
  376. package/lib/chevre/service/task/checkMovieTicket.js +16 -19
  377. package/lib/chevre/service/task/checkResource.js +7 -16
  378. package/lib/chevre/service/task/confirmMoneyTransfer.js +3 -12
  379. package/lib/chevre/service/task/confirmPayTransaction.js +6 -12
  380. package/lib/chevre/service/task/confirmRegisterService.js +3 -12
  381. package/lib/chevre/service/task/confirmRegisterServiceTransaction.js +24 -31
  382. package/lib/chevre/service/task/confirmReserveTransaction.js +48 -45
  383. package/lib/chevre/service/task/createAccountingReport.js +14 -20
  384. package/lib/chevre/service/task/deletePerson.js +48 -60
  385. package/lib/chevre/service/task/deleteTransaction.js +3 -12
  386. package/lib/chevre/service/task/givePointAward.js +3 -12
  387. package/lib/chevre/service/task/handleNotification.js +4 -14
  388. package/lib/chevre/service/task/importEventCapacitiesFromCOA.js +6 -16
  389. package/lib/chevre/service/task/importEventsFromCOA.js +6 -16
  390. package/lib/chevre/service/task/importOffersFromCOA.js +8 -18
  391. package/lib/chevre/service/task/invalidatePaymentUrl.js +6 -12
  392. package/lib/chevre/service/task/moneyTransfer.js +3 -12
  393. package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +3 -12
  394. package/lib/chevre/service/task/onAuthorizationCreated.js +11 -19
  395. package/lib/chevre/service/task/onEventChanged.js +3 -12
  396. package/lib/chevre/service/task/onOrderPaymentCompleted.js +3 -12
  397. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByAggregateOffer.js +7 -16
  398. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByEventSeries.js +7 -16
  399. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByMovieTheater.js +8 -17
  400. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByOfferCatalog.js +10 -19
  401. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByProduct.js +8 -17
  402. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByRoom.js +6 -15
  403. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesBySeller.js +14 -24
  404. package/lib/chevre/service/task/onResourceDeleted.js +17 -27
  405. package/lib/chevre/service/task/onResourceUpdated/onAggregateOfferUpdated.js +9 -21
  406. package/lib/chevre/service/task/onResourceUpdated/onCategoryCodeUpdated.js +3 -12
  407. package/lib/chevre/service/task/onResourceUpdated/onHasPOSUpdated.js +11 -23
  408. package/lib/chevre/service/task/onResourceUpdated/onOfferCatalogUpdated.js +13 -25
  409. package/lib/chevre/service/task/onResourceUpdated/syncCategoryCode.js +9 -15
  410. package/lib/chevre/service/task/onResourceUpdated/syncOfferCatalog.js +21 -27
  411. package/lib/chevre/service/task/onResourceUpdated.js +113 -158
  412. package/lib/chevre/service/task/pay.js +8 -16
  413. package/lib/chevre/service/task/payment/invalidatePaymentUrlByTask.js +4 -14
  414. package/lib/chevre/service/task/payment/payByTask.js +49 -38
  415. package/lib/chevre/service/task/payment/refundByTask.js +7 -17
  416. package/lib/chevre/service/task/payment/voidPaymentByTask.js +6 -15
  417. package/lib/chevre/service/task/placeOrder.js +6 -12
  418. package/lib/chevre/service/task/publishPaymentUrl.js +9 -14
  419. package/lib/chevre/service/task/refund.js +8 -16
  420. package/lib/chevre/service/task/registerService.js +3 -12
  421. package/lib/chevre/service/task/reserve.js +3 -12
  422. package/lib/chevre/service/task/returnMoneyTransfer.js +3 -12
  423. package/lib/chevre/service/task/returnOrder.js +6 -12
  424. package/lib/chevre/service/task/returnPayTransaction.js +54 -49
  425. package/lib/chevre/service/task/returnPointAward.js +3 -12
  426. package/lib/chevre/service/task/returnReserveTransaction.js +29 -30
  427. package/lib/chevre/service/task/sendEmailMessage.js +6 -13
  428. package/lib/chevre/service/task/sendOrder.js +12 -15
  429. package/lib/chevre/service/task/syncResourcesFromCOA.js +39 -45
  430. package/lib/chevre/service/task/triggerWebhook.js +6 -12
  431. package/lib/chevre/service/task/useReservation.js +11 -14
  432. package/lib/chevre/service/task/voidMoneyTransferTransaction.js +3 -12
  433. package/lib/chevre/service/task/voidPayTransaction.js +7 -12
  434. package/lib/chevre/service/task/voidPayment.js +3 -12
  435. package/lib/chevre/service/task/voidRegisterServiceTransaction.js +3 -12
  436. package/lib/chevre/service/task/voidReserveTransaction.js +10 -16
  437. package/lib/chevre/service/task.js +16 -26
  438. package/lib/chevre/service/taskHandler/onOperationFailed/informTaskIfNeeded.js +9 -20
  439. package/lib/chevre/service/taskHandler/onOperationFailed.js +20 -17
  440. package/lib/chevre/service/taskHandler.js +19 -22
  441. package/lib/chevre/service/transaction/deleteTransaction.js +104 -88
  442. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.js +15 -9
  443. package/lib/chevre/service/transaction/moneyTransfer/factory.js +13 -4
  444. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.js +12 -24
  445. package/lib/chevre/service/transaction/moneyTransfer.js +119 -98
  446. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions/sendEmailMessage.js +49 -51
  447. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions.js +14 -25
  448. package/lib/chevre/service/transaction/placeOrder/confirm/publishCode.js +4 -14
  449. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateInvoiceReferencesOrder.js +3 -4
  450. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateMovieTicket.js +3 -6
  451. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.js +2 -3
  452. package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +30 -47
  453. package/lib/chevre/service/transaction/placeOrder/confirm.js +75 -59
  454. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +31 -15
  455. package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +6 -15
  456. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.js +6 -15
  457. package/lib/chevre/service/transaction/placeOrder/publishOrderNumberIfNotExist.js +7 -16
  458. package/lib/chevre/service/transaction/placeOrder/start/factory.js +27 -7
  459. package/lib/chevre/service/transaction/placeOrder/start/validateStartRequest.js +53 -60
  460. package/lib/chevre/service/transaction/placeOrder/start.js +14 -18
  461. package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +13 -7
  462. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +176 -190
  463. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPointAward.js +75 -89
  464. package/lib/chevre/service/transaction/returnOrder/potentialActions/sendEmailMessage.js +40 -48
  465. package/lib/chevre/service/transaction/returnOrder/potentialActions.js +52 -56
  466. package/lib/chevre/service/transaction/returnOrder/preStart/findApplicableReturnPolicy.js +100 -104
  467. package/lib/chevre/service/transaction/returnOrder/preStart/getReturnPolicyByProject.js +60 -80
  468. package/lib/chevre/service/transaction/returnOrder/preStart.js +42 -47
  469. package/lib/chevre/service/transaction/returnOrder.js +32 -37
  470. package/lib/chevre/service/transaction.js +75 -46
  471. package/lib/chevre/service/validation/validateEvent.js +2 -11
  472. package/lib/chevre/service/validation/validateOrder.js +7 -18
  473. package/lib/chevre/service.js +85 -131
  474. package/lib/chevre/settings/aggregation.js +4 -0
  475. package/lib/chevre/settings.js +7 -1
  476. package/lib/index.js +0 -1
  477. package/package.json +6 -11
  478. package/example/src/chevre/addEventBySchedule.ts +0 -46
  479. package/example/src/idaas/auth0/adminApplications.ts +0 -183
  480. package/example/src/idaas/auth0/getToken.ts +0 -55
  481. package/example/src/idaas/auth0/getTokenByPrivateKeyJWT.ts +0 -84
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.aggregateOffers = aggregateOffers;
13
4
  const createDebug = require("debug");
@@ -19,30 +10,34 @@ const debug = createDebug('chevre-domain:service:aggregation');
19
10
  * イベントに対するオファー集計
20
11
  */
21
12
  function aggregateOffers(params) {
22
- return (repos) => __awaiter(this, void 0, void 0, function* () {
13
+ return async (repos) => {
23
14
  // 集計対象イベント検索
24
- const event = yield repos.event.projectEventFieldsById({ id: params.id }, [
15
+ const event = await repos.event.projectEventFieldsById({ id: params.id }, [
25
16
  'location', 'project', 'startDate', 'typeOf', 'superEvent.location.id', 'offers.itemOffered'
26
17
  ] // projection(2024-07-21~)
27
18
  );
28
- const eventCapacity = (yield repos.event.projectEventFields({
19
+ const eventCapacity = (await repos.event.projectEventFields({
29
20
  limit: 1,
30
21
  page: 1,
31
22
  id: { $eq: params.id },
32
23
  typeOf: params.typeOf
33
24
  }, ['maximumAttendeeCapacity', 'remainingAttendeeCapacity'])).shift();
34
25
  debug('processing aggregateOffersByEvent...', eventCapacity);
35
- yield aggregateOffersByEvent({
36
- event: Object.assign(Object.assign(Object.assign({}, event), (typeof (eventCapacity === null || eventCapacity === void 0 ? void 0 : eventCapacity.maximumAttendeeCapacity) === 'number')
37
- ? { maximumAttendeeCapacity: eventCapacity.maximumAttendeeCapacity }
38
- : undefined), (typeof (eventCapacity === null || eventCapacity === void 0 ? void 0 : eventCapacity.remainingAttendeeCapacity) === 'number')
39
- ? { remainingAttendeeCapacity: eventCapacity.remainingAttendeeCapacity }
40
- : undefined)
26
+ await aggregateOffersByEvent({
27
+ event: {
28
+ ...event,
29
+ ...(typeof eventCapacity?.maximumAttendeeCapacity === 'number')
30
+ ? { maximumAttendeeCapacity: eventCapacity.maximumAttendeeCapacity }
31
+ : undefined,
32
+ ...(typeof eventCapacity?.remainingAttendeeCapacity === 'number')
33
+ ? { remainingAttendeeCapacity: eventCapacity.remainingAttendeeCapacity }
34
+ : undefined
35
+ }
41
36
  })(repos);
42
- });
37
+ };
43
38
  }
44
39
  function aggregateOffersByEvent(params) {
45
- return (repos) => __awaiter(this, void 0, void 0, function* () {
40
+ return async (repos) => {
46
41
  const now = new Date();
47
42
  const event = params.event;
48
43
  // 施設取得は冗長なので、ルーム検索に変更(2023-01-30~)
@@ -53,13 +48,13 @@ function aggregateOffersByEvent(params) {
53
48
  else {
54
49
  throw new factory.errors.NotImplemented(`typeOf: ${params.event.typeOf}`);
55
50
  }
56
- const screeningRoom = yield repos.screeningRoom.findScreeningRoomsByBranchCode({
51
+ const screeningRoom = await repos.screeningRoom.findScreeningRoomsByBranchCode({
57
52
  project: { id: event.project.id },
58
53
  branchCode: { $eq: event.location.branchCode },
59
54
  containedInPlace: { id: { $eq: movieTheaterId } }
60
55
  });
61
56
  // オファーごとの集計
62
- const aggregateOffer = yield aggregateOfferByEvent({
57
+ const aggregateOffer = await aggregateOfferByEvent({
63
58
  aggregateDate: now,
64
59
  event,
65
60
  screeningRoom: screeningRoom
@@ -74,7 +69,7 @@ function aggregateOffersByEvent(params) {
74
69
  // // }
75
70
  // };
76
71
  // aggregateReservationsに保管(2024-03-25~)
77
- yield repos.aggregateReservation.save({
72
+ await repos.aggregateReservation.save({
78
73
  project: event.project,
79
74
  reservationFor: {
80
75
  id: event.id,
@@ -85,29 +80,36 @@ function aggregateOffersByEvent(params) {
85
80
  }, {
86
81
  $set: { aggregateOffer }
87
82
  });
88
- });
83
+ };
89
84
  }
90
85
  function reservedSeatsAvailable(params) {
91
- var _a, _b, _c, _d;
92
- return ((_d = (_c = (_b = (_a = params.event.offers) === null || _a === void 0 ? void 0 : _a.itemOffered) === null || _b === void 0 ? void 0 : _b.serviceOutput) === null || _c === void 0 ? void 0 : _c.reservedTicket) === null || _d === void 0 ? void 0 : _d.ticketedSeat) !== undefined;
86
+ return params.event.offers?.itemOffered?.serviceOutput?.reservedTicket?.ticketedSeat !== undefined;
93
87
  }
94
88
  function aggregateOfferByEvent(params) {
95
- return (repos) => __awaiter(this, void 0, void 0, function* () {
96
- var _a;
97
- const availableOffers = yield (0, findEventOffers_1.findEventOffers)(params)(repos);
89
+ return async (repos) => {
90
+ const availableOffers = await (0, findEventOffers_1.findEventOffers)(params)(repos);
98
91
  // 集計対象のオファーにフィルター(2024-11-09~)
99
- const offersIncludedInAggregateReservation = availableOffers.filter(({ settings }) => (settings === null || settings === void 0 ? void 0 : settings.includedInAggregateReservation) === true);
92
+ const offersIncludedInAggregateReservation = availableOffers.filter(({ settings }) => settings?.includedInAggregateReservation === true);
100
93
  // オファーごとの予約集計
101
94
  const offersWithAggregateReservation = [];
102
95
  for (const o of offersIncludedInAggregateReservation) {
103
- const { maximumAttendeeCapacity, remainingAttendeeCapacity, aggregateReservation } = yield aggregateReservationByOffer({
96
+ const { maximumAttendeeCapacity, remainingAttendeeCapacity, aggregateReservation } = await aggregateReservationByOffer({
104
97
  aggregateDate: params.aggregateDate,
105
98
  event: params.event,
106
99
  screeningRoom: params.screeningRoom,
107
100
  offer: o,
108
101
  availableOffers
109
102
  })(repos);
110
- offersWithAggregateReservation.push(Object.assign(Object.assign(Object.assign({ typeOf: o.typeOf, id: o.id, identifier: o.identifier, aggregateReservation: aggregateReservation }, (typeof maximumAttendeeCapacity === 'number') ? { maximumAttendeeCapacity } : undefined), (typeof remainingAttendeeCapacity === 'number') ? { remainingAttendeeCapacity } : undefined), (typeof ((_a = o.category) === null || _a === void 0 ? void 0 : _a.codeValue) === 'string') ? { category: o.category } : undefined));
103
+ offersWithAggregateReservation.push({
104
+ typeOf: o.typeOf,
105
+ id: o.id,
106
+ identifier: o.identifier,
107
+ aggregateReservation: aggregateReservation,
108
+ ...(typeof maximumAttendeeCapacity === 'number') ? { maximumAttendeeCapacity } : undefined,
109
+ ...(typeof remainingAttendeeCapacity === 'number') ? { remainingAttendeeCapacity } : undefined,
110
+ // category情報を追加
111
+ ...(typeof o.category?.codeValue === 'string') ? { category: o.category } : undefined
112
+ });
111
113
  }
112
114
  return {
113
115
  typeOf: factory.offerType.AggregateOffer,
@@ -115,21 +117,20 @@ function aggregateOfferByEvent(params) {
115
117
  offerCount: offersIncludedInAggregateReservation.length,
116
118
  offers: offersWithAggregateReservation
117
119
  };
118
- });
120
+ };
119
121
  }
120
122
  function aggregateReservationByOffer(params) {
121
- return (repos) => __awaiter(this, void 0, void 0, function* () {
123
+ return async (repos) => {
122
124
  let reservationCount4offer;
123
125
  // let attendeeCount4offer: number | undefined;
124
126
  // let checkInCount4offer: number | undefined;
125
127
  const reservationType = factory.reservationType.EventReservation;
126
128
  const offerIdsWithSameCategory = params.availableOffers.filter(({ category }) => {
127
- var _a;
128
- return typeof (category === null || category === void 0 ? void 0 : category.codeValue) === 'string' && category.codeValue === ((_a = params.offer.category) === null || _a === void 0 ? void 0 : _a.codeValue);
129
+ return typeof category?.codeValue === 'string' && category.codeValue === params.offer.category?.codeValue;
129
130
  })
130
131
  .map(({ id }) => id);
131
132
  if (offerIdsWithSameCategory.length > 0) {
132
- reservationCount4offer = yield repos.reservation.count({
133
+ reservationCount4offer = await repos.reservation.count({
133
134
  typeOf: reservationType,
134
135
  reservationFor: { id: { $eq: params.event.id } },
135
136
  reservationStatuses: [factory.reservationStatusType.ReservationConfirmed],
@@ -156,21 +157,24 @@ function aggregateReservationByOffer(params) {
156
157
  // checkedIn: true
157
158
  // });
158
159
  }
159
- const { maximumAttendeeCapacity, remainingAttendeeCapacity } = yield calculateCapacityByOffer(params)(repos);
160
- return Object.assign(Object.assign({ aggregateReservation: {
160
+ const { maximumAttendeeCapacity, remainingAttendeeCapacity } = await calculateCapacityByOffer(params)(repos);
161
+ return {
162
+ aggregateReservation: {
161
163
  typeOf: 'AggregateReservation',
162
164
  reservationCount: reservationCount4offer
163
165
  // attendeeCount: attendeeCount4offer, // discontinue(2024-11-10~)
164
166
  // checkInCount: checkInCount4offer // discontinue(2024-11-10~)
165
- } }, (typeof maximumAttendeeCapacity === 'number') ? { maximumAttendeeCapacity } : undefined), (typeof remainingAttendeeCapacity === 'number') ? { remainingAttendeeCapacity } : undefined);
166
- });
167
+ },
168
+ ...(typeof maximumAttendeeCapacity === 'number') ? { maximumAttendeeCapacity } : undefined,
169
+ ...(typeof remainingAttendeeCapacity === 'number') ? { remainingAttendeeCapacity } : undefined
170
+ };
171
+ };
167
172
  }
168
173
  /**
169
174
  * オファーごとのキャパシティを算出する
170
175
  */
171
176
  function calculateCapacityByOffer(params) {
172
- return (repos) => __awaiter(this, void 0, void 0, function* () {
173
- var _a;
177
+ return async (repos) => {
174
178
  let maximumAttendeeCapacity;
175
179
  let remainingAttendeeCapacity;
176
180
  if (reservedSeatsAvailable({ event: params.event })) {
@@ -180,7 +184,7 @@ function calculateCapacityByOffer(params) {
180
184
  // 座席タイプ制約のあるオファーの場合
181
185
  const eligibleSeatingTypes = params.offer.eligibleSeatingType;
182
186
  if (Array.isArray(eligibleSeatingTypes)) {
183
- const filterByEligibleSeatingTypeResult = yield filterByEligibleSeatingType({
187
+ const filterByEligibleSeatingTypeResult = await filterByEligibleSeatingType({
184
188
  event: params.event,
185
189
  screeningRoom: params.screeningRoom,
186
190
  eligibleSeatingTypes: eligibleSeatingTypes.map((e) => e.codeValue)
@@ -192,10 +196,10 @@ function calculateCapacityByOffer(params) {
192
196
  const eligibleSubReservation = params.offer.eligibleSubReservation;
193
197
  if (Array.isArray(eligibleSubReservation)) {
194
198
  // 適用サブ予約の座席タイプごとにキャパシティ算出
195
- const capacities = yield Promise.all(eligibleSubReservation
199
+ const capacities = await Promise.all(eligibleSubReservation
196
200
  .filter((subReservation) => typeof subReservation.amountOfThisGood === 'number' && subReservation.amountOfThisGood > 0)
197
- .map((subReservation) => __awaiter(this, void 0, void 0, function* () {
198
- const filterByEligibleSeatingTypeResult = yield filterByEligibleSeatingType({
201
+ .map(async (subReservation) => {
202
+ const filterByEligibleSeatingTypeResult = await filterByEligibleSeatingType({
199
203
  event: params.event,
200
204
  screeningRoom: params.screeningRoom,
201
205
  eligibleSeatingTypes: [subReservation.typeOfGood.seatingType]
@@ -204,13 +208,13 @@ function calculateCapacityByOffer(params) {
204
208
  maximumAttendeeCapacity: Math.floor(filterByEligibleSeatingTypeResult.maximumAttendeeCapacity / subReservation.amountOfThisGood),
205
209
  remainingAttendeeCapacity: Math.floor(filterByEligibleSeatingTypeResult.remainingAttendeeCapacity / subReservation.amountOfThisGood)
206
210
  };
207
- })));
211
+ }));
208
212
  // 座席タイプごとのキャパシティの中から、最小数を選択する
209
213
  maximumAttendeeCapacity = Math.min(...(typeof maximumAttendeeCapacity === 'number') ? [maximumAttendeeCapacity] : [], ...capacities.map((c) => c.maximumAttendeeCapacity));
210
214
  remainingAttendeeCapacity = Math.min(...(typeof remainingAttendeeCapacity === 'number') ? [remainingAttendeeCapacity] : [], ...capacities.map((c) => c.remainingAttendeeCapacity));
211
215
  }
212
216
  // 単価スペックの単位が1より大きい場合
213
- const referenceQuantityValue = (_a = params.offer.priceSpecification) === null || _a === void 0 ? void 0 : _a.referenceQuantity.value;
217
+ const referenceQuantityValue = params.offer.priceSpecification?.referenceQuantity.value;
214
218
  if (typeof referenceQuantityValue === 'number' && referenceQuantityValue > 1) {
215
219
  if (typeof maximumAttendeeCapacity === 'number') {
216
220
  maximumAttendeeCapacity -= maximumAttendeeCapacity % referenceQuantityValue;
@@ -221,18 +225,17 @@ function calculateCapacityByOffer(params) {
221
225
  }
222
226
  }
223
227
  // レート制限がある場合、考慮する
224
- if (yield isHoldByRateLimit(params)({ offerRateLimit: repos.offerRateLimit })) {
228
+ if (await isHoldByRateLimit(params)({ offerRateLimit: repos.offerRateLimit })) {
225
229
  remainingAttendeeCapacity = 0;
226
230
  }
227
231
  return { maximumAttendeeCapacity, remainingAttendeeCapacity };
228
- });
232
+ };
229
233
  }
230
234
  function isHoldByRateLimit(params) {
231
- return (repos) => __awaiter(this, void 0, void 0, function* () {
232
- var _a, _b;
235
+ return async (repos) => {
233
236
  let isHold = false;
234
- const scope = (_a = params.offer.validRateLimit) === null || _a === void 0 ? void 0 : _a.scope;
235
- const unitInSeconds = (_b = params.offer.validRateLimit) === null || _b === void 0 ? void 0 : _b.unitInSeconds;
237
+ const scope = params.offer.validRateLimit?.scope;
238
+ const unitInSeconds = params.offer.validRateLimit?.unitInSeconds;
236
239
  if (typeof scope === 'string' && typeof unitInSeconds === 'number') {
237
240
  const rateLimitKey = {
238
241
  project: { id: params.event.project.id },
@@ -247,17 +250,17 @@ function isHoldByRateLimit(params) {
247
250
  },
248
251
  reservationNumber: ''
249
252
  };
250
- const holder = yield repos.offerRateLimit.getHolder(rateLimitKey);
253
+ const holder = await repos.offerRateLimit.getHolder(rateLimitKey);
251
254
  // ロックされていれば在庫0
252
255
  if (typeof holder === 'string' && holder.length > 0) {
253
256
  isHold = true;
254
257
  }
255
258
  }
256
259
  return isHold;
257
- });
260
+ };
258
261
  }
259
262
  function filterByEligibleSeatingType(params) {
260
- return (repos) => __awaiter(this, void 0, void 0, function* () {
263
+ return async (repos) => {
261
264
  // 適用座席タイプに絞る
262
265
  const eligibleSeatOffers = (Array.isArray(params.screeningRoom.containsPlace))
263
266
  ? params.screeningRoom.containsPlace.reduce((a, b) => {
@@ -283,7 +286,7 @@ function filterByEligibleSeatingType(params) {
283
286
  const maximumAttendeeCapacity = eligibleSeatOffers.length;
284
287
  let remainingAttendeeCapacity;
285
288
  if (maximumAttendeeCapacity > 0) {
286
- const availabilities = yield repos.stockHolder.searchHolders({
289
+ const availabilities = await repos.stockHolder.searchHolders({
287
290
  project: { id: params.event.project.id },
288
291
  eventId: params.event.id,
289
292
  startDate: moment(params.event.startDate)
@@ -297,5 +300,5 @@ function filterByEligibleSeatingType(params) {
297
300
  remainingAttendeeCapacity = 0;
298
301
  }
299
302
  return { maximumAttendeeCapacity, remainingAttendeeCapacity };
300
- });
303
+ };
301
304
  }
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.aggregateScreeningEvent = aggregateScreeningEvent;
13
4
  /**
@@ -23,30 +14,29 @@ const debug = createDebug('chevre-domain:service:aggregation');
23
14
  * イベントデータをID指定で集計する
24
15
  */
25
16
  function aggregateScreeningEvent(params) {
26
- return (repos
17
+ return async (repos
27
18
  // settings: Settings
28
- ) => __awaiter(this, void 0, void 0, function* () {
29
- var _a, _b, _c, _d;
19
+ ) => {
30
20
  // 集計対象イベント検索
31
- const event = yield repos.event.projectEventFieldsById({ id: params.id }, ['location', 'project', 'startDate', 'typeOf', 'superEvent.id', 'superEvent.location.id', 'offers.itemOffered', 'maximumPhysicalAttendeeCapacity']);
21
+ const event = await repos.event.projectEventFieldsById({ id: params.id }, ['location', 'project', 'startDate', 'typeOf', 'superEvent.id', 'superEvent.location.id', 'offers.itemOffered', 'maximumPhysicalAttendeeCapacity']);
32
22
  // プロジェクト設定検索
33
- const project = yield repos.project.findById({
23
+ const project = await repos.project.findById({
34
24
  id: event.project.id,
35
25
  inclusion: ['settings']
36
26
  });
37
- const useOfferRateLimit = ((_a = project.settings) === null || _a === void 0 ? void 0 : _a.useOfferRateLimit) === true;
27
+ const useOfferRateLimit = project.settings?.useOfferRateLimit === true;
38
28
  let useAggregateOffer = false;
39
29
  if (event.typeOf === factory.eventType.ScreeningEvent) {
40
- const eventSeriesIdsByProject = (_c = (_b = project.settings) === null || _b === void 0 ? void 0 : _b.useAggregateReservation) === null || _c === void 0 ? void 0 : _c.eventSeriesIds;
30
+ const eventSeriesIdsByProject = project.settings?.useAggregateReservation?.eventSeriesIds;
41
31
  const eventSeriesIdIncluded = Array.isArray(eventSeriesIdsByProject) && eventSeriesIdsByProject.includes(event.superEvent.id);
42
- const useAggregateOfferByProject = ((_d = project.settings) === null || _d === void 0 ? void 0 : _d.useAggregateOffer) === true;
32
+ const useAggregateOfferByProject = project.settings?.useAggregateOffer === true;
43
33
  useAggregateOffer = eventSeriesIdIncluded && useAggregateOfferByProject;
44
34
  }
45
35
  let aggregatingEvents = [event];
46
36
  // dependent on project settings(2024-10-29~)
47
37
  if (useOfferRateLimit) {
48
- const availableOffers = yield (0, findEventOffers_1.findEventOffers)({ event })(repos);
49
- const offerRateLimitExists = availableOffers.some((o) => { var _a; return typeof ((_a = o.validRateLimit) === null || _a === void 0 ? void 0 : _a.scope) === 'string'; });
38
+ const availableOffers = await (0, findEventOffers_1.findEventOffers)({ event })(repos);
39
+ const offerRateLimitExists = availableOffers.some((o) => typeof o.validRateLimit?.scope === 'string');
50
40
  if (offerRateLimitExists) {
51
41
  // 同location、かつ同時間帯、のイベントに関しても集計する(ttts暫定対応)
52
42
  const startFrom = moment(event.startDate)
@@ -57,7 +47,7 @@ function aggregateScreeningEvent(params) {
57
47
  .add(-1, 'second')
58
48
  .toDate();
59
49
  if (event.typeOf === factory.eventType.ScreeningEvent) {
60
- aggregatingEvents = yield repos.event.projectEventFields({
50
+ aggregatingEvents = await repos.event.projectEventFields({
61
51
  limit: 100,
62
52
  page: 1,
63
53
  project: { id: { $eq: event.project.id } },
@@ -75,14 +65,14 @@ function aggregateScreeningEvent(params) {
75
65
  }
76
66
  debug(aggregatingEvents.length, 'aggregatingEvents found', aggregatingEvents.map((e) => e.id));
77
67
  for (const aggregatingEvent of aggregatingEvents) {
78
- yield aggregateByEvent({ event: aggregatingEvent }, { useAggregateOffer })(repos);
68
+ await aggregateByEvent({ event: aggregatingEvent }, { useAggregateOffer })(repos);
79
69
  }
80
- });
70
+ };
81
71
  }
82
72
  function aggregateByEvent(params, options) {
83
- return (repos
73
+ return async (repos
84
74
  // settings: Settings
85
- ) => __awaiter(this, void 0, void 0, function* () {
75
+ ) => {
86
76
  const now = new Date();
87
77
  const event = params.event;
88
78
  // 施設取得は冗長なので、ルーム検索に変更(2023-01-30~)
@@ -93,19 +83,19 @@ function aggregateByEvent(params, options) {
93
83
  else {
94
84
  throw new factory.errors.NotImplemented(`typeOf: ${params.event.typeOf}`);
95
85
  }
96
- const screeningRoom = yield repos.screeningRoom.findScreeningRoomsByBranchCode({
86
+ const screeningRoom = await repos.screeningRoom.findScreeningRoomsByBranchCode({
97
87
  project: { id: event.project.id },
98
88
  branchCode: { $eq: event.location.branchCode },
99
89
  containedInPlace: { id: { $eq: movieTheaterId } }
100
90
  });
101
91
  // 予約集計
102
- const { maximumAttendeeCapacity, remainingAttendeeCapacity, aggregateReservation } = yield aggregateReservationByEvent({
92
+ const { maximumAttendeeCapacity, remainingAttendeeCapacity, aggregateReservation } = await aggregateReservationByEvent({
103
93
  aggregateDate: now,
104
94
  event: event,
105
95
  screeningRoom
106
96
  })(repos);
107
97
  // オファーごとの集計
108
- const aggregateOffer = yield aggregateOfferByEvent({
98
+ const aggregateOffer = await aggregateOfferByEvent({
109
99
  aggregateDate: now,
110
100
  event,
111
101
  screeningRoom
@@ -113,27 +103,36 @@ function aggregateByEvent(params, options) {
113
103
  debug('offers aggregated', aggregateOffer);
114
104
  // 値がundefinedの場合に更新しないように注意
115
105
  const update = {
116
- $set: Object.assign(Object.assign(Object.assign(Object.assign({
106
+ $set: {
117
107
  // updatedAt: new Date(), // $setオブジェクトが空だとMongoエラーになるので
118
108
  aggregateReservation,
119
- aggregateOffer }, (maximumAttendeeCapacity !== undefined) ? { maximumAttendeeCapacity: maximumAttendeeCapacity } : undefined), (remainingAttendeeCapacity !== undefined) ? { remainingAttendeeCapacity: remainingAttendeeCapacity } : undefined), (aggregateReservation.checkInCount !== undefined) ? { checkInCount: aggregateReservation.checkInCount } : undefined), (aggregateReservation.attendeeCount !== undefined) ? { attendeeCount: aggregateReservation.attendeeCount } : undefined),
120
- $unset: Object.assign(Object.assign({ noExistingAttributeName: 1 }, (maximumAttendeeCapacity === undefined) ? { maximumAttendeeCapacity: '' } : undefined), (remainingAttendeeCapacity === undefined) ? { remainingAttendeeCapacity: '' } : undefined)
109
+ aggregateOffer,
110
+ ...(maximumAttendeeCapacity !== undefined) ? { maximumAttendeeCapacity: maximumAttendeeCapacity } : undefined,
111
+ ...(remainingAttendeeCapacity !== undefined) ? { remainingAttendeeCapacity: remainingAttendeeCapacity } : undefined,
112
+ ...(aggregateReservation.checkInCount !== undefined) ? { checkInCount: aggregateReservation.checkInCount } : undefined,
113
+ ...(aggregateReservation.attendeeCount !== undefined) ? { attendeeCount: aggregateReservation.attendeeCount } : undefined
114
+ },
115
+ $unset: {
116
+ noExistingAttributeName: 1, // $unsetは空だとエラーになるので
117
+ ...(maximumAttendeeCapacity === undefined) ? { maximumAttendeeCapacity: '' } : undefined,
118
+ ...(remainingAttendeeCapacity === undefined) ? { remainingAttendeeCapacity: '' } : undefined
119
+ }
121
120
  };
122
121
  debug('update:', update);
123
122
  // 保管
124
- yield repos.event.updateAggregationById({ id: event.id }, update);
125
- yield onAggregated({ event }, options)({
123
+ await repos.event.updateAggregationById({ id: event.id }, update);
124
+ await onAggregated({ event }, options)({
126
125
  task: repos.task
127
126
  }
128
127
  // settings
129
128
  );
130
- });
129
+ };
131
130
  }
132
131
  /**
133
132
  * 集計後アクション
134
133
  */
135
134
  function onAggregated(params, options) {
136
- return (repos) => __awaiter(this, void 0, void 0, function* () {
135
+ return async (repos) => {
137
136
  // dependent on project settings(2024-10-29~)
138
137
  if (options.useAggregateOffer) {
139
138
  // AggregateOffersタスクへ移行(2024-03-25~)
@@ -147,32 +146,30 @@ function onAggregated(params, options) {
147
146
  executionResults: [],
148
147
  data: { typeOf: factory.eventType.ScreeningEvent, id: params.event.id }
149
148
  };
150
- yield repos.task.saveMany([aggregateOffersTaskAttributes], { emitImmediately: true });
149
+ await repos.task.saveMany([aggregateOffersTaskAttributes], { emitImmediately: true });
151
150
  }
152
- });
151
+ };
153
152
  }
154
153
  function reservedSeatsAvailable(params) {
155
- var _a, _b, _c, _d;
156
- return ((_d = (_c = (_b = (_a = params.event.offers) === null || _a === void 0 ? void 0 : _a.itemOffered) === null || _b === void 0 ? void 0 : _b.serviceOutput) === null || _c === void 0 ? void 0 : _c.reservedTicket) === null || _d === void 0 ? void 0 : _d.ticketedSeat) !== undefined;
154
+ return params.event.offers?.itemOffered?.serviceOutput?.reservedTicket?.ticketedSeat !== undefined;
157
155
  }
158
156
  function aggregateOfferByEvent(params) {
159
- return (repos) => __awaiter(this, void 0, void 0, function* () {
160
- const { offerCount } = yield calculateOfferCount({ event: params.event })(repos);
157
+ return async (repos) => {
158
+ const { offerCount } = await calculateOfferCount({ event: params.event })(repos);
161
159
  return {
162
160
  typeOf: factory.offerType.AggregateOffer,
163
161
  aggregateDate: params.aggregateDate,
164
162
  offerCount
165
163
  };
166
- });
164
+ };
167
165
  }
168
166
  function calculateOfferCount(params) {
169
- return (repos) => __awaiter(this, void 0, void 0, function* () {
170
- var _a, _b, _c, _d;
167
+ return async (repos) => {
171
168
  let offerCount = 0;
172
169
  try {
173
170
  const eventOffers = params.event.offers;
174
- if (typeof ((_a = eventOffers === null || eventOffers === void 0 ? void 0 : eventOffers.itemOffered) === null || _a === void 0 ? void 0 : _a.id) === 'string') {
175
- const eventService = (yield repos.product.projectFields({
171
+ if (typeof eventOffers?.itemOffered?.id === 'string') {
172
+ const eventService = (await repos.product.projectFields({
176
173
  limit: 1,
177
174
  page: 1,
178
175
  id: { $eq: eventOffers.itemOffered.id }
@@ -183,14 +180,14 @@ function calculateOfferCount(params) {
183
180
  throw new factory.errors.NotFound(factory.product.ProductType.EventService);
184
181
  }
185
182
  // const firstCatalogIdOfProduct = eventService.hasOfferCatalog?.id; // migrate to itemListElement(2024-09-30~)
186
- const firstCatalogIdOfProduct = (_c = (_b = eventService.hasOfferCatalog) === null || _b === void 0 ? void 0 : _b.itemListElement.at(0)) === null || _c === void 0 ? void 0 : _c.id;
183
+ const firstCatalogIdOfProduct = eventService.hasOfferCatalog?.itemListElement.at(0)?.id;
187
184
  if (typeof firstCatalogIdOfProduct === 'string') {
188
- const catalogs = yield repos.offerCatalog.projectFields({
185
+ const catalogs = await repos.offerCatalog.projectFields({
189
186
  limit: 1,
190
187
  page: 1,
191
188
  id: { $in: [firstCatalogIdOfProduct] }
192
189
  }, ['numberOfItems']);
193
- const numberOfItems = (_d = catalogs.shift()) === null || _d === void 0 ? void 0 : _d.numberOfItems;
190
+ const numberOfItems = catalogs.shift()?.numberOfItems;
194
191
  if (typeof numberOfItems === 'number') {
195
192
  offerCount = numberOfItems;
196
193
  }
@@ -201,10 +198,10 @@ function calculateOfferCount(params) {
201
198
  throw error;
202
199
  }
203
200
  return { offerCount };
204
- });
201
+ };
205
202
  }
206
203
  function aggregateReservationByEvent(params) {
207
- return (repos) => __awaiter(this, void 0, void 0, function* () {
204
+ return async (repos) => {
208
205
  // 収容人数を集計
209
206
  let maximumAttendeeCapacity;
210
207
  let remainingAttendeeCapacity;
@@ -212,7 +209,7 @@ function aggregateReservationByEvent(params) {
212
209
  let checkInCount;
213
210
  let reservationCount;
214
211
  const reservationType = factory.reservationType.EventReservation;
215
- reservationCount = yield repos.reservation.count({
212
+ reservationCount = await repos.reservation.count({
216
213
  typeOf: reservationType,
217
214
  reservationFor: { id: { $eq: params.event.id } },
218
215
  reservationStatuses: [factory.reservationStatusType.ReservationConfirmed]
@@ -238,7 +235,7 @@ function aggregateReservationByEvent(params) {
238
235
  // remainingAttendeeCapacityを決定
239
236
  if (typeof maximumAttendeeCapacity === 'number') {
240
237
  // 残席数を座席ロック数から計算
241
- const unavailableOfferCount = yield repos.stockHolder.countUnavailableOffers({
238
+ const unavailableOfferCount = await repos.stockHolder.countUnavailableOffers({
242
239
  project: { id: params.event.project.id },
243
240
  event: {
244
241
  id: params.event.id,
@@ -252,12 +249,12 @@ function aggregateReservationByEvent(params) {
252
249
  remainingAttendeeCapacity = 0;
253
250
  }
254
251
  }
255
- attendeeCount = yield repos.reservation.count({
252
+ attendeeCount = await repos.reservation.count({
256
253
  typeOf: reservationType,
257
254
  reservationFor: { id: { $eq: params.event.id } },
258
255
  attended: true
259
256
  });
260
- checkInCount = yield repos.reservation.count({
257
+ checkInCount = await repos.reservation.count({
261
258
  typeOf: reservationType,
262
259
  reservationFor: { id: { $eq: params.event.id } },
263
260
  checkedIn: true
@@ -273,5 +270,5 @@ function aggregateReservationByEvent(params) {
273
270
  reservationCount
274
271
  }
275
272
  };
276
- });
273
+ };
277
274
  }
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.findEventOffers = findEventOffers;
13
4
  const factory = require("../../../factory");
@@ -16,14 +7,13 @@ const factory = require("../../../factory");
16
7
  * NotFoundエラーをハンドリングする
17
8
  */
18
9
  function findEventOffers(params) {
19
- return (repos) => __awaiter(this, void 0, void 0, function* () {
20
- var _a, _b, _c;
10
+ return async (repos) => {
21
11
  let availableOffers = [];
22
12
  try {
23
13
  // 興行設定があれば興行のカタログを参照する
24
14
  const eventOffers = params.event.offers;
25
- if (typeof ((_a = eventOffers === null || eventOffers === void 0 ? void 0 : eventOffers.itemOffered) === null || _a === void 0 ? void 0 : _a.id) === 'string') {
26
- const eventService = (yield repos.product.projectFields({
15
+ if (typeof eventOffers?.itemOffered?.id === 'string') {
16
+ const eventService = (await repos.product.projectFields({
27
17
  limit: 1,
28
18
  page: 1,
29
19
  id: { $eq: eventOffers.itemOffered.id }
@@ -34,17 +24,17 @@ function findEventOffers(params) {
34
24
  throw new factory.errors.NotFound(factory.product.ProductType.EventService);
35
25
  }
36
26
  // const offerCatalogId = eventService.hasOfferCatalog?.id; // migrate to itemListElement(2024-09-30~)
37
- const offerCatalogId = (_c = (_b = eventService.hasOfferCatalog) === null || _b === void 0 ? void 0 : _b.itemListElement.at(0)) === null || _c === void 0 ? void 0 : _c.id;
27
+ const offerCatalogId = eventService.hasOfferCatalog?.itemListElement.at(0)?.id;
38
28
  if (typeof offerCatalogId === 'string') {
39
29
  // サブカタログIDを決定
40
30
  let subOfferCatalogId = offerCatalogId;
41
31
  let isOfferCatalogItem = false;
42
- const offerCatalogFirstElement = yield repos.offerCatalog.findFirstItemListElementById({ id: offerCatalogId });
32
+ const offerCatalogFirstElement = await repos.offerCatalog.findFirstItemListElementById({ id: offerCatalogId });
43
33
  if (offerCatalogFirstElement.typeOf === 'OfferCatalog') {
44
34
  subOfferCatalogId = offerCatalogFirstElement.id;
45
35
  isOfferCatalogItem = true;
46
36
  }
47
- const { offers } = yield repos.offer.searchAllByOfferCatalogId({
37
+ const { offers } = await repos.offer.searchAllByOfferCatalogId({
48
38
  subOfferCatalog: { id: subOfferCatalogId, isOfferCatalogItem }
49
39
  });
50
40
  availableOffers = offers;
@@ -65,5 +55,5 @@ function findEventOffers(params) {
65
55
  }
66
56
  }
67
57
  return availableOffers;
68
- });
58
+ };
69
59
  }