@chevre/domain 21.20.0-alpha.8 → 21.20.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 (230) hide show
  1. package/example/src/chevre/findTransactionById.ts +21 -0
  2. package/example/src/chevre/importCategoryCodesFromCOA.ts +2 -1
  3. package/example/src/chevre/importOffersFromCOA.ts +2 -1
  4. package/example/src/chevre/migrateActionInstrumentTransactionNumber.ts +93 -0
  5. package/example/src/chevre/migrateDeleteTransactionTasks.ts +119 -0
  6. package/example/src/chevre/migrateEventMakesOfferAvailableAtOrFrom.ts +87 -0
  7. package/example/src/chevre/migrateIAMMemberPOSRoles.ts +3 -2
  8. package/example/src/chevre/migrateOfferAvailableAtOrFrom.ts +63 -0
  9. package/example/src/chevre/{migrateOrderPaymentMethodIdentifier.ts → migrateOrderAcceptedOfferSerialNumber.ts} +18 -19
  10. package/example/src/chevre/onAssetTransactionStatusChanged.ts +36 -0
  11. package/example/src/chevre/retryTasks.ts +39 -0
  12. package/example/src/chevre/searchActions.ts +13 -7
  13. package/example/src/chevre/searchOrderAcceptedOffers.ts +13 -3
  14. package/example/src/chevre/searchOrders.ts +13 -15
  15. package/example/src/chevre/searchSlicedAcceptedOffersByOrderNumber.ts +28 -0
  16. package/example/src/chevre/sendOrder.ts +37 -0
  17. package/example/src/chevre/transaction/processPlaceOrder.ts +2 -3
  18. package/example/src/verifyToken.ts +44 -0
  19. package/lib/chevre/credentials.d.ts +2 -0
  20. package/lib/chevre/credentials.js +4 -2
  21. package/lib/chevre/errorHandler.js +3 -0
  22. package/lib/chevre/factory/order.d.ts +1 -0
  23. package/lib/chevre/factory/order.js +2 -1
  24. package/lib/chevre/factory/reservedAgentIdentifireNames.js +2 -1
  25. package/lib/chevre/factory/transaction.d.ts +10 -1
  26. package/lib/chevre/repo/acceptedOffer.d.ts +58 -2
  27. package/lib/chevre/repo/acceptedOffer.js +100 -4
  28. package/lib/chevre/repo/accountingReport.d.ts +33 -7
  29. package/lib/chevre/repo/accountingReport.js +157 -5
  30. package/lib/chevre/repo/action.d.ts +32 -8
  31. package/lib/chevre/repo/action.js +114 -54
  32. package/lib/chevre/repo/event.d.ts +20 -0
  33. package/lib/chevre/repo/event.js +22 -0
  34. package/lib/chevre/repo/member.d.ts +8 -1
  35. package/lib/chevre/repo/member.js +7 -1
  36. package/lib/chevre/repo/mongoose/schemas/accountingReport.js +2 -1
  37. package/lib/chevre/repo/mongoose/schemas/action.d.ts +1 -1
  38. package/lib/chevre/repo/mongoose/schemas/action.js +25 -11
  39. package/lib/chevre/repo/mongoose/schemas/order.d.ts +1 -1
  40. package/lib/chevre/repo/mongoose/schemas/order.js +38 -11
  41. package/lib/chevre/repo/offer.d.ts +42 -0
  42. package/lib/chevre/repo/offer.js +35 -0
  43. package/lib/chevre/repo/order.js +43 -20
  44. package/lib/chevre/repo/orderInTransaction.d.ts +44 -0
  45. package/lib/chevre/repo/orderInTransaction.js +164 -0
  46. package/lib/chevre/repo/paymentServiceProvider.js +2 -1
  47. package/lib/chevre/repo/person.js +1 -4
  48. package/lib/chevre/repo/task.d.ts +26 -3
  49. package/lib/chevre/repo/task.js +61 -46
  50. package/lib/chevre/repo/transaction.d.ts +2 -2
  51. package/lib/chevre/repo/transaction.js +13 -36
  52. package/lib/chevre/repository.d.ts +5 -0
  53. package/lib/chevre/repository.js +15 -2
  54. package/lib/chevre/service/aggregation/event/importFromCOA.js +5 -5
  55. package/lib/chevre/service/assetTransaction/pay/factory.js +1 -6
  56. package/lib/chevre/service/assetTransaction/pay/potentialActions/createPayObjectServiceOutput.d.ts +9 -0
  57. package/lib/chevre/service/assetTransaction/pay/potentialActions/createPayObjectServiceOutput.js +143 -0
  58. package/lib/chevre/service/assetTransaction/pay/potentialActions.d.ts +11 -3
  59. package/lib/chevre/service/assetTransaction/pay/potentialActions.js +4 -165
  60. package/lib/chevre/service/assetTransaction/pay.d.ts +21 -6
  61. package/lib/chevre/service/assetTransaction/pay.js +64 -23
  62. package/lib/chevre/service/assetTransaction/reserve/factory.js +11 -14
  63. package/lib/chevre/service/assetTransaction/reserveCOA.d.ts +19 -0
  64. package/lib/chevre/service/assetTransaction/reserveCOA.js +46 -0
  65. package/lib/chevre/service/code.js +1 -1
  66. package/lib/chevre/service/delivery.js +2 -2
  67. package/lib/chevre/service/event/createEvent.js +1 -1
  68. package/lib/chevre/service/event.js +16 -24
  69. package/lib/chevre/service/moneyTransfer.js +1 -1
  70. package/lib/chevre/service/notification.js +71 -66
  71. package/lib/chevre/service/offer/any.d.ts +35 -0
  72. package/lib/chevre/service/offer/any.js +67 -0
  73. package/lib/chevre/service/offer/event/authorize.d.ts +7 -0
  74. package/lib/chevre/service/offer/event/authorize.js +27 -17
  75. package/lib/chevre/service/offer/event/cancel.d.ts +2 -0
  76. package/lib/chevre/service/offer/event/cancel.js +13 -1
  77. package/lib/chevre/service/offer/event/factory.d.ts +1 -1
  78. package/lib/chevre/service/offer/event/factory.js +11 -22
  79. package/lib/chevre/service/offer/event/importFromCOA.js +6 -8
  80. package/lib/chevre/service/offer/event/voidTransaction.d.ts +2 -0
  81. package/lib/chevre/service/offer/event/voidTransaction.js +24 -7
  82. package/lib/chevre/service/offer/eventServiceByCOA/authorize.d.ts +54 -0
  83. package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +138 -0
  84. package/lib/chevre/service/offer/eventServiceByCOA/cancel.d.ts +39 -0
  85. package/lib/chevre/service/offer/eventServiceByCOA/cancel.js +59 -0
  86. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.d.ts +25 -0
  87. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +165 -0
  88. package/lib/chevre/service/offer/eventServiceByCOA/factory.js +10 -23
  89. package/lib/chevre/service/offer/eventServiceByCOA.d.ts +4 -89
  90. package/lib/chevre/service/offer/eventServiceByCOA.js +7 -292
  91. package/lib/chevre/service/offer/moneyTransfer/authorize.d.ts +10 -1
  92. package/lib/chevre/service/offer/moneyTransfer/authorize.js +49 -3
  93. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.js +1 -1
  94. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.d.ts +2 -0
  95. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.js +47 -2
  96. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.js +1 -1
  97. package/lib/chevre/service/offer/product/factory.js +2 -5
  98. package/lib/chevre/service/offer/product.d.ts +2 -0
  99. package/lib/chevre/service/offer/product.js +11 -23
  100. package/lib/chevre/service/order/confirmPayTransaction.d.ts +3 -1
  101. package/lib/chevre/service/order/confirmPayTransaction.js +5 -5
  102. package/lib/chevre/service/order/createAccountingReportIfNotExist.js +1 -1
  103. package/lib/chevre/service/order/onAssetTransactionStatusChanged.d.ts +12 -1
  104. package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +206 -7
  105. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.d.ts +1 -1
  106. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered/factory.d.ts +1 -1
  107. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered/factory.js +51 -53
  108. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.d.ts +1 -1
  109. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.js +10 -25
  110. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +16 -0
  111. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.js +91 -0
  112. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.d.ts +8 -0
  113. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.js +37 -0
  114. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.d.ts +12 -0
  115. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +115 -0
  116. package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.js +19 -1
  117. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/createSendEmailMessageTaskIfNotExist.d.ts +8 -0
  118. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/createSendEmailMessageTaskIfNotExist.js +41 -0
  119. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/factory.d.ts +6 -10
  120. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/factory.js +116 -92
  121. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.d.ts +4 -1
  122. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.js +81 -84
  123. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.d.ts +1 -1
  124. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.js +18 -15
  125. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +62 -1
  126. package/lib/chevre/service/order/onOrderStatusChanged.d.ts +3 -1
  127. package/lib/chevre/service/order/onOrderStatusChanged.js +5 -1
  128. package/lib/chevre/service/order/placeOrder.d.ts +3 -1
  129. package/lib/chevre/service/order/placeOrder.js +157 -50
  130. package/lib/chevre/service/order/returnOrder.js +25 -16
  131. package/lib/chevre/service/order/sendOrder.d.ts +5 -0
  132. package/lib/chevre/service/order/sendOrder.js +67 -33
  133. package/lib/chevre/service/payment/any/onPaid.js +1 -1
  134. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onPaid.d.ts +3 -1
  135. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onPaid.js +15 -9
  136. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onRefunded.d.ts +3 -1
  137. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onRefunded.js +8 -5
  138. package/lib/chevre/service/payment/any/onPaymentStatusChanged.js +2 -2
  139. package/lib/chevre/service/payment/any/onRefund.js +1 -1
  140. package/lib/chevre/service/payment/any.d.ts +6 -5
  141. package/lib/chevre/service/payment/any.js +3 -2
  142. package/lib/chevre/service/payment/creditCard.d.ts +1 -1
  143. package/lib/chevre/service/payment/creditCard.js +62 -68
  144. package/lib/chevre/service/payment/faceToFace.d.ts +1 -5
  145. package/lib/chevre/service/payment/movieTicket/checkByIdentifier.d.ts +0 -2
  146. package/lib/chevre/service/payment/movieTicket/checkByIdentifier.js +1 -0
  147. package/lib/chevre/service/payment/movieTicket/validation.d.ts +0 -2
  148. package/lib/chevre/service/payment/movieTicket.d.ts +1 -7
  149. package/lib/chevre/service/payment/movieTicket.js +1 -1
  150. package/lib/chevre/service/payment/paymentCard.d.ts +1 -3
  151. package/lib/chevre/service/payment/paymentCard.js +6 -6
  152. package/lib/chevre/service/payment.d.ts +5 -0
  153. package/lib/chevre/service/payment.js +40 -5
  154. package/lib/chevre/service/product.js +1 -1
  155. package/lib/chevre/service/reserve/cancelReservation.js +2 -2
  156. package/lib/chevre/service/reserve/checkInReservation.d.ts +1 -3
  157. package/lib/chevre/service/reserve/checkInReservation.js +6 -5
  158. package/lib/chevre/service/reserve/confirmReservation.js +1 -1
  159. package/lib/chevre/service/reserve/factory.js +0 -8
  160. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.d.ts +1 -1
  161. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +4 -4
  162. package/lib/chevre/service/reserve/searchByOrder.js +2 -1
  163. package/lib/chevre/service/reserve/useReservation.d.ts +1 -3
  164. package/lib/chevre/service/reserve/useReservation.js +10 -9
  165. package/lib/chevre/service/reserve/verifyToken4reservation.js +2 -0
  166. package/lib/chevre/service/task/confirmMoneyTransfer.js +4 -4
  167. package/lib/chevre/service/task/confirmPayTransaction.js +2 -1
  168. package/lib/chevre/service/task/confirmRegisterServiceTransaction.d.ts +1 -1
  169. package/lib/chevre/service/task/confirmRegisterServiceTransaction.js +30 -8
  170. package/lib/chevre/service/task/confirmReserveTransaction.d.ts +6 -1
  171. package/lib/chevre/service/task/confirmReserveTransaction.js +176 -29
  172. package/lib/chevre/service/task/createAccountingReport.d.ts +6 -0
  173. package/lib/chevre/service/task/createAccountingReport.js +80 -0
  174. package/lib/chevre/service/task/importOffersFromCOA.js +2 -1
  175. package/lib/chevre/service/task/onAuthorizationCreated.js +0 -1
  176. package/lib/chevre/service/task/onResourceUpdated/onResourceDeleted.js +7 -7
  177. package/lib/chevre/service/task/pay.js +6 -0
  178. package/lib/chevre/service/task/placeOrder.js +9 -10
  179. package/lib/chevre/service/task/returnOrder.js +0 -3
  180. package/lib/chevre/service/task/returnPayTransaction.js +1 -1
  181. package/lib/chevre/service/task/returnReserveTransaction.js +3 -2
  182. package/lib/chevre/service/task/sendOrder.js +8 -4
  183. package/lib/chevre/service/task/useReservation.js +1 -1
  184. package/lib/chevre/service/task/voidReserveTransaction.js +8 -12
  185. package/lib/chevre/service/transaction/deleteTransaction.js +1 -1
  186. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.js +2 -18
  187. package/lib/chevre/service/transaction/moneyTransfer.js +7 -6
  188. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.d.ts +2 -2
  189. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +17 -20
  190. package/lib/chevre/service/transaction/placeOrder.js +2 -1
  191. package/lib/chevre/service/transaction/placeOrderInProgress/confirm.d.ts +51 -0
  192. package/lib/chevre/service/transaction/placeOrderInProgress/confirm.js +268 -0
  193. package/lib/chevre/service/transaction/placeOrderInProgress/factory.d.ts +1 -1
  194. package/lib/chevre/service/transaction/placeOrderInProgress/factory.js +3 -2
  195. package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions/moneyTransfer.js +1 -1
  196. package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions.js +22 -44
  197. package/lib/chevre/service/transaction/placeOrderInProgress/publishCode.d.ts +14 -0
  198. package/lib/chevre/service/transaction/placeOrderInProgress/publishCode.js +41 -0
  199. package/lib/chevre/service/transaction/placeOrderInProgress/publishConfirmationNumberIfNotExist.d.ts +18 -0
  200. package/lib/chevre/service/transaction/placeOrderInProgress/publishConfirmationNumberIfNotExist.js +42 -0
  201. package/lib/chevre/service/transaction/placeOrderInProgress/publishOrderNumberIfNotExist.d.ts +23 -0
  202. package/lib/chevre/service/transaction/placeOrderInProgress/publishOrderNumberIfNotExist.js +46 -0
  203. package/lib/chevre/service/transaction/placeOrderInProgress/result/acceptedOffers.js +34 -37
  204. package/lib/chevre/service/transaction/placeOrderInProgress/result.d.ts +3 -1
  205. package/lib/chevre/service/transaction/placeOrderInProgress/result.js +13 -4
  206. package/lib/chevre/service/transaction/placeOrderInProgress/start.d.ts +19 -0
  207. package/lib/chevre/service/transaction/placeOrderInProgress/start.js +46 -0
  208. package/lib/chevre/service/transaction/placeOrderInProgress/validation/validateStartRequest.d.ts +26 -0
  209. package/lib/chevre/service/transaction/placeOrderInProgress/validation/validateStartRequest.js +109 -0
  210. package/lib/chevre/service/transaction/placeOrderInProgress/validation.d.ts +10 -23
  211. package/lib/chevre/service/transaction/placeOrderInProgress/validation.js +20 -1
  212. package/lib/chevre/service/transaction/placeOrderInProgress.d.ts +11 -73
  213. package/lib/chevre/service/transaction/placeOrderInProgress.js +13 -286
  214. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPointAward.js +1 -2
  215. package/lib/chevre/service/transaction/returnOrder/potentialActions.d.ts +0 -1
  216. package/lib/chevre/service/transaction/returnOrder/potentialActions.js +8 -3
  217. package/lib/chevre/service/transaction/returnOrder/preStart.js +78 -50
  218. package/lib/chevre/service/transaction/returnOrder.js +3 -10
  219. package/lib/chevre/service.js +0 -10
  220. package/lib/chevre/settings.d.ts +7 -3
  221. package/lib/chevre/settings.js +13 -4
  222. package/package.json +5 -9
  223. package/example/src/chevre/cleanAccountingReports.ts +0 -57
  224. package/example/src/chevre/migratePayTransactionPaymentMethodIdentifier.ts +0 -78
  225. package/lib/chevre/service/transaction/placeOrderInProgress/validation/validateSeller.d.ts +0 -11
  226. package/lib/chevre/service/transaction/placeOrderInProgress/validation/validateSeller.js +0 -30
  227. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnMoneyTransfer.d.ts +0 -7
  228. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnMoneyTransfer.js +0 -82
  229. package/lib/chevre/service/util.d.ts +0 -19
  230. package/lib/chevre/service/util.js +0 -126
@@ -16,6 +16,7 @@ const accountTransactionIdentifier_1 = require("../../factory/accountTransaction
16
16
  const availableProductTypes_1 = require("../../factory/availableProductTypes");
17
17
  const RegisterServiceTransaction = require("../assetTransaction/registerService");
18
18
  const placeOrderInProgress_1 = require("../transaction/placeOrderInProgress");
19
+ const any_1 = require("./any");
19
20
  const factory_1 = require("./product/factory");
20
21
  const searchProductOffers_1 = require("./product/searchProductOffers");
21
22
  exports.ERROR_MESSAGE_ALREADY_REGISTERED = 'Already registered';
@@ -121,6 +122,7 @@ function authorize(params) {
121
122
  acceptedOffer = yield createServiceOutputIdentifier({ acceptedOffer, product })(repos);
122
123
  let requestBody;
123
124
  let responseBody;
125
+ let result;
124
126
  // まず取引番号発行
125
127
  const { transactionNumber } = yield repos.transactionNumber.publishByTimestamp({
126
128
  startDate: new Date()
@@ -134,14 +136,8 @@ function authorize(params) {
134
136
  const action = yield repos.action.start(actionAttributes);
135
137
  try {
136
138
  // 会員の場合のみ排他ロック
137
- if (params.agent.typeOf === factory.personType.Person) {
138
- // 廃止(2023-12-07~)
139
- // await processLockRegisterMembershipService({
140
- // agent: params.agent,
141
- // product: product,
142
- // purpose: { typeOf: transaction.typeOf, id: transaction.id }
143
- // })(repos);
144
- }
139
+ // if (params.agent.typeOf === factory.personType.Person) {
140
+ // }
145
141
  // サービス登録開始
146
142
  const startParams = (0, factory_1.createRegisterServiceStartParams)({
147
143
  project: { typeOf: factory.organizationType.Project, id: params.project.id },
@@ -151,7 +147,12 @@ function authorize(params) {
151
147
  });
152
148
  requestBody = startParams;
153
149
  responseBody = yield RegisterServiceTransaction.start(startParams)(repos);
154
- // responseBody = await repos.registerServiceTransaction.start(startParams);
150
+ result = (0, factory_1.createResult)({ project: action.project, requestBody, responseBody, acceptedOffer });
151
+ yield (0, any_1.acceptOffer)({
152
+ project: transaction.project,
153
+ purpose: { id: transaction.id },
154
+ acceptedOffers: result.acceptedOffers
155
+ })(repos);
155
156
  }
156
157
  catch (error) {
157
158
  try {
@@ -160,21 +161,8 @@ function authorize(params) {
160
161
  catch (__) {
161
162
  // no op
162
163
  }
163
- try {
164
- // 廃止(2023-12-07~)
165
- // await processUnlockRegisterMembershipService({
166
- // agent: params.agent,
167
- // product: { id: String(product.id) },
168
- // purpose: { typeOf: transaction.typeOf, id: transaction.id }
169
- // })(repos);
170
- }
171
- catch (error) {
172
- // 失敗したら仕方ない
173
- }
174
164
  throw error;
175
165
  }
176
- // アクションを完了
177
- const result = (0, factory_1.createResult)({ project: action.project, requestBody, responseBody, acceptedOffer });
178
166
  return yield repos.action.complete({ typeOf: action.typeOf, id: action.id, result: result });
179
167
  });
180
168
  }
@@ -247,7 +235,7 @@ function voidTransaction(params) {
247
235
  // purpose: params.purpose
248
236
  // })(repos);
249
237
  }
250
- yield repos.action.cancel({ typeOf: action.typeOf, id: action.id });
238
+ yield repos.action.cancelWithVoid({ typeOf: action.typeOf, id: action.id });
251
239
  yield processVoidRegisterServiceTransaction({
252
240
  action,
253
241
  project: params.project
@@ -8,7 +8,9 @@ import type { MongoRepository as OrderRepo } from '../../repo/order';
8
8
  import type { MongoRepository as ProjectRepo } from '../../repo/project';
9
9
  import type { MongoRepository as TaskRepo } from '../../repo/task';
10
10
  import type { MongoRepository as TransactionRepo } from '../../repo/transaction';
11
- declare function confirmPayTransaction(data: factory.task.IData<factory.taskName.ConfirmPayTransaction>): (repos: {
11
+ declare function confirmPayTransaction(data: factory.task.IData<factory.taskName.ConfirmPayTransaction>, options: {
12
+ minimizePotentialActions: boolean;
13
+ }): (repos: {
12
14
  acceptedOffer: AcceptedOfferRepo;
13
15
  action: ActionRepo;
14
16
  assetTransaction: AssetTransactionRepo;
@@ -12,7 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.confirmPayTransaction = void 0;
13
13
  const factory = require("../../factory");
14
14
  const PayTransactionService = require("../assetTransaction/pay");
15
- function confirmPayTransaction(data) {
15
+ function confirmPayTransaction(data, options) {
16
16
  return (repos) => __awaiter(this, void 0, void 0, function* () {
17
17
  var _a, _b;
18
18
  // アクション開始
@@ -27,7 +27,7 @@ function confirmPayTransaction(data) {
27
27
  orderNumber: data.purpose.orderNumber
28
28
  }
29
29
  }
30
- } }, (typeof ((_b = (_a = confirmingTransaction.object) === null || _a === void 0 ? void 0 : _a.paymentMethod) === null || _b === void 0 ? void 0 : _b.identifier) === 'string')
30
+ }, options }, (typeof ((_b = (_a = confirmingTransaction.object) === null || _a === void 0 ? void 0 : _a.paymentMethod) === null || _b === void 0 ? void 0 : _b.identifier) === 'string')
31
31
  ? { object: { paymentMethod: { identifier: confirmingTransaction.object.paymentMethod.identifier } } }
32
32
  : undefined))({
33
33
  acceptedOffer: repos.acceptedOffer,
@@ -36,7 +36,7 @@ function confirmPayTransaction(data) {
36
36
  assetTransaction: repos.assetTransaction,
37
37
  event: repos.event,
38
38
  order: repos.order,
39
- project: repos.project,
39
+ // project: repos.project,
40
40
  task: repos.task
41
41
  });
42
42
  }
@@ -52,7 +52,7 @@ function confirmPayTransaction(data) {
52
52
  }
53
53
  // アクション完了
54
54
  const actionResult = {};
55
- yield repos.action.complete({ typeOf: action.typeOf, id: action.id, result: actionResult });
55
+ yield repos.action.completeWithVoid({ typeOf: action.typeOf, id: action.id, result: actionResult });
56
56
  // processOrder連携(2023-08-23~)
57
57
  yield onConfirmed(data)({
58
58
  task: repos.task
@@ -74,7 +74,7 @@ function onConfirmed(params) {
74
74
  purpose: {
75
75
  confirmationNumber: params.purpose.confirmationNumber,
76
76
  orderNumber: params.purpose.orderNumber,
77
- typeOf: 'Order'
77
+ typeOf: factory.order.OrderType.Order
78
78
  },
79
79
  useOnOrderStatusChanged: params.useOnOrderStatusChanged === true
80
80
  };
@@ -21,7 +21,7 @@ function createAccountingReportIfNotExist(params) {
21
21
  project: { id: params.project.id }
22
22
  });
23
23
  // 経理レポートを保管
24
- yield repos.accountingReport.createIfNotExist(accountingReport);
24
+ yield repos.accountingReport.syncMainEntity(accountingReport);
25
25
  });
26
26
  }
27
27
  exports.createAccountingReportIfNotExist = createAccountingReportIfNotExist;
@@ -24,4 +24,15 @@ declare function paymentDue2Processing(params: {
24
24
  task: TaskRepo;
25
25
  transaction: TransactionRepo;
26
26
  }) => Promise<void>;
27
- export { onAssetTransactionStatusChanged, paymentDue2Processing };
27
+ declare function processing2inTransit(params: {
28
+ project: {
29
+ id: string;
30
+ };
31
+ orderNumber: string;
32
+ useOnOrderStatusChanged: boolean;
33
+ }): (repos: {
34
+ order: OrderRepo;
35
+ task: TaskRepo;
36
+ transaction: TransactionRepo;
37
+ }) => Promise<void>;
38
+ export { onAssetTransactionStatusChanged, paymentDue2Processing, processing2inTransit };
@@ -9,11 +9,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.paymentDue2Processing = exports.onAssetTransactionStatusChanged = void 0;
12
+ exports.processing2inTransit = exports.paymentDue2Processing = exports.onAssetTransactionStatusChanged = void 0;
13
+ const createDebug = require("debug");
13
14
  const findPlaceOrderTransaction_1 = require("./findPlaceOrderTransaction");
14
15
  const onOrderStatusChanged_1 = require("./onOrderStatusChanged");
15
16
  const factory = require("../../factory");
17
+ const debug = createDebug('chevre-domain:service:order');
16
18
  function onAssetTransactionStatusChanged(params) {
19
+ // tslint:disable-next-line:cyclomatic-complexity max-func-body-length
17
20
  return (repos) => __awaiter(this, void 0, void 0, function* () {
18
21
  var _a, _b, _c, _d, _e;
19
22
  if (typeof params.useOnOrderStatusChanged !== 'boolean') {
@@ -21,10 +24,10 @@ function onAssetTransactionStatusChanged(params) {
21
24
  }
22
25
  switch (params.object.status) {
23
26
  case factory.transactionStatusType.Confirmed:
27
+ const orderNumber = (_a = params.purpose) === null || _a === void 0 ? void 0 : _a.orderNumber;
28
+ const confirmationNumber = (_b = params.purpose) === null || _b === void 0 ? void 0 : _b.confirmationNumber;
24
29
  switch (params.object.typeOf) {
25
30
  case factory.assetTransactionType.Pay:
26
- const orderNumber = (_a = params.purpose) === null || _a === void 0 ? void 0 : _a.orderNumber;
27
- const confirmationNumber = (_b = params.purpose) === null || _b === void 0 ? void 0 : _b.confirmationNumber;
28
31
  // 確定時の決済方法区分指定(2023-08-29~)
29
32
  const specifiedPaymentMethodIdentifire = (_e = (_d = (_c = params.object) === null || _c === void 0 ? void 0 : _c.object) === null || _d === void 0 ? void 0 : _d.paymentMethod) === null || _e === void 0 ? void 0 : _e.identifier;
30
33
  if (typeof specifiedPaymentMethodIdentifire === 'string' && specifiedPaymentMethodIdentifire.length > 0) {
@@ -48,6 +51,72 @@ function onAssetTransactionStatusChanged(params) {
48
51
  }
49
52
  }
50
53
  break;
54
+ case 'COAReserveTransaction':
55
+ if (typeof orderNumber === 'string' && typeof confirmationNumber === 'string') {
56
+ // 基本的に1注文に1予約番号なのでdeliverable = true
57
+ const deliverable = true;
58
+ if (deliverable) {
59
+ yield processing2inTransit({
60
+ project: { id: params.project.id },
61
+ // confirmationNumber,
62
+ orderNumber,
63
+ useOnOrderStatusChanged: params.useOnOrderStatusChanged
64
+ })(repos);
65
+ }
66
+ }
67
+ break;
68
+ case factory.assetTransactionType.Reserve:
69
+ if (typeof orderNumber === 'string' && typeof confirmationNumber === 'string') {
70
+ // ReserveTransactionのステータス検証
71
+ const deliverable = yield isDeliverable({
72
+ project: { id: params.project.id },
73
+ orderNumber,
74
+ assetTransactionType: params.object.typeOf
75
+ })(repos);
76
+ if (deliverable) {
77
+ yield processing2inTransit({
78
+ project: { id: params.project.id },
79
+ // confirmationNumber,
80
+ orderNumber,
81
+ useOnOrderStatusChanged: params.useOnOrderStatusChanged
82
+ })(repos);
83
+ }
84
+ }
85
+ break;
86
+ case factory.assetTransactionType.MoneyTransfer:
87
+ if (typeof orderNumber === 'string' && typeof confirmationNumber === 'string') {
88
+ const deliverable = yield isDeliverable({
89
+ project: { id: params.project.id },
90
+ orderNumber,
91
+ assetTransactionType: params.object.typeOf
92
+ })(repos);
93
+ if (deliverable) {
94
+ yield processing2inTransit({
95
+ project: { id: params.project.id },
96
+ // confirmationNumber,
97
+ orderNumber,
98
+ useOnOrderStatusChanged: params.useOnOrderStatusChanged
99
+ })(repos);
100
+ }
101
+ }
102
+ break;
103
+ case factory.assetTransactionType.RegisterService:
104
+ if (typeof orderNumber === 'string' && typeof confirmationNumber === 'string') {
105
+ const deliverable = yield isDeliverable({
106
+ project: { id: params.project.id },
107
+ orderNumber,
108
+ assetTransactionType: params.object.typeOf
109
+ })(repos);
110
+ if (deliverable) {
111
+ yield processing2inTransit({
112
+ project: { id: params.project.id },
113
+ // confirmationNumber,
114
+ orderNumber,
115
+ useOnOrderStatusChanged: params.useOnOrderStatusChanged
116
+ })(repos);
117
+ }
118
+ }
119
+ break;
51
120
  default:
52
121
  // no op
53
122
  }
@@ -150,14 +219,15 @@ function paymentDue2Processing(params) {
150
219
  }
151
220
  catch (error) {
152
221
  let throwsError = true;
153
- // すでにステータスが煤でいた場合、OrderPaymentDue->OrderProcessingの処理自体は成功しているので、後処理を続行する
222
+ // すでにステータスが進行していた場合、OrderPaymentDue->OrderProcessingの処理自体は成功しているので、後処理を続行する
154
223
  order = yield repos.order.findByOrderNumber({
155
224
  orderNumber: params.orderNumber,
156
225
  project: { id: params.project.id },
157
226
  inclusion: [],
158
227
  exclusion: ['acceptedOffers']
159
228
  });
160
- if (order.orderStatus === factory.orderStatus.OrderDelivered
229
+ if (order.orderStatus === factory.orderStatus.OrderInTransit
230
+ || order.orderStatus === factory.orderStatus.OrderDelivered
161
231
  || order.orderStatus === factory.orderStatus.OrderReturned) {
162
232
  throwsError = false;
163
233
  }
@@ -167,12 +237,27 @@ function paymentDue2Processing(params) {
167
237
  }
168
238
  if (params.useOnOrderStatusChanged) {
169
239
  // 全acceptedOffersを検索(2023-12-08~)
170
- const acceptedOffers = yield repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
240
+ // const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber(
241
+ // {
242
+ // orderNumber: { $eq: order.orderNumber },
243
+ // project: { id: { $eq: params.project.id } }
244
+ // },
245
+ // ['itemOffered', 'offeredThrough']
246
+ // );
247
+ const { numAcceptedOffers } = yield repos.acceptedOffer.countByOrderNumber({
171
248
  orderNumber: { $eq: order.orderNumber },
172
249
  project: { id: { $eq: params.project.id } }
173
250
  });
251
+ const itemOfferedTypeOfs = yield repos.acceptedOffer.distinctValues({ orderNumber: { $in: [params.orderNumber] } }, 'acceptedOffers.itemOffered.typeOf');
252
+ const serialNumbers = yield repos.acceptedOffer.distinctValues({ orderNumber: { $in: [params.orderNumber] } }, 'acceptedOffers.serialNumber');
253
+ const offeredThroughIdentifier = (yield repos.acceptedOffer.distinctValues({ orderNumber: { $in: [params.orderNumber] } }, 'acceptedOffers.offeredThrough.identifier')).shift();
254
+ debug('onAssetTransactionStatusChanged paymentDue2Processing: calling onOrderProcessing...', 'numAcceptedOffers:', numAcceptedOffers, 'itemOfferedTypeOfs:', itemOfferedTypeOfs, 'serialNumbers:', serialNumbers, 'offeredThroughIdentifier:', offeredThroughIdentifier);
174
255
  yield (0, onOrderStatusChanged_1.onOrderProcessing)({
175
- order: Object.assign(Object.assign({}, order), { acceptedOffers, orderStatus: factory.orderStatus.OrderProcessing // 強制的にOrderProcessingとして処理する
256
+ order: Object.assign(Object.assign({}, order), {
257
+ // acceptedOffers,
258
+ numAcceptedOffers, itemOfferedTypeOf: itemOfferedTypeOfs[0], // 1つしかない前提
259
+ serialNumbers,
260
+ offeredThroughIdentifier, orderStatus: factory.orderStatus.OrderProcessing // 強制的にOrderProcessingとして処理する
176
261
  }),
177
262
  placeOrderTransaction
178
263
  })({
@@ -230,3 +315,117 @@ function cancelOrderIfExist(params) {
230
315
  }
231
316
  });
232
317
  }
318
+ function isDeliverable(params) {
319
+ return (repos) => __awaiter(this, void 0, void 0, function* () {
320
+ let allReserveTransactionConfirmed = false;
321
+ let allMoneyTransferTransactionConfirmed = false;
322
+ let allRegisterServiceTransactionConfirmed = false;
323
+ if (params.assetTransactionType === factory.assetTransactionType.Reserve) {
324
+ allMoneyTransferTransactionConfirmed = true;
325
+ allRegisterServiceTransactionConfirmed = true;
326
+ // 注文のreservationNumberを取得
327
+ const reservationNumbers = yield repos.acceptedOffer.distinctValues({ orderNumber: { $in: [params.orderNumber] } }, 'acceptedOffers.itemOffered.reservationNumber');
328
+ if (reservationNumbers.length > 0) {
329
+ const referencedReserveTransactions = yield repos.assetTransaction.search({
330
+ project: { id: { $eq: params.project.id } },
331
+ typeOf: factory.assetTransactionType.Reserve,
332
+ transactionNumber: { $in: reservationNumbers }
333
+ }, ['status']);
334
+ allReserveTransactionConfirmed =
335
+ referencedReserveTransactions.length === reservationNumbers.length
336
+ && referencedReserveTransactions.every(({ status }) => status === factory.transactionStatusType.Confirmed);
337
+ }
338
+ else {
339
+ allReserveTransactionConfirmed = true;
340
+ }
341
+ }
342
+ else if (params.assetTransactionType === factory.assetTransactionType.MoneyTransfer) {
343
+ allReserveTransactionConfirmed = true;
344
+ allRegisterServiceTransactionConfirmed = true;
345
+ // 注文のMoneyTransferTransaction.transactionNumberを取得
346
+ const moneyTransferTransactionNumbers = yield repos.acceptedOffer.distinctValues({ orderNumber: { $in: [params.orderNumber] } }, 'acceptedOffers.serialNumber');
347
+ if (moneyTransferTransactionNumbers.length > 0) {
348
+ debug('is deliverable?...', params.orderNumber, 'moneyTransferTransactionNumbers:', moneyTransferTransactionNumbers);
349
+ const referencedMoneyTransferTransactions = yield repos.assetTransaction.search({
350
+ project: { id: { $eq: params.project.id } },
351
+ typeOf: factory.assetTransactionType.MoneyTransfer,
352
+ transactionNumber: { $in: moneyTransferTransactionNumbers }
353
+ }, ['status']);
354
+ allMoneyTransferTransactionConfirmed =
355
+ referencedMoneyTransferTransactions.length === moneyTransferTransactionNumbers.length
356
+ && referencedMoneyTransferTransactions.every(({ status }) => status === factory.transactionStatusType.Confirmed);
357
+ }
358
+ else {
359
+ allMoneyTransferTransactionConfirmed = true;
360
+ }
361
+ }
362
+ else if (params.assetTransactionType === factory.assetTransactionType.RegisterService) {
363
+ allReserveTransactionConfirmed = true;
364
+ allMoneyTransferTransactionConfirmed = true;
365
+ const registerServiceTransactionNumbers = yield repos.acceptedOffer.distinctValues({ orderNumber: { $in: [params.orderNumber] } }, 'acceptedOffers.serialNumber');
366
+ if (registerServiceTransactionNumbers.length > 0) {
367
+ const referencedRegisterServiceTransactions = yield repos.assetTransaction.search({
368
+ project: { id: { $eq: params.project.id } },
369
+ typeOf: factory.assetTransactionType.RegisterService,
370
+ transactionNumber: { $in: registerServiceTransactionNumbers }
371
+ }, ['status']);
372
+ allRegisterServiceTransactionConfirmed =
373
+ referencedRegisterServiceTransactions.length === registerServiceTransactionNumbers.length
374
+ && referencedRegisterServiceTransactions.every(({ status }) => status === factory.transactionStatusType.Confirmed);
375
+ }
376
+ else {
377
+ allRegisterServiceTransactionConfirmed = true;
378
+ }
379
+ }
380
+ return allReserveTransactionConfirmed && allMoneyTransferTransactionConfirmed && allRegisterServiceTransactionConfirmed;
381
+ });
382
+ }
383
+ function processing2inTransit(params) {
384
+ return (repos) => __awaiter(this, void 0, void 0, function* () {
385
+ // const placeOrderTransaction = await findPlaceOrderTransaction({
386
+ // project: { id: params.project.id },
387
+ // confirmationNumber: params.confirmationNumber,
388
+ // orderNumber: params.orderNumber
389
+ // })({ transaction: repos.transaction });
390
+ let order = yield repos.order.findByOrderNumber({
391
+ orderNumber: params.orderNumber,
392
+ project: { id: params.project.id },
393
+ inclusion: [],
394
+ exclusion: ['acceptedOffers']
395
+ });
396
+ try {
397
+ order = yield repos.order.changeStatus({
398
+ project: { id: order.project.id },
399
+ orderNumber: params.orderNumber,
400
+ orderStatus: factory.orderStatus.OrderInTransit,
401
+ previousOrderStatus: factory.orderStatus.OrderProcessing
402
+ });
403
+ }
404
+ catch (error) {
405
+ let throwsError = true;
406
+ // すでにステータスが進行していた場合、OrderProcessing->OrderInTransitの処理自体は成功しているので、後処理を続行する
407
+ order = yield repos.order.findByOrderNumber({
408
+ orderNumber: params.orderNumber,
409
+ project: { id: params.project.id },
410
+ inclusion: [],
411
+ exclusion: ['acceptedOffers']
412
+ });
413
+ if (order.orderStatus === factory.orderStatus.OrderDelivered
414
+ || order.orderStatus === factory.orderStatus.OrderReturned) {
415
+ throwsError = false;
416
+ }
417
+ if (throwsError) {
418
+ throw error;
419
+ }
420
+ }
421
+ if (params.useOnOrderStatusChanged) {
422
+ yield (0, onOrderStatusChanged_1.onOrderInTransit)({
423
+ order: Object.assign(Object.assign({}, order), { orderStatus: factory.orderStatus.OrderInTransit })
424
+ })({
425
+ task: repos.task,
426
+ transaction: repos.transaction
427
+ });
428
+ }
429
+ });
430
+ }
431
+ exports.processing2inTransit = processing2inTransit;
@@ -7,5 +7,5 @@ import * as factory from '../../../../factory';
7
7
  */
8
8
  declare function createOnOrderCancelledTasksByTransaction(params: {
9
9
  transaction?: Pick<factory.transaction.placeOrder.ITransaction, 'id' | 'project' | 'typeOf'>;
10
- }): (import("@chevre/factory/lib/task").IAttributes | import("@chevre/factory/lib/task/confirmMoneyTransfer").IAttributes | import("@chevre/factory/lib/task/confirmRegisterService").IAttributes | import("@chevre/factory/lib/task/confirmPayTransaction").IAttributes | import("@chevre/factory/lib/task/confirmRegisterServiceTransaction").IAttributes | import("@chevre/factory/lib/task/confirmReserveTransaction").IAttributes | import("@chevre/factory/lib/task/createEvent").IAttributes | import("@chevre/factory/lib/task/deleteTransaction").IAttributes | import("@chevre/factory/lib/task/givePointAward").IAttributes | import("@chevre/factory/lib/task/onAssetTransactionStatusChanged").IAttributes | import("@chevre/factory/lib/task/onAuthorizationCreated").IAttributes | import("@chevre/factory/lib/task/onEventChanged").IAttributes | import("@chevre/factory/lib/task/onResourceUpdated").IAttributes | import("@chevre/factory/lib/task/onOrderPaymentCompleted").IAttributes | import("@chevre/factory/lib/task/placeOrder").IAttributes | import("@chevre/factory/lib/task/returnOrder").IAttributes | import("@chevre/factory/lib/task/returnMoneyTransfer").IAttributes | import("@chevre/factory/lib/task/returnPayTransaction").IAttributes | import("@chevre/factory/lib/task/returnPointAward").IAttributes | import("@chevre/factory/lib/task/returnReserveTransaction").IAttributes | import("@chevre/factory/lib/task/sendEmailMessage").IAttributes | import("@chevre/factory/lib/task/sendOrder").IAttributes | import("@chevre/factory/lib/task/syncScreeningRooms").IAttributes | import("@chevre/factory/lib/task/triggerWebhook").IAttributes | import("@chevre/factory/lib/task/useReservation").IAttributes | import("@chevre/factory/lib/task/voidMoneyTransferTransaction").IAttributes | import("@chevre/factory/lib/task/voidPayTransaction").IAttributes | import("@chevre/factory/lib/task/voidRegisterServiceTransaction").IAttributes | import("@chevre/factory/lib/task/voidReserveTransaction").IAttributes)[];
10
+ }): (import("@chevre/factory/lib/task").IAttributes | import("@chevre/factory/lib/task/confirmMoneyTransfer").IAttributes | import("@chevre/factory/lib/task/confirmRegisterService").IAttributes | import("@chevre/factory/lib/task/confirmPayTransaction").IAttributes | import("@chevre/factory/lib/task/confirmRegisterServiceTransaction").IAttributes | import("@chevre/factory/lib/task/confirmReserveTransaction").IAttributes | import("@chevre/factory/lib/task/createAccountingReport").IAttributes | import("@chevre/factory/lib/task/createEvent").IAttributes | import("@chevre/factory/lib/task/deleteTransaction").IAttributes | import("@chevre/factory/lib/task/givePointAward").IAttributes | import("@chevre/factory/lib/task/onAssetTransactionStatusChanged").IAttributes | import("@chevre/factory/lib/task/onAuthorizationCreated").IAttributes | import("@chevre/factory/lib/task/onEventChanged").IAttributes | import("@chevre/factory/lib/task/onResourceUpdated").IAttributes | import("@chevre/factory/lib/task/onOrderPaymentCompleted").IAttributes | import("@chevre/factory/lib/task/placeOrder").IAttributes | import("@chevre/factory/lib/task/returnOrder").IAttributes | import("@chevre/factory/lib/task/returnMoneyTransfer").IAttributes | import("@chevre/factory/lib/task/returnPayTransaction").IAttributes | import("@chevre/factory/lib/task/returnPointAward").IAttributes | import("@chevre/factory/lib/task/returnReserveTransaction").IAttributes | import("@chevre/factory/lib/task/sendEmailMessage").IAttributes | import("@chevre/factory/lib/task/sendOrder").IAttributes | import("@chevre/factory/lib/task/triggerWebhook").IAttributes | import("@chevre/factory/lib/task/useReservation").IAttributes | import("@chevre/factory/lib/task/voidMoneyTransferTransaction").IAttributes | import("@chevre/factory/lib/task/voidPayTransaction").IAttributes | import("@chevre/factory/lib/task/voidRegisterServiceTransaction").IAttributes | import("@chevre/factory/lib/task/voidReserveTransaction").IAttributes)[];
11
11
  export { createOnOrderCancelledTasksByTransaction };
@@ -8,5 +8,5 @@ declare function createInformTasks(order: IDeliveredOrder): factory.task.IAttrib
8
8
  */
9
9
  declare function createOnOrderSentTasksByTransaction(params: {
10
10
  potentialActions?: factory.action.transfer.send.order.IPotentialActions;
11
- }): (import("@chevre/factory/lib/task").IAttributes | import("@chevre/factory/lib/task/confirmMoneyTransfer").IAttributes | import("@chevre/factory/lib/task/confirmRegisterService").IAttributes | import("@chevre/factory/lib/task/confirmPayTransaction").IAttributes | import("@chevre/factory/lib/task/confirmRegisterServiceTransaction").IAttributes | import("@chevre/factory/lib/task/confirmReserveTransaction").IAttributes | import("@chevre/factory/lib/task/createEvent").IAttributes | import("@chevre/factory/lib/task/deleteTransaction").IAttributes | import("@chevre/factory/lib/task/givePointAward").IAttributes | import("@chevre/factory/lib/task/onAssetTransactionStatusChanged").IAttributes | import("@chevre/factory/lib/task/onAuthorizationCreated").IAttributes | import("@chevre/factory/lib/task/onEventChanged").IAttributes | import("@chevre/factory/lib/task/onResourceUpdated").IAttributes | import("@chevre/factory/lib/task/onOrderPaymentCompleted").IAttributes | import("@chevre/factory/lib/task/placeOrder").IAttributes | import("@chevre/factory/lib/task/returnOrder").IAttributes | import("@chevre/factory/lib/task/returnMoneyTransfer").IAttributes | import("@chevre/factory/lib/task/returnPayTransaction").IAttributes | import("@chevre/factory/lib/task/returnPointAward").IAttributes | import("@chevre/factory/lib/task/returnReserveTransaction").IAttributes | import("@chevre/factory/lib/task/sendEmailMessage").IAttributes | import("@chevre/factory/lib/task/sendOrder").IAttributes | import("@chevre/factory/lib/task/syncScreeningRooms").IAttributes | import("@chevre/factory/lib/task/triggerWebhook").IAttributes | import("@chevre/factory/lib/task/useReservation").IAttributes | import("@chevre/factory/lib/task/voidMoneyTransferTransaction").IAttributes | import("@chevre/factory/lib/task/voidPayTransaction").IAttributes | import("@chevre/factory/lib/task/voidRegisterServiceTransaction").IAttributes | import("@chevre/factory/lib/task/voidReserveTransaction").IAttributes)[];
11
+ }): (import("@chevre/factory/lib/task").IAttributes | import("@chevre/factory/lib/task/confirmMoneyTransfer").IAttributes | import("@chevre/factory/lib/task/confirmRegisterService").IAttributes | import("@chevre/factory/lib/task/confirmPayTransaction").IAttributes | import("@chevre/factory/lib/task/confirmRegisterServiceTransaction").IAttributes | import("@chevre/factory/lib/task/confirmReserveTransaction").IAttributes | import("@chevre/factory/lib/task/createAccountingReport").IAttributes | import("@chevre/factory/lib/task/createEvent").IAttributes | import("@chevre/factory/lib/task/deleteTransaction").IAttributes | import("@chevre/factory/lib/task/givePointAward").IAttributes | import("@chevre/factory/lib/task/onAssetTransactionStatusChanged").IAttributes | import("@chevre/factory/lib/task/onAuthorizationCreated").IAttributes | import("@chevre/factory/lib/task/onEventChanged").IAttributes | import("@chevre/factory/lib/task/onResourceUpdated").IAttributes | import("@chevre/factory/lib/task/onOrderPaymentCompleted").IAttributes | import("@chevre/factory/lib/task/placeOrder").IAttributes | import("@chevre/factory/lib/task/returnOrder").IAttributes | import("@chevre/factory/lib/task/returnMoneyTransfer").IAttributes | import("@chevre/factory/lib/task/returnPayTransaction").IAttributes | import("@chevre/factory/lib/task/returnPointAward").IAttributes | import("@chevre/factory/lib/task/returnReserveTransaction").IAttributes | import("@chevre/factory/lib/task/sendEmailMessage").IAttributes | import("@chevre/factory/lib/task/sendOrder").IAttributes | import("@chevre/factory/lib/task/triggerWebhook").IAttributes | import("@chevre/factory/lib/task/useReservation").IAttributes | import("@chevre/factory/lib/task/voidMoneyTransferTransaction").IAttributes | import("@chevre/factory/lib/task/voidPayTransaction").IAttributes | import("@chevre/factory/lib/task/voidRegisterServiceTransaction").IAttributes | import("@chevre/factory/lib/task/voidReserveTransaction").IAttributes)[];
12
12
  export { createInformTasks, createOnOrderSentTasksByTransaction };
@@ -50,61 +50,59 @@ function creteOrder4inform(order) {
50
50
  */
51
51
  function createOnOrderSentTasksByTransaction(params) {
52
52
  const potentialActions = params.potentialActions;
53
- const now = new Date();
53
+ // const now = new Date();
54
54
  const taskAttributes = [];
55
- // tslint:disable-next-line:no-single-line-block-comment
56
- /* istanbul ignore else */
57
55
  if (potentialActions !== undefined) {
58
- if (Array.isArray(potentialActions.registerService)) {
59
- taskAttributes.push(...potentialActions.registerService.map((a) => {
60
- return {
61
- project: a.project,
62
- name: factory.taskName.ConfirmRegisterService,
63
- status: factory.taskStatus.Ready,
64
- runsAt: now,
65
- remainingNumberOfTries: 10,
66
- numberOfTried: 0,
67
- executionResults: [],
68
- data: a
69
- };
70
- }));
71
- }
72
- // 通貨転送
73
- // tslint:disable-next-line:no-single-line-block-comment
74
- /* istanbul ignore else */
75
- if (Array.isArray(potentialActions.moneyTransfer)) {
76
- taskAttributes.push(...potentialActions.moneyTransfer.map((a) => {
77
- return {
78
- project: a.project,
79
- name: factory.taskName.ConfirmMoneyTransfer,
80
- status: factory.taskStatus.Ready,
81
- runsAt: now,
82
- remainingNumberOfTries: 10,
83
- numberOfTried: 0,
84
- executionResults: [],
85
- data: a
86
- };
87
- }));
88
- }
89
- // tslint:disable-next-line:no-single-line-block-comment
90
- /* istanbul ignore else */
91
- if (Array.isArray(potentialActions.sendEmailMessage)) {
92
- potentialActions.sendEmailMessage.forEach((s) => {
93
- const sendEmailMessageTask = {
94
- project: s.project,
95
- name: factory.taskName.SendEmailMessage,
96
- status: factory.taskStatus.Ready,
97
- runsAt: now,
98
- remainingNumberOfTries: 3,
99
- numberOfTried: 0,
100
- executionResults: [],
101
- data: {
102
- actionAttributes: s
103
- }
104
- };
105
- taskAttributes.push(sendEmailMessageTask);
106
- });
107
- }
56
+ // サービス登録廃止(2024-01-30~)
57
+ // if (Array.isArray(potentialActions.registerService)) {
58
+ // taskAttributes.push(...potentialActions.registerService.map(
59
+ // (a): factory.task.IAttributes<factory.taskName.ConfirmRegisterService> => {
60
+ // return {
61
+ // project: a.project,
62
+ // name: factory.taskName.ConfirmRegisterService,
63
+ // status: factory.taskStatus.Ready,
64
+ // runsAt: now, // なるはやで実行
65
+ // remainingNumberOfTries: 10,
66
+ // numberOfTried: 0,
67
+ // executionResults: [],
68
+ // data: a
69
+ // };
70
+ // }));
71
+ // }
72
+ // 通貨転送廃止(2024-01-29~)
73
+ // if (Array.isArray(potentialActions.moneyTransfer)) {
74
+ // taskAttributes.push(...potentialActions.moneyTransfer.map(
75
+ // (a): factory.task.IAttributes<factory.taskName.ConfirmMoneyTransfer> => {
76
+ // return {
77
+ // project: a.project,
78
+ // name: <factory.taskName.ConfirmMoneyTransfer>factory.taskName.ConfirmMoneyTransfer,
79
+ // status: factory.taskStatus.Ready,
80
+ // runsAt: now, // なるはやで実行
81
+ // remainingNumberOfTries: 10,
82
+ // numberOfTried: 0,
83
+ // executionResults: [],
84
+ // data: a
85
+ // };
86
+ // }));
87
+ // }
88
+ // createSendEmailMessageTaskIfNotExistへ移行(2024-01-12~)
89
+ // if (Array.isArray(potentialActions.sendEmailMessage)) {
90
+ // potentialActions.sendEmailMessage.forEach((s) => {
91
+ // const sendEmailMessageTask: factory.task.IAttributes<factory.taskName.SendEmailMessage> = {
92
+ // project: s.project,
93
+ // name: factory.taskName.SendEmailMessage,
94
+ // status: factory.taskStatus.Ready,
95
+ // runsAt: now, // なるはやで実行
96
+ // remainingNumberOfTries: 3,
97
+ // numberOfTried: 0,
98
+ // executionResults: [],
99
+ // data: {
100
+ // actionAttributes: s
101
+ // }
102
+ // };
103
+ // taskAttributes.push(sendEmailMessageTask);
104
+ // });
105
+ // }
108
106
  }
109
107
  return taskAttributes;
110
108
  }
@@ -1,5 +1,5 @@
1
- import type { MongoRepository as TaskRepo } from '../../../repo/task';
2
1
  import * as factory from '../../../factory';
2
+ import type { MongoRepository as TaskRepo } from '../../../repo/task';
3
3
  type IPlaceOrderTransaction = Pick<factory.transaction.placeOrder.ITransaction, 'id' | 'project' | 'typeOf' | 'potentialActions'>;
4
4
  declare function onOrderDelivered(params: {
5
5
  order: Pick<factory.order.IOrder, 'id' | 'customer' | 'orderDate' | 'orderNumber' | 'project' | 'typeOf'> & {