@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
@@ -0,0 +1,792 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.ActionProcessRepo = exports.AVAILABLE_PROJECT_FIELDS = void 0;
27
+ const factory = __importStar(require("../../factory"));
28
+ const settings_1 = require("../../settings");
29
+ const action_1 = require("../mongoose/schemas/action");
30
+ const actionRecipe_1 = require("../mongoose/schemas/actionRecipe");
31
+ exports.AVAILABLE_PROJECT_FIELDS = [
32
+ 'project',
33
+ 'actionStatus',
34
+ 'typeOf',
35
+ 'description',
36
+ 'agent',
37
+ 'recipient',
38
+ 'result',
39
+ 'error',
40
+ 'object',
41
+ 'startDate',
42
+ 'endDate',
43
+ 'purpose',
44
+ 'potentialActions',
45
+ 'amount',
46
+ 'fromLocation',
47
+ 'toLocation',
48
+ 'instrument',
49
+ 'location',
50
+ 'replacer',
51
+ 'targetCollection',
52
+ 'sameAs',
53
+ 'cancelAction',
54
+ 'about',
55
+ 'target',
56
+ 'identifier'
57
+ ];
58
+ /**
59
+ * アクション状態管理リポジトリ
60
+ */
61
+ class ActionProcessRepo {
62
+ actionModel;
63
+ actionRecipeModel;
64
+ constructor(connection) {
65
+ this.actionModel = connection.model(action_1.modelName, (0, action_1.createSchema)());
66
+ this.actionRecipeModel = connection.model(actionRecipe_1.modelName, (0, actionRecipe_1.createSchema)());
67
+ }
68
+ static CREATE_MONGO_CONDITIONS(params) {
69
+ const andConditions = [];
70
+ const idIn = params.id?.$in;
71
+ if (Array.isArray(idIn)) {
72
+ andConditions.push({ _id: { $in: idIn } });
73
+ }
74
+ const idNin = params.id?.$nin;
75
+ if (Array.isArray(idNin)) {
76
+ andConditions.push({ _id: { $nin: idNin } });
77
+ }
78
+ const projectIdEq = params.project?.id?.$eq;
79
+ if (typeof projectIdEq === 'string') {
80
+ andConditions.push({
81
+ 'project.id': {
82
+ $eq: projectIdEq
83
+ }
84
+ });
85
+ }
86
+ const agentTypeOfIn = params.agent?.typeOf?.$in;
87
+ if (Array.isArray(agentTypeOfIn)) {
88
+ andConditions.push({
89
+ 'agent.typeOf': {
90
+ $exists: true,
91
+ $in: agentTypeOfIn
92
+ }
93
+ });
94
+ }
95
+ const agentIdIn = params.agent?.id?.$in;
96
+ if (Array.isArray(agentIdIn)) {
97
+ andConditions.push({
98
+ 'agent.id': {
99
+ $exists: true,
100
+ $in: agentIdIn
101
+ }
102
+ });
103
+ }
104
+ const instrumentTransactionNumberEq = params.instrument?.transactionNumber?.$eq;
105
+ if (typeof instrumentTransactionNumberEq === 'string') {
106
+ andConditions.push({ 'instrument.transactionNumber': { $exists: true, $eq: instrumentTransactionNumberEq } });
107
+ }
108
+ const instrumentTypeOfEq = params.instrument?.typeOf?.$eq;
109
+ if (typeof instrumentTypeOfEq === 'string') {
110
+ andConditions.push({ 'instrument.typeOf': { $exists: true, $eq: instrumentTypeOfEq } });
111
+ }
112
+ const instrumentIdentifierEq = params.instrument?.identifier?.$eq;
113
+ if (typeof instrumentIdentifierEq === 'string') {
114
+ andConditions.push({ 'instrument.identifier': { $exists: true, $eq: instrumentIdentifierEq } });
115
+ }
116
+ const instrumentIdEq = params.instrument?.id?.$eq;
117
+ if (typeof instrumentIdEq === 'string') {
118
+ andConditions.push({ 'instrument.id': { $exists: true, $eq: instrumentIdEq } });
119
+ }
120
+ const instrumentOrderNumberEq = params.instrument?.orderNumber?.$eq;
121
+ if (typeof instrumentOrderNumberEq === 'string') {
122
+ andConditions.push({ 'instrument.orderNumber': { $exists: true, $eq: instrumentOrderNumberEq } });
123
+ }
124
+ const locationIdEq = params.location?.id?.$eq;
125
+ if (typeof locationIdEq === 'string') {
126
+ andConditions.push({
127
+ 'location.id': {
128
+ $exists: true,
129
+ $eq: locationIdEq
130
+ }
131
+ });
132
+ }
133
+ const locationIdentifierEq = params.location?.identifier?.$eq;
134
+ if (typeof locationIdentifierEq === 'string') {
135
+ andConditions.push({
136
+ 'location.identifier': {
137
+ $exists: true,
138
+ $eq: locationIdentifierEq
139
+ }
140
+ });
141
+ }
142
+ const objectMovieTicketsIdentifierEq = params.object?.movieTickets?.identifier?.$eq;
143
+ if (typeof objectMovieTicketsIdentifierEq === 'string') {
144
+ andConditions.push({
145
+ 'object.movieTickets.identifier': {
146
+ $exists: true,
147
+ $eq: objectMovieTicketsIdentifierEq
148
+ }
149
+ });
150
+ }
151
+ const objectMovieTicketsServiceOutputReservationForIdEq = params.object?.movieTickets?.serviceOutput?.reservationFor?.id?.$eq;
152
+ if (typeof objectMovieTicketsServiceOutputReservationForIdEq === 'string') {
153
+ andConditions.push({
154
+ 'object.movieTickets.serviceOutput.reservationFor.id': {
155
+ $exists: true,
156
+ $eq: objectMovieTicketsServiceOutputReservationForIdEq
157
+ }
158
+ });
159
+ }
160
+ const objectPaymentMethodIdEq = params.object?.paymentMethodId?.$eq;
161
+ if (typeof objectPaymentMethodIdEq === 'string') {
162
+ andConditions.push({
163
+ 'object.paymentMethodId': {
164
+ $exists: true,
165
+ $eq: objectPaymentMethodIdEq
166
+ }
167
+ });
168
+ }
169
+ const objectObjectPaymentMethodIdEq = params.object?.object?.paymentMethodId?.$eq;
170
+ if (typeof objectObjectPaymentMethodIdEq === 'string') {
171
+ andConditions.push({
172
+ 'object.object.paymentMethodId': {
173
+ $exists: true,
174
+ $eq: objectObjectPaymentMethodIdEq
175
+ }
176
+ });
177
+ }
178
+ const objectReservationForIdEq = params.object?.reservationFor?.id?.$eq;
179
+ if (typeof objectReservationForIdEq === 'string') {
180
+ andConditions.push({
181
+ 'object.reservationFor.id': {
182
+ $exists: true,
183
+ $eq: objectReservationForIdEq
184
+ }
185
+ });
186
+ }
187
+ const objectReservationNumberEq = params.object?.reservationNumber?.$eq;
188
+ if (typeof objectReservationNumberEq === 'string') {
189
+ andConditions.push({
190
+ 'object.reservationNumber': {
191
+ $exists: true,
192
+ $eq: objectReservationNumberEq
193
+ }
194
+ });
195
+ }
196
+ const objectReservationNumberIn = params.object?.reservationNumber?.$in;
197
+ if (Array.isArray(objectReservationNumberIn)) {
198
+ andConditions.push({
199
+ 'object.reservationNumber': {
200
+ $exists: true,
201
+ $in: objectReservationNumberIn
202
+ }
203
+ });
204
+ }
205
+ const objectPaymentMethodAccountIdEq = params.object?.paymentMethod?.accountId?.$eq;
206
+ if (typeof objectPaymentMethodAccountIdEq === 'string') {
207
+ andConditions.push({
208
+ 'object.paymentMethod.accountId': {
209
+ $exists: true,
210
+ $eq: objectPaymentMethodAccountIdEq
211
+ }
212
+ });
213
+ }
214
+ const objectPaymentMethodPaymentMethodIdEq = params.object?.paymentMethod?.paymentMethodId?.$eq;
215
+ if (typeof objectPaymentMethodPaymentMethodIdEq === 'string') {
216
+ andConditions.push({
217
+ 'object.paymentMethod.paymentMethodId': {
218
+ $exists: true,
219
+ $eq: objectPaymentMethodPaymentMethodIdEq
220
+ }
221
+ });
222
+ }
223
+ const objectPaymentMethodPaymentMethodIdIn = params.object?.paymentMethod?.paymentMethodId?.$in;
224
+ if (Array.isArray(objectPaymentMethodPaymentMethodIdIn)) {
225
+ andConditions.push({
226
+ 'object.paymentMethod.paymentMethodId': {
227
+ $exists: true,
228
+ $in: objectPaymentMethodPaymentMethodIdIn
229
+ }
230
+ });
231
+ }
232
+ const objectPaymentMethodTypeOfEq = params.object?.paymentMethod?.typeOf?.$eq;
233
+ if (typeof objectPaymentMethodTypeOfEq === 'string') {
234
+ andConditions.push({
235
+ 'object.paymentMethod.typeOf': {
236
+ $exists: true,
237
+ $eq: objectPaymentMethodTypeOfEq
238
+ }
239
+ });
240
+ }
241
+ const objectTypeOfEq = params.object?.typeOf?.$eq;
242
+ if (typeof objectTypeOfEq === 'string') {
243
+ andConditions.push({
244
+ 'object.typeOf': {
245
+ $exists: true,
246
+ $eq: objectTypeOfEq
247
+ }
248
+ });
249
+ }
250
+ const objectTypeOfIn = params.object?.typeOf?.$in;
251
+ if (Array.isArray(objectTypeOfIn)) {
252
+ andConditions.push({
253
+ 'object.typeOf': {
254
+ $exists: true,
255
+ $in: objectTypeOfIn
256
+ }
257
+ });
258
+ }
259
+ const objectIdEq = params.object?.id?.$eq;
260
+ if (typeof objectIdEq === 'string') {
261
+ andConditions.push({
262
+ 'object.id': {
263
+ $exists: true,
264
+ $eq: objectIdEq
265
+ }
266
+ });
267
+ }
268
+ const objectIdIn = params.object?.id?.$in;
269
+ if (Array.isArray(objectIdIn)) {
270
+ andConditions.push({
271
+ 'object.id': {
272
+ $exists: true,
273
+ $in: objectIdIn
274
+ }
275
+ });
276
+ }
277
+ const objectOrderNumberIn = params.object?.orderNumber?.$in;
278
+ if (Array.isArray(objectOrderNumberIn)) {
279
+ andConditions.push({
280
+ 'object.orderNumber': {
281
+ $exists: true,
282
+ $in: objectOrderNumberIn
283
+ }
284
+ });
285
+ }
286
+ const objectEventIdIn = params.object?.event?.id?.$in;
287
+ if (Array.isArray(objectEventIdIn)) {
288
+ andConditions.push({
289
+ 'object.event.id': {
290
+ $exists: true,
291
+ $in: objectEventIdIn
292
+ }
293
+ });
294
+ }
295
+ // discontinue(2024-06-18~)
296
+ // const objectAcceptedOfferSeatNumberIn =
297
+ // params.object?.acceptedOffer?.itemOffered?.serviceOutput?.reservedTicket?.ticketedSeat?.seatNumber?.$in;
298
+ // if (Array.isArray(objectAcceptedOfferSeatNumberIn)) {
299
+ // andConditions.push({
300
+ // 'object.acceptedOffer.itemOffered.serviceOutput.reservedTicket.ticketedSeat.seatNumber': {
301
+ // $exists: true,
302
+ // $in: objectAcceptedOfferSeatNumberIn
303
+ // }
304
+ // });
305
+ // }
306
+ const objectTransactionNumberEq = params.object?.transactionNumber?.$eq;
307
+ if (typeof objectTransactionNumberEq === 'string') {
308
+ andConditions.push({ 'object.transactionNumber': { $exists: true, $eq: objectTransactionNumberEq } });
309
+ }
310
+ if (typeof params.typeOf === 'string') {
311
+ andConditions.push({
312
+ typeOf: params.typeOf
313
+ });
314
+ }
315
+ else {
316
+ const typeOfEq = params.typeOf?.$eq;
317
+ if (typeof typeOfEq === 'string') {
318
+ andConditions.push({
319
+ typeOf: { $eq: typeOfEq }
320
+ });
321
+ }
322
+ }
323
+ const actionStatusIn = params.actionStatus?.$in;
324
+ if (Array.isArray(actionStatusIn)) {
325
+ andConditions.push({
326
+ actionStatus: { $in: actionStatusIn }
327
+ });
328
+ }
329
+ if (Array.isArray(params.actionStatusTypes)) {
330
+ andConditions.push({
331
+ actionStatus: { $in: params.actionStatusTypes }
332
+ });
333
+ }
334
+ const startDateGte = params.startFrom;
335
+ if (startDateGte instanceof Date) {
336
+ andConditions.push({
337
+ startDate: { $gte: startDateGte }
338
+ });
339
+ }
340
+ const startDateLte = params.startThrough;
341
+ if (startDateLte instanceof Date) {
342
+ andConditions.push({
343
+ startDate: { $lte: startDateLte }
344
+ });
345
+ }
346
+ const fromLocationTypeOfIn = params.fromLocation?.typeOf?.$in;
347
+ if (Array.isArray(fromLocationTypeOfIn)) {
348
+ andConditions.push({
349
+ 'fromLocation.typeOf': {
350
+ $exists: true,
351
+ $in: fromLocationTypeOfIn
352
+ }
353
+ });
354
+ }
355
+ const fromLocationAccountNumberIn = params.fromLocation?.accountNumber?.$in;
356
+ if (Array.isArray(fromLocationAccountNumberIn)) {
357
+ andConditions.push({
358
+ 'fromLocation.accountNumber': {
359
+ $exists: true,
360
+ $in: fromLocationAccountNumberIn
361
+ }
362
+ });
363
+ }
364
+ const fromLocationAccountTypeIn = params.fromLocation?.accountType?.$in;
365
+ if (Array.isArray(fromLocationAccountTypeIn)) {
366
+ andConditions.push({
367
+ 'fromLocation.accountType': {
368
+ $exists: true,
369
+ $in: fromLocationAccountTypeIn
370
+ }
371
+ });
372
+ }
373
+ const toLocationTypeOfIn = params.toLocation?.typeOf?.$in;
374
+ if (Array.isArray(toLocationTypeOfIn)) {
375
+ andConditions.push({
376
+ 'toLocation.typeOf': {
377
+ $exists: true,
378
+ $in: toLocationTypeOfIn
379
+ }
380
+ });
381
+ }
382
+ const toLocationAccountNumberIn = params.toLocation?.accountNumber?.$in;
383
+ if (Array.isArray(toLocationAccountNumberIn)) {
384
+ andConditions.push({
385
+ 'toLocation.accountNumber': {
386
+ $exists: true,
387
+ $in: toLocationAccountNumberIn
388
+ }
389
+ });
390
+ }
391
+ const toLocationAccountTypeIn = params.toLocation?.accountType?.$in;
392
+ if (Array.isArray(toLocationAccountTypeIn)) {
393
+ andConditions.push({
394
+ 'toLocation.accountType': {
395
+ $exists: true,
396
+ $in: toLocationAccountTypeIn
397
+ }
398
+ });
399
+ }
400
+ const purposeTypeOfIn = params.purpose?.typeOf?.$in;
401
+ if (Array.isArray(purposeTypeOfIn)) {
402
+ andConditions.push({
403
+ 'purpose.typeOf': {
404
+ $exists: true,
405
+ $in: purposeTypeOfIn
406
+ }
407
+ });
408
+ }
409
+ const purposeIdIn = params.purpose?.id?.$in;
410
+ if (Array.isArray(purposeIdIn)) {
411
+ andConditions.push({
412
+ 'purpose.id': {
413
+ $exists: true,
414
+ $in: purposeIdIn
415
+ }
416
+ });
417
+ }
418
+ const purposeOrderNumberIn = params.purpose?.orderNumber?.$in;
419
+ if (Array.isArray(purposeOrderNumberIn)) {
420
+ andConditions.push({
421
+ 'purpose.orderNumber': {
422
+ $exists: true,
423
+ $in: purposeOrderNumberIn
424
+ }
425
+ });
426
+ }
427
+ const resultTypeOfIn = params.result?.typeOf?.$in;
428
+ if (Array.isArray(resultTypeOfIn)) {
429
+ andConditions.push({
430
+ 'result.typeOf': {
431
+ $exists: true,
432
+ $in: resultTypeOfIn
433
+ }
434
+ });
435
+ }
436
+ const resultIdIn = params.result?.id?.$in;
437
+ if (Array.isArray(resultIdIn)) {
438
+ andConditions.push({
439
+ 'result.id': {
440
+ $exists: true,
441
+ $in: resultIdIn
442
+ }
443
+ });
444
+ }
445
+ const resultOrderNumberIn = params.result?.orderNumber?.$in;
446
+ if (Array.isArray(resultOrderNumberIn)) {
447
+ andConditions.push({
448
+ 'result.orderNumber': {
449
+ $exists: true,
450
+ $in: resultOrderNumberIn
451
+ }
452
+ });
453
+ }
454
+ const resultCodeIn = params.result?.code?.$in;
455
+ if (Array.isArray(resultCodeIn)) {
456
+ andConditions.push({
457
+ 'result.code': {
458
+ $exists: true,
459
+ $in: resultCodeIn
460
+ }
461
+ });
462
+ }
463
+ // sameAs(2024-04-23~)
464
+ const sameAsIdEq = params.sameAs?.id?.$eq;
465
+ if (typeof sameAsIdEq === 'string') {
466
+ andConditions.push({ 'sameAs.id': { $exists: true, $eq: sameAsIdEq } });
467
+ }
468
+ const aboutOrderNumberEq = params.about?.orderNumber?.$eq;
469
+ if (typeof aboutOrderNumberEq === 'string') {
470
+ andConditions.push({ 'about.orderNumber': { $exists: true, $eq: aboutOrderNumberEq } });
471
+ }
472
+ return andConditions;
473
+ }
474
+ /**
475
+ * アクション開始
476
+ */
477
+ async start(
478
+ // public async start<T extends Exclude<TAction['typeOf'], factory.actionType.AcceptAction>>(
479
+ attributes, options) {
480
+ const startDate = new Date();
481
+ const creatingAction = {
482
+ ...attributes,
483
+ actionStatus: factory.actionStatusType.ActiveActionStatus,
484
+ startDate
485
+ };
486
+ // reimplemnt with insertMany(2024-08-29~)
487
+ const result = await this.actionModel.insertMany(creatingAction, { rawResult: true });
488
+ const id = result.insertedIds?.[0]?.toHexString();
489
+ if (typeof id !== 'string') {
490
+ throw new factory.errors.Internal('action not saved');
491
+ }
492
+ // add recipe(2024-06-09~)
493
+ const savingRecipe = options?.recipe;
494
+ if (savingRecipe?.typeOf === 'Recipe') {
495
+ await this.upsertRecipe({ ...savingRecipe, recipeFor: { id, typeOf: creatingAction.typeOf } });
496
+ }
497
+ return { id, startDate, typeOf: creatingAction.typeOf };
498
+ }
499
+ async completeWithVoid(params) {
500
+ if (params.recipe?.typeOf === 'Recipe') {
501
+ await this.upsertRecipe({ ...params.recipe, recipeFor: { id: params.id, typeOf: params.typeOf } });
502
+ }
503
+ const doc = await this.actionModel.findOneAndUpdate({
504
+ _id: { $eq: params.id },
505
+ typeOf: { $eq: params.typeOf }
506
+ }, {
507
+ $set: {
508
+ actionStatus: factory.actionStatusType.CompletedActionStatus,
509
+ result: params.result,
510
+ endDate: new Date()
511
+ }
512
+ }, { new: false, projection: { _id: 1 } })
513
+ .lean()
514
+ .exec();
515
+ if (doc === null) {
516
+ throw new factory.errors.NotFound(this.actionModel.modelName);
517
+ }
518
+ }
519
+ /**
520
+ * アクション取消
521
+ */
522
+ async cancelWithVoid(params) {
523
+ const cancelDate = new Date();
524
+ const cancelAction = (params.cancelAction !== undefined)
525
+ ? {
526
+ ...params.cancelAction,
527
+ endTime: cancelDate,
528
+ typeOf: factory.actionType.CancelAction
529
+ }
530
+ : undefined;
531
+ const doc = await this.actionModel.findOneAndUpdate({
532
+ _id: { $eq: params.id },
533
+ typeOf: { $eq: params.typeOf },
534
+ actionStatus: { $ne: factory.actionStatusType.CanceledActionStatus } // 冪等性確保(2024-05-26~)
535
+ }, {
536
+ $set: {
537
+ actionStatus: factory.actionStatusType.CanceledActionStatus,
538
+ ...(cancelAction !== undefined) ? { cancelAction } : undefined // cancelAction連携(2024-05-26~)
539
+ }
540
+ }, { new: false, projection: { _id: 1 } })
541
+ .lean()
542
+ .exec();
543
+ if (doc === null) {
544
+ // 既にCanceledActionStatusであればok
545
+ const existingAction = await this.findActionStatusById({ id: params.id, typeOf: params.typeOf });
546
+ if (existingAction.actionStatus !== factory.actionStatusType.CanceledActionStatus) {
547
+ throw new factory.errors.NotFound(this.actionModel.modelName);
548
+ }
549
+ }
550
+ // endDateが存在しなければセット(2024-04-22~)
551
+ await this.actionModel.updateOne({
552
+ _id: { $eq: params.id },
553
+ endDate: { $exists: false }
554
+ }, { $set: { endDate: cancelDate } })
555
+ .exec();
556
+ }
557
+ /**
558
+ * アクション失敗
559
+ */
560
+ async giveUp(params) {
561
+ const actionError = (Array.isArray(params.error))
562
+ ? params.error.map((e) => ({ ...e, message: e.message, name: e.name }))
563
+ : { ...params.error, message: params.error.message, name: params.error.name };
564
+ if (params.recipe?.typeOf === 'Recipe') {
565
+ await this.upsertRecipe({ ...params.recipe, recipeFor: { id: params.id, typeOf: params.typeOf } });
566
+ }
567
+ const doc = await this.actionModel.findOneAndUpdate({
568
+ typeOf: { $eq: params.typeOf },
569
+ _id: { $eq: params.id }
570
+ }, {
571
+ $set: {
572
+ actionStatus: factory.actionStatusType.FailedActionStatus,
573
+ error: actionError,
574
+ endDate: new Date()
575
+ }
576
+ }, { new: true, projection: { _id: 1 } })
577
+ .lean()
578
+ .exec();
579
+ if (doc === null) {
580
+ throw new factory.errors.NotFound(this.actionModel.modelName);
581
+ }
582
+ }
583
+ /**
584
+ * 一定期間ActiveActionStatusのアクションをFailedActionStatusにする
585
+ */
586
+ async giveUpStartDatePassedCertainPeriod(params) {
587
+ return this.actionModel.updateMany({
588
+ actionStatus: { $eq: factory.actionStatusType.ActiveActionStatus },
589
+ // 一定期間過ぎたもの
590
+ startDate: { $lt: params.startDate.$lt },
591
+ ...(typeof params.id?.$eq === 'string') ? { _id: { $eq: params.id.$eq } } : undefined
592
+ }, {
593
+ actionStatus: factory.actionStatusType.FailedActionStatus,
594
+ error: params.error,
595
+ endDate: new Date()
596
+ })
597
+ .exec();
598
+ }
599
+ async findRecipeByAction(params) {
600
+ return this.actionRecipeModel.findOne({
601
+ 'project.id': { $eq: params.project.id },
602
+ 'recipeFor.id': { $eq: params.recipeFor.id }
603
+ }, { step: 1, recipeCategory: 1 }
604
+ // { lean: true }
605
+ )
606
+ .lean()
607
+ .exec();
608
+ // if (result === null) {
609
+ // throw new factory.errors.NotFound(this.actionRecipeModel.modelName);
610
+ // }
611
+ // return result;
612
+ }
613
+ async findById(params, inclusion, exclusion) {
614
+ let positiveProjectionFields = exports.AVAILABLE_PROJECT_FIELDS;
615
+ if (Array.isArray(inclusion) && inclusion.length > 0) {
616
+ positiveProjectionFields = inclusion.filter((key) => exports.AVAILABLE_PROJECT_FIELDS.includes(key));
617
+ }
618
+ else {
619
+ if (Array.isArray(exclusion) && exclusion.length > 0) {
620
+ positiveProjectionFields = positiveProjectionFields.filter((key) => !exclusion.includes(key));
621
+ }
622
+ }
623
+ const projection = {
624
+ _id: 0,
625
+ id: { $toString: '$_id' },
626
+ ...Object.fromEntries(positiveProjectionFields.map((key) => ([key, 1])))
627
+ };
628
+ const doc = await this.actionModel.findOne({
629
+ typeOf: { $eq: params.typeOf },
630
+ _id: { $eq: params.id }
631
+ }, projection)
632
+ .lean() // 2024-08-26~
633
+ .exec();
634
+ if (doc === null) {
635
+ throw new factory.errors.NotFound(this.actionModel.modelName);
636
+ }
637
+ return doc;
638
+ }
639
+ async searchBySameAs(params) {
640
+ const projection = {
641
+ _id: 0,
642
+ id: { $toString: '$_id' },
643
+ actionStatus: 1,
644
+ error: 1,
645
+ purpose: 1
646
+ };
647
+ const query = this.actionModel.find({
648
+ typeOf: { $eq: params.typeOf.$eq },
649
+ 'sameAs.id': { $exists: true, $eq: params.sameAs.id.$eq },
650
+ ...(typeof params.purpose?.id.$eq === 'string')
651
+ ? { 'purpose.id': { $exists: true, $eq: params.purpose.id.$eq } }
652
+ : undefined
653
+ }, projection)
654
+ // .select({ _id: 1, actionStatus: 1, error: 1, purpose: 1 })
655
+ .limit(1);
656
+ return query
657
+ .lean() // 2024-08-26~
658
+ .exec();
659
+ }
660
+ async findActionStatusById(params) {
661
+ const projection = {
662
+ _id: 0,
663
+ id: { $toString: '$_id' },
664
+ actionStatus: 1
665
+ };
666
+ const doc = await this.actionModel.findOne({
667
+ typeOf: { $eq: params.typeOf },
668
+ _id: { $eq: params.id }
669
+ }, projection)
670
+ .lean() // 2024-08-26~
671
+ .exec();
672
+ if (doc === null) {
673
+ throw new factory.errors.NotFound(this.actionModel.modelName);
674
+ }
675
+ return doc;
676
+ }
677
+ /**
678
+ * 汎用アクション検索
679
+ * 継承クラスから呼ぶ想定
680
+ */
681
+ async findAnyActions(params, inclusion) {
682
+ const conditions = ActionProcessRepo.CREATE_MONGO_CONDITIONS(params);
683
+ let positiveProjectionFields = exports.AVAILABLE_PROJECT_FIELDS;
684
+ if (Array.isArray(inclusion) && inclusion.length > 0) {
685
+ positiveProjectionFields = inclusion.filter((key) => exports.AVAILABLE_PROJECT_FIELDS.includes(key));
686
+ }
687
+ const projection = {
688
+ _id: 0,
689
+ id: { $toString: '$_id' },
690
+ ...Object.fromEntries(positiveProjectionFields.map((key) => ([key, 1])))
691
+ };
692
+ const query = this.actionModel.find((conditions.length > 0) ? { $and: conditions } : {}, projection);
693
+ if (typeof params.limit === 'number' && params.limit > 0) {
694
+ const page = (typeof params.page === 'number' && params.page > 0) ? params.page : 1;
695
+ query.limit(params.limit)
696
+ .skip(params.limit * (page - 1));
697
+ }
698
+ /* istanbul ignore else */
699
+ if (params.sort?.startDate !== undefined) {
700
+ query.sort({ startDate: params.sort.startDate });
701
+ }
702
+ // const explainResult = await (<any>query).explain();
703
+ // console.log(explainResult[0].executionStats.allPlansExecution.map((e: any) => e.executionStages.inputStage));
704
+ return query.setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
705
+ .lean() // 2024-08-26~
706
+ .exec();
707
+ }
708
+ /**
709
+ * 取引に対する汎用アクション検索
710
+ * 継承クラスから呼ぶ想定
711
+ * 件数はlimitされない
712
+ */
713
+ async findAnyActionsByPurpose(params) {
714
+ const andConditions = [
715
+ { 'purpose.typeOf': { $exists: true, $eq: params.purpose.typeOf } },
716
+ { 'purpose.id': { $exists: true, $eq: params.purpose.id } }
717
+ ];
718
+ const objectPaymentMethodIdEq = params.object?.paymentMethodId?.$eq;
719
+ if (typeof objectPaymentMethodIdEq === 'string') {
720
+ andConditions.push({ 'object.paymentMethodId': { $exists: true, $eq: objectPaymentMethodIdEq } });
721
+ }
722
+ const objectTypeOfEq = params.object?.typeOf?.$eq;
723
+ if (typeof objectTypeOfEq === 'string') {
724
+ andConditions.push({ 'object.typeOf': { $exists: true, $eq: objectTypeOfEq } });
725
+ }
726
+ const objectTypeOfIn = params.object?.typeOf?.$in;
727
+ if (Array.isArray(objectTypeOfIn)) {
728
+ andConditions.push({ 'object.typeOf': { $exists: true, $in: objectTypeOfIn } });
729
+ }
730
+ if (typeof params.typeOf === 'string') {
731
+ andConditions.push({ typeOf: { $eq: params.typeOf } });
732
+ }
733
+ const actionStatusEq = params.actionStatus?.$eq;
734
+ if (typeof actionStatusEq === 'string') {
735
+ andConditions.push({ actionStatus: { $eq: actionStatusEq } });
736
+ }
737
+ const positiveProjectionFields = [
738
+ 'project',
739
+ 'actionStatus',
740
+ 'typeOf',
741
+ 'description',
742
+ 'agent',
743
+ 'recipient',
744
+ 'result',
745
+ 'error',
746
+ 'object',
747
+ 'startDate',
748
+ 'endDate',
749
+ 'purpose',
750
+ 'potentialActions',
751
+ 'instrument',
752
+ 'location',
753
+ 'sameAs',
754
+ 'cancelAction',
755
+ 'identifier'
756
+ ];
757
+ const projection = {
758
+ _id: 0,
759
+ id: { $toString: '$_id' },
760
+ ...Object.fromEntries(positiveProjectionFields.map((key) => ([key, 1])))
761
+ };
762
+ const query = this.actionModel.find((andConditions.length > 0) ? { $and: andConditions } : {}, projection);
763
+ if (typeof params.sort?.startDate === 'number') {
764
+ query.sort({ startDate: params.sort.startDate });
765
+ }
766
+ return query.setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
767
+ .lean()
768
+ .exec();
769
+ }
770
+ async upsertRecipe(savingRecipe) {
771
+ const dateModified = new Date();
772
+ const { typeOf, project, recipeCategory, recipeFor, step } = savingRecipe;
773
+ const filter = {
774
+ 'recipeFor.id': { $eq: recipeFor.id }
775
+ };
776
+ const setOnInsert = {
777
+ project, typeOf, recipeCategory, recipeFor,
778
+ dateCreated: dateModified
779
+ };
780
+ const setKeys = { step, dateModified };
781
+ const update = {
782
+ $setOnInsert: setOnInsert,
783
+ $set: setKeys
784
+ };
785
+ await this.actionRecipeModel.updateOne(filter, update, {
786
+ upsert: true
787
+ // includeResultMetadata: true
788
+ })
789
+ .exec();
790
+ }
791
+ }
792
+ exports.ActionProcessRepo = ActionProcessRepo;