@chevre/domain 25.2.0-alpha.8 → 26.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/lib/chevre/eventEmitter/task.d.ts +2 -1
  2. package/lib/chevre/factory/customerTelephone2COATelNum.d.ts +3 -0
  3. package/lib/chevre/factory/customerTelephone2COATelNum.js +22 -0
  4. package/lib/chevre/repo/action/acceptPay.d.ts +15 -0
  5. package/lib/chevre/repo/action/acceptPay.js +47 -19
  6. package/lib/chevre/repo/action/actionProcess.js +57 -57
  7. package/lib/chevre/repo/action.d.ts +16 -9
  8. package/lib/chevre/repo/action.js +99 -180
  9. package/lib/chevre/repo/adminTask.d.ts +37 -0
  10. package/lib/chevre/repo/adminTask.js +163 -0
  11. package/lib/chevre/repo/aggregateOffer.d.ts +3 -14
  12. package/lib/chevre/repo/aggregateOffer.js +16 -125
  13. package/lib/chevre/repo/aggregateTask.d.ts +37 -0
  14. package/lib/chevre/repo/aggregateTask.js +136 -0
  15. package/lib/chevre/repo/asyncAction.d.ts +69 -0
  16. package/lib/chevre/repo/asyncAction.js +237 -0
  17. package/lib/chevre/repo/concurrentLock.d.ts +3 -1
  18. package/lib/chevre/repo/creativeWork.d.ts +2 -3
  19. package/lib/chevre/repo/credentials.d.ts +2 -1
  20. package/lib/chevre/repo/customerType.d.ts +2 -3
  21. package/lib/chevre/repo/event.d.ts +10 -11
  22. package/lib/chevre/repo/eventOffer.d.ts +4 -5
  23. package/lib/chevre/repo/eventSellerMakesOffer.d.ts +2 -3
  24. package/lib/chevre/repo/eventSeries.d.ts +4 -5
  25. package/lib/chevre/repo/message.d.ts +1 -1
  26. package/lib/chevre/repo/message.js +1 -1
  27. package/lib/chevre/repo/mongoose/schemas/action.js +57 -57
  28. package/lib/chevre/repo/mongoose/schemas/asyncAction.d.ts +13 -0
  29. package/lib/chevre/repo/mongoose/schemas/asyncAction.js +89 -0
  30. package/lib/chevre/repo/mongoose/schemas/order.d.ts +4 -0
  31. package/lib/chevre/repo/mongoose/schemas/order.js +10 -0
  32. package/lib/chevre/repo/mongoose/schemas/scheduledTasks.d.ts +16 -0
  33. package/lib/chevre/repo/mongoose/schemas/scheduledTasks.js +103 -0
  34. package/lib/chevre/repo/mongoose/schemas/setting.d.ts +4 -0
  35. package/lib/chevre/repo/mongoose/schemas/task.d.ts +6 -1
  36. package/lib/chevre/repo/mongoose/schemas/task.js +12 -12
  37. package/lib/chevre/repo/note.d.ts +3 -4
  38. package/lib/chevre/repo/noteAboutOrder.d.ts +2 -3
  39. package/lib/chevre/repo/offer/offerInCatalogReadOnly.d.ts +2 -2
  40. package/lib/chevre/repo/offer/unitPriceInCatalog.d.ts +2 -2
  41. package/lib/chevre/repo/offer/unitPriceInCatalog.js +59 -11
  42. package/lib/chevre/repo/offerCatalog.d.ts +2 -3
  43. package/lib/chevre/repo/offerCatalogItem.d.ts +2 -3
  44. package/lib/chevre/repo/order.d.ts +2 -0
  45. package/lib/chevre/repo/order.js +14 -14
  46. package/lib/chevre/repo/orderInTransaction.d.ts +68 -1
  47. package/lib/chevre/repo/orderInTransaction.js +181 -3
  48. package/lib/chevre/repo/passport.d.ts +2 -1
  49. package/lib/chevre/repo/person.d.ts +0 -15
  50. package/lib/chevre/repo/person.js +122 -108
  51. package/lib/chevre/repo/place/entranceGate.d.ts +4 -5
  52. package/lib/chevre/repo/place/movieTheater.d.ts +3 -4
  53. package/lib/chevre/repo/place/screeningRoom.d.ts +4 -5
  54. package/lib/chevre/repo/place/seat.d.ts +4 -5
  55. package/lib/chevre/repo/place/section.d.ts +3 -4
  56. package/lib/chevre/repo/priceSpecification.d.ts +4 -4
  57. package/lib/chevre/repo/product.d.ts +3 -4
  58. package/lib/chevre/repo/rateLimit/offer.d.ts +3 -1
  59. package/lib/chevre/repo/rateLimit/offer.js +0 -12
  60. package/lib/chevre/repo/reservation.d.ts +2 -3
  61. package/lib/chevre/repo/scheduledTask.d.ts +90 -0
  62. package/lib/chevre/repo/scheduledTask.js +223 -0
  63. package/lib/chevre/repo/sellerMakesOffer.d.ts +3 -4
  64. package/lib/chevre/repo/stockHolder.d.ts +1 -1
  65. package/lib/chevre/repo/stockHolder.js +0 -146
  66. package/lib/chevre/repo/task.d.ts +30 -71
  67. package/lib/chevre/repo/task.js +59 -345
  68. package/lib/chevre/repo/transaction/placeOrder.d.ts +2 -45
  69. package/lib/chevre/repo/transaction/placeOrder.js +43 -83
  70. package/lib/chevre/repo/transaction.d.ts +2 -2
  71. package/lib/chevre/repo/transactionNumberCounter.js +0 -34
  72. package/lib/chevre/repo/transactionProcess.d.ts +2 -1
  73. package/lib/chevre/repo/transactionProcess.js +0 -13
  74. package/lib/chevre/repository.d.ts +20 -0
  75. package/lib/chevre/repository.js +46 -2
  76. package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +1 -1
  77. package/lib/chevre/service/aggregation/system.d.ts +2 -2
  78. package/lib/chevre/service/aggregation/system.js +1 -1
  79. package/lib/chevre/service/assetTransaction/cancelReservation.js +1 -1
  80. package/lib/chevre/service/assetTransaction/pay/exportTasksById.js +1 -1
  81. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +1 -1
  82. package/lib/chevre/service/assetTransaction/pay/start/factory.d.ts +1 -1
  83. package/lib/chevre/service/assetTransaction/pay/start/factory.js +3 -4
  84. package/lib/chevre/service/assetTransaction/pay/start.d.ts +1 -1
  85. package/lib/chevre/service/assetTransaction/refund.js +1 -1
  86. package/lib/chevre/service/assetTransaction/reserve/exportTasksById.js +1 -1
  87. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.js +1 -67
  88. package/lib/chevre/service/asyncAction.d.ts +16 -0
  89. package/lib/chevre/service/asyncAction.js +36 -0
  90. package/lib/chevre/service/asyncActionHandler/onOperationFailed.d.ts +15 -0
  91. package/lib/chevre/service/asyncActionHandler/onOperationFailed.js +42 -0
  92. package/lib/chevre/service/asyncActionHandler.d.ts +13 -0
  93. package/lib/chevre/service/asyncActionHandler.js +89 -0
  94. package/lib/chevre/service/notification/factory.d.ts +2 -4
  95. package/lib/chevre/service/notification/factory.js +26 -24
  96. package/lib/chevre/service/notification/notifyAbortedTasksByEmail.d.ts +12 -6
  97. package/lib/chevre/service/notification/notifyAbortedTasksByEmail.js +12 -4
  98. package/lib/chevre/service/offer/event/authorize/factory.d.ts +3 -5
  99. package/lib/chevre/service/offer/event/authorize/factory.js +93 -75
  100. package/lib/chevre/service/offer/event/authorize.d.ts +0 -4
  101. package/lib/chevre/service/offer/event/authorize.js +2 -2
  102. package/lib/chevre/service/offer/event/voidTransaction.d.ts +1 -1
  103. package/lib/chevre/service/offer/event/voidTransactionByActionId.d.ts +1 -1
  104. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.d.ts +6 -7
  105. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.js +10 -10
  106. package/lib/chevre/service/offer/eventServiceByCOA/authorize/validateAcceptedOffers.js +2 -1
  107. package/lib/chevre/service/offer/eventServiceByCOA/authorize.d.ts +0 -5
  108. package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +15 -12
  109. package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.d.ts +0 -5
  110. package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +2 -2
  111. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.d.ts +4 -0
  112. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.js +20 -9
  113. package/lib/chevre/service/offer/onEventChanged.js +2 -2
  114. package/lib/chevre/service/order/confirmPayTransaction.js +1 -1
  115. package/lib/chevre/service/order/deleteOrder.d.ts +5 -1
  116. package/lib/chevre/service/order/deleteOrder.js +8 -1
  117. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.js +19 -11
  118. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.d.ts +2 -0
  119. package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.d.ts +2 -2
  120. package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.js +1 -7
  121. package/lib/chevre/service/order/onAssetTransactionStatusChanged.d.ts +2 -0
  122. package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +2 -0
  123. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.d.ts +1 -1
  124. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled.js +1 -1
  125. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.js +1 -1
  126. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +1 -1
  127. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.js +1 -1
  128. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +3 -3
  129. package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.d.ts +0 -3
  130. package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.js +73 -44
  131. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/createSendEmailMessageTaskIfNotExist.d.ts +5 -1
  132. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/createSendEmailMessageTaskIfNotExist.js +53 -33
  133. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.js +1 -1
  134. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.d.ts +2 -2
  135. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.js +6 -4
  136. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.d.ts +1 -1
  137. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +3 -7
  138. package/lib/chevre/service/order/onOrderUpdated.js +1 -1
  139. package/lib/chevre/service/order/payOrder.d.ts +2 -0
  140. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.d.ts +2 -1
  141. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +13 -58
  142. package/lib/chevre/service/order/placeOrder/factory.js +3 -21
  143. package/lib/chevre/service/order/placeOrder.d.ts +4 -5
  144. package/lib/chevre/service/order/placeOrder.js +20 -31
  145. package/lib/chevre/service/payment/any/authorize/fixOrderAsNeeded.js +1 -2
  146. package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.d.ts +3 -2
  147. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.d.ts +4 -3
  148. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +3 -31
  149. package/lib/chevre/service/payment/any/authorize.js +13 -37
  150. package/lib/chevre/service/payment/any/factory.d.ts +7 -7
  151. package/lib/chevre/service/payment/any/factory.js +19 -22
  152. package/lib/chevre/service/payment/any/findAcceptAction.d.ts +7 -1
  153. package/lib/chevre/service/payment/any/findAcceptAction.js +34 -15
  154. package/lib/chevre/service/payment/any/findAuthorizeAction.d.ts +4 -0
  155. package/lib/chevre/service/payment/any/findAuthorizeAction.js +20 -9
  156. package/lib/chevre/service/payment/any/findCheckAction.d.ts +4 -0
  157. package/lib/chevre/service/payment/any/findCheckAction.js +20 -9
  158. package/lib/chevre/service/payment/any/invalidatePaymentUrl.d.ts +2 -0
  159. package/lib/chevre/service/payment/any/invalidatePaymentUrl.js +5 -67
  160. package/lib/chevre/service/payment/any/onPayActionCompleted.js +1 -1
  161. package/lib/chevre/service/payment/any/onRefundActionCompletedOrFailed.js +1 -1
  162. package/lib/chevre/service/payment/any/publishPaymentUrl.d.ts +4 -0
  163. package/lib/chevre/service/payment/any/publishPaymentUrl.js +4 -18
  164. package/lib/chevre/service/payment/any/voidPayTransaction.d.ts +2 -0
  165. package/lib/chevre/service/payment/any/voidPayTransaction.js +1 -23
  166. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.d.ts +1 -1
  167. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +5 -9
  168. package/lib/chevre/service/reserve/adminFindReservations.d.ts +15 -0
  169. package/lib/chevre/service/reserve/adminFindReservations.js +35 -0
  170. package/lib/chevre/service/reserve/potentialActions/onPendingReservationCanceled.js +1 -1
  171. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +1 -1
  172. package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +1 -1
  173. package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +20 -11
  174. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +1 -1
  175. package/lib/chevre/service/reserve/potentialActions/onReservationsCreated.js +1 -1
  176. package/lib/chevre/service/reserve/searchByOrder.js +2 -6
  177. package/lib/chevre/service/reserve.d.ts +2 -2
  178. package/lib/chevre/service/reserve.js +3 -3
  179. package/lib/chevre/service/scheduledTask.d.ts +11 -0
  180. package/lib/chevre/service/scheduledTask.js +40 -0
  181. package/lib/chevre/service/scheduledTaskHandler/onOperationFailed.d.ts +14 -0
  182. package/lib/chevre/service/scheduledTaskHandler/onOperationFailed.js +56 -0
  183. package/lib/chevre/service/scheduledTaskHandler.d.ts +12 -0
  184. package/lib/chevre/service/scheduledTaskHandler.js +66 -0
  185. package/lib/chevre/service/task/aggregateOffers.d.ts +2 -2
  186. package/lib/chevre/service/task/aggregateOffers.js +2 -1
  187. package/lib/chevre/service/task/aggregateScreeningEvent.d.ts +2 -2
  188. package/lib/chevre/service/task/aggregateScreeningEvent.js +2 -1
  189. package/lib/chevre/service/task/authorizePayment.js +3 -1
  190. package/lib/chevre/service/task/cancelReservation.d.ts +2 -2
  191. package/lib/chevre/service/task/cancelReservation.js +2 -1
  192. package/lib/chevre/service/task/confirmPayTransaction.js +0 -1
  193. package/lib/chevre/service/task/confirmReserveTransaction.js +3 -8
  194. package/lib/chevre/service/task/deleteTransaction.d.ts +2 -2
  195. package/lib/chevre/service/task/deleteTransaction.js +2 -1
  196. package/lib/chevre/service/task/onAssetTransactionStatusChanged.d.ts +2 -2
  197. package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +4 -3
  198. package/lib/chevre/service/task/onEventChanged.d.ts +2 -2
  199. package/lib/chevre/service/task/onEventChanged.js +2 -1
  200. package/lib/chevre/service/task/onOrderPaymentCompleted.d.ts +2 -2
  201. package/lib/chevre/service/task/onOrderPaymentCompleted.js +4 -1
  202. package/lib/chevre/service/task/onResourceUpdated/onAggregateOfferUpdated.js +2 -2
  203. package/lib/chevre/service/task/onResourceUpdated/onHasPOSUpdated.js +1 -1
  204. package/lib/chevre/service/task/onResourceUpdated/onOfferCatalogUpdated.js +1 -1
  205. package/lib/chevre/service/task/onResourceUpdated.d.ts +2 -2
  206. package/lib/chevre/service/task/onResourceUpdated.js +10 -9
  207. package/lib/chevre/service/task/placeOrder.d.ts +2 -2
  208. package/lib/chevre/service/task/placeOrder.js +6 -3
  209. package/lib/chevre/service/task/publishPaymentUrl.js +7 -3
  210. package/lib/chevre/service/task/refund.d.ts +2 -2
  211. package/lib/chevre/service/task/refund.js +4 -10
  212. package/lib/chevre/service/task/reserve.d.ts +2 -2
  213. package/lib/chevre/service/task/reserve.js +2 -1
  214. package/lib/chevre/service/task/returnOrder.d.ts +2 -2
  215. package/lib/chevre/service/task/returnOrder.js +2 -1
  216. package/lib/chevre/service/task/returnPayTransaction.js +1 -1
  217. package/lib/chevre/service/task/sendOrder.d.ts +2 -2
  218. package/lib/chevre/service/task/sendOrder.js +2 -1
  219. package/lib/chevre/service/task/voidPayTransaction.js +3 -7
  220. package/lib/chevre/service/task/voidPayment.d.ts +2 -2
  221. package/lib/chevre/service/task/voidPayment.js +2 -1
  222. package/lib/chevre/service/task/voidReserveTransaction.d.ts +1 -1
  223. package/lib/chevre/service/taskHandler/onOperationFailed/informTaskIfNeeded.js +1 -1
  224. package/lib/chevre/service/taskHandler/onOperationFailed.js +1 -1
  225. package/lib/chevre/service/taskHandler.d.ts +2 -2
  226. package/lib/chevre/service/taskHandler.js +36 -37
  227. package/lib/chevre/service/transaction/deleteTransaction/deletePayTransactionsByPlaceOrder.d.ts +15 -0
  228. package/lib/chevre/service/transaction/deleteTransaction/deletePayTransactionsByPlaceOrder.js +51 -0
  229. package/lib/chevre/service/transaction/deleteTransaction/deleteReservationsByPlaceOrder.d.ts +23 -0
  230. package/lib/chevre/service/transaction/deleteTransaction/deleteReservationsByPlaceOrder.js +64 -0
  231. package/lib/chevre/service/transaction/deleteTransaction.d.ts +1 -1
  232. package/lib/chevre/service/transaction/deleteTransaction.js +15 -152
  233. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions/sendEmailMessage.d.ts +28 -2
  234. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions/sendEmailMessage.js +11 -12
  235. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions.d.ts +4 -2
  236. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions.js +6 -7
  237. package/lib/chevre/service/transaction/placeOrder/confirm/prepareUnitPriceOfferConditions.d.ts +32 -4
  238. package/lib/chevre/service/transaction/placeOrder/confirm/prepareUnitPriceOfferConditions.js +10 -1
  239. package/lib/chevre/service/transaction/placeOrder/confirm/validation/factory.d.ts +5 -1
  240. package/lib/chevre/service/transaction/placeOrder/confirm/validation.d.ts +6 -2
  241. package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +23 -9
  242. package/lib/chevre/service/transaction/placeOrder/confirm.d.ts +6 -5
  243. package/lib/chevre/service/transaction/placeOrder/confirm.js +30 -40
  244. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.d.ts +1 -1
  245. package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +1 -1
  246. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.d.ts +4 -7
  247. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.js +33 -15
  248. package/lib/chevre/service/transaction/placeOrder/start.d.ts +1 -1
  249. package/lib/chevre/service/transaction/placeOrder/updateAgent/fixCustomer.d.ts +20 -0
  250. package/lib/chevre/service/transaction/placeOrder/updateAgent/fixCustomer.js +63 -0
  251. package/lib/chevre/service/transaction/placeOrder/updateAgent.d.ts +0 -1
  252. package/lib/chevre/service/transaction/placeOrder/updateAgent.js +17 -86
  253. package/lib/chevre/service/transaction/returnOrder/preStart.js +1 -1
  254. package/lib/chevre/service/transaction/returnOrder.js +1 -1
  255. package/lib/chevre/service.d.ts +8 -0
  256. package/lib/chevre/service.js +23 -1
  257. package/lib/chevre/taskSettings.d.ts +3 -4
  258. package/package.json +8 -11
  259. package/lib/chevre/service/order/findConfirmedPlaceOrder.d.ts +0 -13
  260. package/lib/chevre/service/order/findConfirmedPlaceOrder.js +0 -32
  261. package/lib/chevre/service/reserve/findReservations.d.ts +0 -33
  262. package/lib/chevre/service/reserve/findReservations.js +0 -61
@@ -58,9 +58,9 @@ function processTransactionNotInProgress(params) {
58
58
  function confirm(params, options) {
59
59
  return async (repos) => {
60
60
  // 確認番号を事前発行
61
- await (0, publishConfirmationNumberIfNotExist_1.publishConfirmationNumberIfNotExist)({
61
+ const confirmationNumber = await (0, publishConfirmationNumberIfNotExist_1.publishConfirmationNumberIfNotExist)({
62
62
  id: params.id,
63
- status: { $in: [factory_1.factory.transactionStatusType.Confirmed, factory_1.factory.transactionStatusType.InProgress] },
63
+ // status: { $in: [factory.transactionStatusType.Confirmed, factory.transactionStatusType.InProgress] },
64
64
  object: { orderDate: params.result.order.orderDate }
65
65
  })(repos);
66
66
  const transaction = await repos.placeOrder.findPlaceOrderById({ typeOf: factory_1.factory.transactionType.PlaceOrder, id: params.id }, ['typeOf', 'project', 'status', 'agent', 'seller', 'object', 'result']);
@@ -82,10 +82,12 @@ function confirm(params, options) {
82
82
  // if (typeof orderNumber !== 'string' || orderNumber === '') {
83
83
  // throw new factory.errors.Argument('transactionId', 'orderNumber not issued');
84
84
  // }
85
+ // 注文に決済方法IDが発行済か確認(2026-07-12)
86
+ const paymentMethodIdByTransaction = await repos.orderInTransaction.findPaymentMethodId({ id: params.id });
85
87
  // 取引に対する全ての承認アクションをマージ
86
88
  const completedAuthorizeActions = await searchAuthorizeActions(params)(repos);
87
89
  let acceptPayActions = [];
88
- if (typeof transaction.object.paymentMethods?.paymentMethodId === 'string') {
90
+ if (typeof paymentMethodIdByTransaction === 'string') {
89
91
  acceptPayActions = await searchAcceptPayActions(params)(repos);
90
92
  }
91
93
  // 必要あらば注文コード発行(2024-02-05~)
@@ -110,21 +112,16 @@ function confirm(params, options) {
110
112
  serialNumbers } = dissolveAuthorizeActions(completedAuthorizeActions);
111
113
  // orderInTransactionから検索する(2024-03-04~)
112
114
  const acceptedOffers = (await repos.orderInTransaction.findAcceptedOffersWithPriceByIdentifier({
113
- // orderNumber,
114
115
  identifier: transaction.id,
115
116
  project: { id: transaction.project.id }
116
- }))
117
+ }, { onlyPlaceOrder: true }))
117
118
  .filter(({ serialNumber }) => typeof serialNumber === 'string' && serialNumbers.includes(serialNumber));
118
119
  // 単価オファーの全適用条件を検証するために、単価オファーを参照(2026-07-06~)
119
- let unitPriceOfferConditions;
120
- const { usePrepareUnitPriceOfferConditions } = options;
121
- if (usePrepareUnitPriceOfferConditions === true) {
122
- unitPriceOfferConditions = await (0, prepareUnitPriceOfferConditions_1.prepareUnitPriceOfferConditions)({
123
- project: { id: transaction.project.id, },
124
- acceptedOffers,
125
- authorizeEventServiceOfferActions
126
- })({ offer: repos.offer });
127
- }
120
+ const unitPriceOfferConditions = await (0, prepareUnitPriceOfferConditions_1.prepareUnitPriceOfferConditions)({
121
+ project: { id: transaction.project.id, },
122
+ acceptedOffers,
123
+ authorizeEventServiceOfferActions
124
+ })({ offer: repos.offer });
128
125
  // authorizePaymentActionsからpayTransactionsを参照(2024-06-20~)
129
126
  let payTransactions = [];
130
127
  // 決済承認アクションのinstrument依存をobject依存へ変更(2025-12-14~)
@@ -142,30 +139,28 @@ function confirm(params, options) {
142
139
  const seller = (0, factory_2.createSeller)({ transaction });
143
140
  const { paymentMethods, placingOrder, result, eventId, reservationIds } = createResult({
144
141
  ...params,
145
- orderNumber, transaction,
142
+ orderNumber,
143
+ confirmationNumber,
144
+ transaction,
146
145
  acceptPayActions,
147
146
  authorizePaymentActions, authorizeEventServiceOfferActions,
148
147
  acceptedOffers, payTransactions, customer,
148
+ unitPriceOfferConditions,
149
149
  ...(typeof code === 'string') ? { code } : undefined,
150
- ...((Array.isArray(unitPriceOfferConditions)) && { unitPriceOfferConditions })
150
+ paymentMethodIdByTransaction
151
151
  }, options);
152
152
  // ポストアクションを作成
153
153
  const setting = await repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['defaultSenderEmail']);
154
154
  if (typeof setting?.defaultSenderEmail !== 'string') {
155
155
  throw new factory_1.factory.errors.NotFound('setting.defaultSenderEmail');
156
156
  }
157
- const { emailMessages, potentialActions } = await (0, potentialActions_1.createPotentialActions)({
157
+ const { emailMessages } = await (0, potentialActions_1.createPotentialActions)({
158
158
  order: placingOrder, // createEmailMessageでのorder.acceptedOffersへの依存性を排除したのでこちらでよいはず(2024-02-21~)
159
159
  customer,
160
160
  seller,
161
161
  paymentMethods,
162
- // order: orderWithAcceptedOffers, // 現時点でcreateEmailMessageでorder.acceptedOffersを使用している(2024-02-06~)
163
- // transaction: transaction,
164
162
  ...(params.potentialActions !== undefined) ? { potentialActions: params.potentialActions } : undefined,
165
- // ...(emailMessageOnOrderSent !== undefined) ? { emailMessage: emailMessageOnOrderSent } : undefined
166
- },
167
- // settings
168
- setting);
163
+ }, setting);
169
164
  // メッセージ保管(2024-04-28~)
170
165
  await saveMessagesIfNeeded({
171
166
  project: { id: transaction.project.id },
@@ -178,10 +173,11 @@ function confirm(params, options) {
178
173
  id: transaction.id,
179
174
  object: {
180
175
  orderDate: params.result.order.orderDate,
181
- orderNumber
176
+ orderNumber,
177
+ confirmationNumber: placingOrder.confirmationNumber
182
178
  },
183
179
  result: result,
184
- potentialActions: potentialActions
180
+ // ...((options.useTransactionPotentialActions) && { potentialActions }) // support undefined(2026-07-17~)
185
181
  });
186
182
  }
187
183
  catch (error) {
@@ -318,7 +314,10 @@ function createResult(params, options) {
318
314
  }
319
315
  });
320
316
  // 取引の確定条件が全て整っているかどうか確認
321
- (0, validation_1.validateTransaction)(transaction, params.acceptPayActions, params.authorizePaymentActions, params.authorizeEventServiceOfferActions, eventReservationAcceptedOffers, params.payTransactions, params.customer);
317
+ const { paymentMethodIdByTransaction } = params;
318
+ (0, validation_1.validateTransaction)({ id: transaction.id }, params.acceptPayActions, params.authorizePaymentActions, params.authorizeEventServiceOfferActions, eventReservationAcceptedOffers, params.payTransactions, params.customer, {
319
+ ...((typeof paymentMethodIdByTransaction === 'string') && { paymentMethodIdByTransaction })
320
+ });
322
321
  const { paymentMethods, price } = (0, factory_2.createPaymentMethods)({ authorizePaymentActions: params.authorizePaymentActions });
323
322
  const orderedItem = (0, orderedItem_1.acceptedOffers2orderedItem)({
324
323
  eventReservationAcceptedOffers
@@ -328,7 +327,7 @@ function createResult(params, options) {
328
327
  order: { price },
329
328
  paymentMethods,
330
329
  authorizeOfferActions: params.authorizeEventServiceOfferActions,
331
- ...((Array.isArray(params.unitPriceOfferConditions)) && { unitPriceOfferConditions: params.unitPriceOfferConditions })
330
+ unitPriceOfferConditions: params.unitPriceOfferConditions
332
331
  });
333
332
  // 注文オファー検証
334
333
  (0, validation_1.validateAcceptedOffers)({
@@ -341,8 +340,10 @@ function createResult(params, options) {
341
340
  result: params.result
342
341
  });
343
342
  (0, validation_1.validatePaymentMethods)({ order: { paymentMethods } }, options);
344
- // 確認番号を発行
345
- const { confirmationNumber } = createConfirmationNumber({ transaction });
343
+ // 取引のobjectへの依存を排除する(2026-07-08~)
344
+ const { confirmationNumber } = params;
345
+ // // 確認番号を発行
346
+ // const { confirmationNumber } = createConfirmationNumber({ transaction });
346
347
  // 注文作成
347
348
  const orderAsResult = (0, result_1.createOrderAsResult)({
348
349
  orderNumber: params.orderNumber,
@@ -433,14 +434,3 @@ function searchAuthorizeActions(params) {
433
434
  return authorizeActions;
434
435
  };
435
436
  }
436
- function createConfirmationNumber(params) {
437
- const confirmationNumber = params.transaction.object.confirmationNumber;
438
- // 取引に確認番号が保管されていなければ、確認番号を発行
439
- if (typeof confirmationNumber !== 'string') {
440
- // 事前に発行済なはずなので、ありえないフロー
441
- throw new factory_1.factory.errors.Internal('object.confirmationNumber undefined');
442
- }
443
- return {
444
- confirmationNumber,
445
- };
446
- }
@@ -1,6 +1,6 @@
1
1
  import { factory } from '../../../../factory';
2
2
  import type { ISetting } from '../../../../repo/setting';
3
- type IPlaceOrderPotentialTask = factory.task.IAttributes<factory.taskName.PlaceOrder> | factory.task.IAttributes<factory.taskName.DeleteTransaction> | factory.task.IAttributes<factory.taskName.VoidPayTransaction> | factory.task.IAttributes<factory.taskName.VoidReserveTransaction>;
3
+ type IPlaceOrderPotentialTask = factory.task.IAttributes<factory.taskName.PlaceOrder> | factory.task.deleteTransaction.IAttributes | factory.task.IAttributes<factory.taskName.VoidPayTransaction> | factory.task.voidReserveTransaction.IAttributes;
4
4
  /**
5
5
  * 取引のタスクを作成する
6
6
  */
@@ -33,6 +33,6 @@ function exportTasksById(params) {
33
33
  }, setting
34
34
  // settings
35
35
  );
36
- await repos.task.saveMany(taskAttributes, { emitImmediately: true });
36
+ await repos.task.saveMany(taskAttributes);
37
37
  };
38
38
  }
@@ -1,22 +1,19 @@
1
1
  import type { ConfirmationNumberRepo } from '../../../repo/confirmationNumber';
2
- import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
3
- import { factory } from '../../../factory';
2
+ import type { OrderInTransactionRepo } from '../../../repo/orderInTransaction';
4
3
  /**
5
- * 未発行であれば、注文の確認番号を発行して取引に保管する
4
+ * 未発行であれば、確認番号を発行して注文ドキュメントに保管する
5
+ * reimplement using OrderInTransactionRepo(2026-07-09~)
6
6
  */
7
7
  declare function publishConfirmationNumberIfNotExist(params: {
8
8
  /**
9
9
  * 取引ID
10
10
  */
11
11
  id: string;
12
- status: {
13
- $in: factory.transactionStatusType[];
14
- };
15
12
  object: {
16
13
  orderDate: Date;
17
14
  };
18
15
  }): (repos: {
19
- placeOrder: PlaceOrderRepo;
20
16
  confirmationNumber: ConfirmationNumberRepo;
17
+ orderInTransaction: OrderInTransactionRepo;
21
18
  }) => Promise<string>;
22
19
  export { publishConfirmationNumberIfNotExist };
@@ -1,36 +1,54 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.publishConfirmationNumberIfNotExist = publishConfirmationNumberIfNotExist;
7
+ const debug_1 = __importDefault(require("debug"));
8
+ // import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
4
9
  const factory_1 = require("../../../factory");
10
+ const debug = (0, debug_1.default)('chevre-domain:service:transaction:placeOrder:publishConfirmationNumberIfNotExist');
5
11
  /**
6
- * 未発行であれば、注文の確認番号を発行して取引に保管する
12
+ * 未発行であれば、確認番号を発行して注文ドキュメントに保管する
13
+ * reimplement using OrderInTransactionRepo(2026-07-09~)
7
14
  */
8
15
  function publishConfirmationNumberIfNotExist(params) {
9
16
  return async (repos) => {
10
- let confirmationNumber = await repos.placeOrder.findInProgressConfirmationNumberById({
11
- id: params.id,
12
- status: { $in: params.status.$in }
13
- });
17
+ // let confirmationNumber = await repos.placeOrder.findInProgressConfirmationNumberById({
18
+ // id: params.id,
19
+ // status: { $in: params.status.$in }
20
+ // });
21
+ let confirmationNumber = await repos.orderInTransaction.findConfirmationNumberByIdentifier({ identifier: params.id });
22
+ debug('already exists?', confirmationNumber);
14
23
  // すでに発行済であれば何もしない
15
24
  if (typeof confirmationNumber === 'string') {
16
25
  return confirmationNumber;
17
26
  }
18
27
  // 確認番号を発行
19
28
  confirmationNumber = await repos.confirmationNumber.publish({ orderDate: params.object.orderDate });
20
- // 取引に存在しなければ保管
21
- await repos.placeOrder.saveConfirmationNumberIfNotExist({
22
- id: params.id,
23
- status: { $in: params.status.$in },
29
+ debug('saving new confirmationNumber...', confirmationNumber);
30
+ // // 取引に存在しなければ保管
31
+ // await repos.placeOrder.saveConfirmationNumberIfNotExist({
32
+ // id: params.id,
33
+ // status: { $in: params.status.$in },
34
+ // confirmationNumber
35
+ // });
36
+ // 注文ドキュメントにも保管(2026-07-08~)
37
+ const saveResult = await repos.orderInTransaction.saveConfirmationNumberIfNotExist({
38
+ identifier: params.id,
24
39
  confirmationNumber
25
- });
40
+ }, { onlyPlaceOrder: true });
41
+ debug('saveConfirmationNumberIfNotExist result:', JSON.stringify(saveResult));
26
42
  // 確認番号を取引から再取得
27
- confirmationNumber = await repos.placeOrder.findInProgressConfirmationNumberById({
28
- id: params.id,
29
- status: { $in: params.status.$in }
30
- });
43
+ // confirmationNumber = await repos.placeOrder.findInProgressConfirmationNumberById({
44
+ // id: params.id,
45
+ // status: { $in: params.status.$in }
46
+ // });
47
+ confirmationNumber = await repos.orderInTransaction.findConfirmationNumberByIdentifier({ identifier: params.id });
48
+ debug('confirmationNumber should exist:', confirmationNumber);
31
49
  // 万が一処理が想定通りでない場合confirmationNumberが存在しない
32
50
  if (typeof confirmationNumber !== 'string') {
33
- throw new factory_1.factory.errors.Internal('transaction.object.confirmationNumber not found');
51
+ throw new factory_1.factory.errors.Internal('orderInTransaction.confirmationNumber not found');
34
52
  }
35
53
  return confirmationNumber;
36
54
  };
@@ -9,7 +9,7 @@ import type { ProjectMakesOfferRepo } from '../../../repo/projectMakesOffer';
9
9
  import type { SellerRepo } from '../../../repo/seller';
10
10
  import type { IStartedPlaceOrder, PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
11
11
  import { IStartPlaceOrderParams } from './start/factory';
12
- interface IStartOperationRepos {
12
+ export interface IStartOperationRepos {
13
13
  issuer: IssuerRepo;
14
14
  member: MemberRepo;
15
15
  memberProgram: MemberProgramRepo;
@@ -0,0 +1,20 @@
1
+ import { factory } from '../../../../factory';
2
+ import type { OrderInTransactionRepo } from '../../../../repo/orderInTransaction';
3
+ export interface IFixCustomerRepos {
4
+ orderInTransaction: OrderInTransactionRepo;
5
+ }
6
+ export type IProfileByRequest = Pick<factory.order.ICustomer, 'additionalProperty' | 'address' | 'age' | 'email' | 'familyName' | 'gender' | 'givenName' | 'name' | 'telephone' | 'url'> & {
7
+ telephoneRegion?: string;
8
+ };
9
+ /**
10
+ * 進行中取引からカスタマー属性を決定する
11
+ */
12
+ export declare function fixCustomer(params: {
13
+ /**
14
+ * 注文取引ID
15
+ */
16
+ id: string;
17
+ profileByRequest: IProfileByRequest;
18
+ }): (repos: IFixCustomerRepos) => Promise<{
19
+ customer: factory.order.ICustomer;
20
+ }>;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fixCustomer = fixCustomer;
4
+ const libphonenumber_js_1 = require("libphonenumber-js");
5
+ const factory_1 = require("../../../../factory");
6
+ /**
7
+ * 進行中取引からカスタマー属性を決定する
8
+ */
9
+ function fixCustomer(params) {
10
+ return async (repos) => {
11
+ const { profileByRequest } = params;
12
+ let formattedTelephone;
13
+ try {
14
+ const phoneNumber = (0, libphonenumber_js_1.parsePhoneNumberFromString)(String(profileByRequest.telephone), profileByRequest.telephoneRegion);
15
+ if (phoneNumber === undefined || !phoneNumber.isValid()) {
16
+ throw new factory_1.factory.errors.Argument('telephone', 'Invalid phone number');
17
+ }
18
+ formattedTelephone = phoneNumber.format('E.164');
19
+ // if (useLibphonenumber) {
20
+ // const phoneNumber = parsePhoneNumberFromString(String(params.agent.telephone), params.agent.telephoneRegion as CountryCode | undefined);
21
+ // if (phoneNumber === undefined || !phoneNumber.isValid()) {
22
+ // throw new factory.errors.Argument('telephone', 'Invalid phone number');
23
+ // }
24
+ // formattedTelephone = phoneNumber.format('E.164');
25
+ // } else {
26
+ // const phoneUtil = PhoneNumberUtil.getInstance();
27
+ // const phoneNumber = phoneUtil.parse(params.agent.telephone, params.agent.telephoneRegion);
28
+ // if (!phoneUtil.isValidNumber(phoneNumber)) {
29
+ // throw new factory.errors.Argument('telephone', 'Invalid phone number');
30
+ // }
31
+ // formattedTelephone = phoneUtil.format(phoneNumber, PhoneNumberFormat.E164);
32
+ // }
33
+ }
34
+ catch (error) {
35
+ throw new factory_1.factory.errors.Argument('telephone', (error instanceof Error) ? error.message : /* istanbul ignore next */ String(error));
36
+ }
37
+ // orderInTransaction.customer?.typeOfは取引開始時にセットされている前提で再実装(2026-06-24~)
38
+ const customerByTransaction = await repos.orderInTransaction.findCustomerByOrderIdentifier({ identifier: params.id });
39
+ const customerName = (typeof profileByRequest.name === 'string' && profileByRequest.name !== '')
40
+ ? profileByRequest.name
41
+ : /* istanbul ignore next */ (typeof profileByRequest.givenName === 'string' && typeof profileByRequest.familyName === 'string'
42
+ && profileByRequest.givenName !== '' && profileByRequest.familyName !== '')
43
+ ? `${profileByRequest.givenName} ${profileByRequest.familyName}`
44
+ : undefined;
45
+ const identifier = (Array.isArray(customerByTransaction.identifier)) ? customerByTransaction.identifier : /* istanbul ignore next */ [];
46
+ const customer = {
47
+ typeOf: customerByTransaction.typeOf, // 取引開始時で固定
48
+ id: customerByTransaction.id, // 取引開始時で固定
49
+ identifier, // 取引開始時で固定
50
+ ...((Array.isArray(profileByRequest.additionalProperty)) && { additionalProperty: profileByRequest.additionalProperty }),
51
+ ...((typeof profileByRequest.age === 'string') && { age: profileByRequest.age }),
52
+ ...((typeof profileByRequest.address === 'string') && { address: profileByRequest.address }),
53
+ ...((typeof profileByRequest.email === 'string') && { email: profileByRequest.email }),
54
+ ...((typeof profileByRequest.familyName === 'string') && { familyName: profileByRequest.familyName }),
55
+ ...((typeof profileByRequest.gender === 'string') && { gender: profileByRequest.gender }),
56
+ ...((typeof profileByRequest.givenName === 'string') && { givenName: profileByRequest.givenName }),
57
+ ...((typeof customerName === 'string') && { name: customerName }),
58
+ ...((typeof formattedTelephone === 'string') && { telephone: formattedTelephone }),
59
+ ...((typeof profileByRequest.url === 'string') && { url: profileByRequest.url })
60
+ };
61
+ return { customer };
62
+ };
63
+ }
@@ -5,7 +5,6 @@ import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
5
5
  * 取引人プロフィール更新
6
6
  */
7
7
  export declare function updateAgent(params: {
8
- typeOf: factory.transactionType.PlaceOrder;
9
8
  /**
10
9
  * 取引ID
11
10
  */
@@ -1,22 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateAgent = updateAgent;
4
- const google_libphonenumber_1 = require("google-libphonenumber");
5
4
  const factory_1 = require("../../../factory");
6
- function fixCustomer(params) {
5
+ const fixCustomer_1 = require("./updateAgent/fixCustomer");
6
+ /**
7
+ * 取引人プロフィール更新
8
+ */
9
+ function updateAgent(params) {
7
10
  return async (repos) => {
8
- let formattedTelephone;
9
- try {
10
- const phoneUtil = google_libphonenumber_1.PhoneNumberUtil.getInstance();
11
- const phoneNumber = phoneUtil.parse(params.agent.telephone, params.agent.telephoneRegion);
12
- if (!phoneUtil.isValidNumber(phoneNumber)) {
13
- throw new factory_1.factory.errors.Argument('telephone', 'Invalid phone number');
14
- }
15
- formattedTelephone = phoneUtil.format(phoneNumber, google_libphonenumber_1.PhoneNumberFormat.E164);
16
- }
17
- catch (error) {
18
- throw new factory_1.factory.errors.Argument('telephone', (error instanceof Error) ? error.message : String(error));
19
- }
20
11
  const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
21
12
  typeOf: factory_1.factory.transactionType.PlaceOrder,
22
13
  id: params.id
@@ -24,77 +15,17 @@ function fixCustomer(params) {
24
15
  if (transaction.agent.id !== params.agent.id) {
25
16
  throw new factory_1.factory.errors.Forbidden('Transaction not yours');
26
17
  }
27
- // 注文取引の場合、object.customerにも適用
28
- let customer;
29
- if (transaction.typeOf === factory_1.factory.transactionType.PlaceOrder) {
30
- // orderInTransaction.customer?.typeOfは取引開始時にセットされている前提で再実装(2026-06-24~)
31
- const customerByTransaction = await repos.orderInTransaction.findCustomerByOrderIdentifier({
32
- identifier: params.id,
33
- // project: { id: transaction.project.id }
34
- });
35
- // // いったんtransaction.object.customer?.typeOfは取引開始時にセットされている前提
36
- // const customerByTransaction = transaction.object.customer;
37
- if (typeof customerByTransaction?.typeOf === 'string') {
38
- customer = {
39
- typeOf: customerByTransaction.typeOf,
40
- id: customerByTransaction.id,
41
- ...(Array.isArray(customerByTransaction.identifier))
42
- ? { identifier: customerByTransaction.identifier }
43
- : /* istanbul ignore next */ undefined,
44
- ...(Array.isArray(params.agent.additionalProperty))
45
- ? { additionalProperty: params.agent.additionalProperty }
46
- : /* istanbul ignore next */ undefined,
47
- ...(typeof params.agent.age === 'string') ? { age: params.agent.age }
48
- : /* istanbul ignore next */ undefined,
49
- ...(typeof params.agent.address === 'string') ? { address: params.agent.address }
50
- : /* istanbul ignore next */ undefined,
51
- ...(typeof params.agent.email === 'string') ? { email: params.agent.email }
52
- : /* istanbul ignore next */ undefined,
53
- ...(typeof params.agent.familyName === 'string') ? { familyName: params.agent.familyName }
54
- : /* istanbul ignore next */ undefined,
55
- ...(typeof params.agent.gender === 'string') ? { gender: params.agent.gender }
56
- : /* istanbul ignore next */ undefined,
57
- ...(typeof params.agent.givenName === 'string') ? { givenName: params.agent.givenName }
58
- : /* istanbul ignore next */ undefined,
59
- ...(typeof params.agent.name === 'string') ? { name: params.agent.name } : /* istanbul ignore next */ undefined,
60
- ...(typeof formattedTelephone === 'string') ? { telephone: formattedTelephone } : /* istanbul ignore next */ undefined,
61
- ...(typeof params.agent.url === 'string') ? { url: params.agent.url } : /* istanbul ignore next */ undefined
62
- };
63
- }
64
- }
65
- return { customer, transaction };
66
- };
67
- }
68
- /**
69
- * 取引人プロフィール更新
70
- */
71
- function updateAgent(params) {
72
- return async (repos) => {
73
- const { customer, transaction } = await fixCustomer(params)(repos);
74
- // also save in orderInTransaction(2024-06-20~)
75
- if (customer !== undefined) {
76
- // // 注文ドキュメントを参照(2026-06-24~)
77
- // const orderNumber = await repos.orderInTransaction.findOrderNumberByIdentifier({
78
- // identifier: params.id,
79
- // project: { id: transaction.project.id },
80
- // }, { onlyPlaceOrder: true });
81
- const customerName = (typeof customer.name === 'string' && customer.name !== '')
82
- ? customer.name
83
- : (typeof customer.givenName === 'string' && typeof customer.familyName === 'string'
84
- && customer.givenName !== '' && customer.familyName !== '')
85
- ? `${customer.givenName} ${customer.familyName}`
86
- : undefined;
87
- const customerInOrder = {
88
- ...customer,
89
- identifier: (Array.isArray(customer.identifier)) ? customer.identifier : [],
90
- ...(typeof customerName === 'string') ? { name: customerName } : undefined
91
- };
92
- await repos.orderInTransaction.setCustomerByIdentifier({
93
- project: transaction.project,
94
- identifier: params.id,
95
- customer: customerInOrder
96
- });
97
- }
98
- // return newAgent;
18
+ const { id: _id, typeOf: _typeOf, ...profileByRequest } = params.agent;
19
+ const { customer } = await (0, fixCustomer_1.fixCustomer)({ id: params.id, profileByRequest })(repos);
20
+ // // 注文ドキュメントを参照(2026-06-24~)
21
+ // const orderNumber = await repos.orderInTransaction.findOrderNumberByIdentifier({
22
+ // identifier: params.id,
23
+ // project: { id: transaction.project.id },
24
+ // }, { onlyPlaceOrder: true });
25
+ await repos.orderInTransaction.setCustomerByIdentifier({
26
+ project: transaction.project,
27
+ identifier: params.id,
28
+ customer
29
+ });
99
30
  };
100
31
  }
@@ -28,7 +28,7 @@ function preStart(params) {
28
28
  await validateOrder({ orders })();
29
29
  let offers = [];
30
30
  if (offerIds.length > 0) {
31
- offers = await repos.offer.search({
31
+ offers = await repos.offer.findUnitPriceOffers({
32
32
  id: { $in: offerIds }
33
33
  });
34
34
  }
@@ -177,6 +177,6 @@ function exportTasksById(params) {
177
177
  }, setting
178
178
  // settings
179
179
  );
180
- await repos.task.saveMany(taskAttributes, { emitImmediately: true });
180
+ await repos.task.saveMany(taskAttributes);
181
181
  };
182
182
  }
@@ -17,6 +17,8 @@ import type * as AnyPaymentService from './service/payment/any';
17
17
  import type * as ProjectService from './service/project';
18
18
  import type * as ReserveService from './service/reserve';
19
19
  import type * as TaskService from './service/task';
20
+ import type * as AsyncActionService from './service/asyncAction';
21
+ import type * as ScheduledTaskService from './service/scheduledTask';
20
22
  import type * as TransactionService from './service/transaction';
21
23
  export declare namespace aggregation {
22
24
  function createService(): Promise<typeof AggregationService>;
@@ -53,6 +55,12 @@ export declare namespace reserve {
53
55
  export declare namespace task {
54
56
  function createService(): Promise<typeof TaskService>;
55
57
  }
58
+ export declare namespace asyncAction {
59
+ function createService(): Promise<typeof AsyncActionService>;
60
+ }
61
+ export declare namespace scheduledTask {
62
+ function createService(): Promise<typeof ScheduledTaskService>;
63
+ }
56
64
  export declare namespace transaction {
57
65
  function createService(): Promise<typeof TransactionService>;
58
66
  }
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.factory = exports.transaction = exports.task = exports.reserve = exports.project = exports.payment = exports.order = exports.offer = exports.notification = exports.iam = exports.event = exports.assetTransaction = exports.aggregation = void 0;
36
+ exports.factory = exports.transaction = exports.scheduledTask = exports.asyncAction = exports.task = exports.reserve = exports.project = exports.payment = exports.order = exports.offer = exports.notification = exports.iam = exports.event = exports.assetTransaction = exports.aggregation = void 0;
37
37
  /* eslint-disable @typescript-eslint/no-namespace */
38
38
  /**
39
39
  * service module
@@ -167,6 +167,28 @@ var task;
167
167
  }
168
168
  task.createService = createService;
169
169
  })(task || (exports.task = task = {}));
170
+ var asyncAction;
171
+ (function (asyncAction) {
172
+ let service;
173
+ async function createService() {
174
+ if (service === undefined) {
175
+ service = await import('./service/asyncAction.js');
176
+ }
177
+ return service;
178
+ }
179
+ asyncAction.createService = createService;
180
+ })(asyncAction || (exports.asyncAction = asyncAction = {}));
181
+ var scheduledTask;
182
+ (function (scheduledTask) {
183
+ let service;
184
+ async function createService() {
185
+ if (service === undefined) {
186
+ service = await import('./service/scheduledTask.js');
187
+ }
188
+ return service;
189
+ }
190
+ scheduledTask.createService = createService;
191
+ })(scheduledTask || (exports.scheduledTask = scheduledTask = {}));
170
192
  var transaction;
171
193
  (function (transaction) {
172
194
  let service;
@@ -24,13 +24,12 @@ interface IExecuteOptions {
24
24
  executeById: boolean;
25
25
  executeByName: boolean;
26
26
  }
27
- type IOperation<T> = (settings: IExecuteSettings) => Promise<T>;
28
27
  type IOperationExecute<T> = (settings: IExecuteSettings, options: IExecuteOptions) => Promise<T>;
29
28
  type ICallResult = void | Pick<factory.task.IExecutionResult, 'error'>;
30
- type ICallableTaskOperationSimple = (taskData: factory.task.IData<factory.taskName>) => IOperation<void>;
31
29
  type ICallableTaskOperation = (task: IExecutableTask<factory.taskName>) => IOperationExecute<ICallResult>;
32
- type IExecutableTaskKeys = 'data' | 'id' | 'name' | 'status' | 'numberOfTried' | 'project' | 'remainingNumberOfTries' | 'runsAt' | 'expires';
30
+ type IExecutableTaskKeys = 'data' | 'id' | 'name' | 'status' | 'numberOfTried' | 'project' | 'remainingNumberOfTries' | 'runsAt';
33
31
  type IExecutableTask<T extends factory.taskName> = Pick<factory.task.ITask<T>, IExecutableTaskKeys> & {
32
+ expires?: Date;
34
33
  status: factory.taskStatus.Running;
35
34
  };
36
- export { ICallableTaskOperation, ICallableTaskOperationSimple, ICallResult, IExecutableTask, IExecutableTaskKeys, IExecuteSettings, IExecuteOptions, IOperationExecute, AggregationSettings };
35
+ export { ICallableTaskOperation, ICallResult, IExecutableTask, IExecutableTaskKeys, IExecuteSettings, IExecuteOptions, IOperationExecute, AggregationSettings };