@chevre/domain 21.8.0-alpha.6 → 21.8.0-alpha.60

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 (129) hide show
  1. package/example/src/chevre/countOffers.ts +32 -0
  2. package/example/src/chevre/findItemListElementByCatalogId.ts +23 -0
  3. package/example/src/chevre/importOffersFromCOA.ts +7 -1
  4. package/example/src/chevre/migrateAggregateOffers.ts +89 -0
  5. package/example/src/chevre/migrateOrderPaymentMethodIdentifier.ts +81 -0
  6. package/example/src/chevre/migratePayTransactionPaymentMethodId.ts +72 -0
  7. package/example/src/chevre/migratePayTransactionPaymentMethodIdentifier.ts +78 -0
  8. package/example/src/chevre/processPay.ts +3 -4
  9. package/example/src/chevre/publishPermitOwnershipInfoToken.ts +56 -0
  10. package/example/src/chevre/pullAddOnsFromOffer.ts +26 -0
  11. package/example/src/chevre/searchAggregateOffers.ts +48 -0
  12. package/example/src/chevre/searchEventTicketOffers.ts +3 -1
  13. package/example/src/chevre/searchEvents.ts +9 -7
  14. package/example/src/chevre/searchOffersByCatalog.ts +9 -5
  15. package/example/src/chevre/searchOffersFromAggregateOffer.ts +168 -0
  16. package/example/src/chevre/searchOrders.ts +9 -7
  17. package/example/src/chevre/sync2aggregateOffer.ts +27 -0
  18. package/example/src/chevre/syncAggregateOffer.ts +25 -0
  19. package/lib/chevre/emailMessageBuilder.js +6 -5
  20. package/lib/chevre/repo/aggregateOffer.d.ts +62 -0
  21. package/lib/chevre/repo/aggregateOffer.js +534 -0
  22. package/lib/chevre/repo/assetTransaction.d.ts +16 -1
  23. package/lib/chevre/repo/assetTransaction.js +54 -2
  24. package/lib/chevre/repo/mongoose/schemas/aggregateOffer.d.ts +74 -0
  25. package/lib/chevre/repo/mongoose/schemas/aggregateOffer.js +177 -0
  26. package/lib/chevre/repo/mongoose/schemas/authorization.d.ts +3 -3
  27. package/lib/chevre/repo/mongoose/schemas/creativeWork.d.ts +3 -3
  28. package/lib/chevre/repo/mongoose/schemas/event.d.ts +3 -3
  29. package/lib/chevre/repo/mongoose/schemas/offer.d.ts +24 -33
  30. package/lib/chevre/repo/mongoose/schemas/offer.js +4 -3
  31. package/lib/chevre/repo/mongoose/schemas/order.d.ts +3 -0
  32. package/lib/chevre/repo/mongoose/schemas/order.js +7 -0
  33. package/lib/chevre/repo/mongoose/schemas/priceSpecification.d.ts +9 -9
  34. package/lib/chevre/repo/mongoose/schemas/product.d.ts +3 -3
  35. package/lib/chevre/repo/mongoose/schemas/project.d.ts +3 -3
  36. package/lib/chevre/repo/mongoose/schemas/task.d.ts +3 -0
  37. package/lib/chevre/repo/mongoose/schemas/task.js +8 -0
  38. package/lib/chevre/repo/offer.d.ts +82 -47
  39. package/lib/chevre/repo/offer.js +1279 -289
  40. package/lib/chevre/repo/offerCatalog.d.ts +6 -0
  41. package/lib/chevre/repo/offerCatalog.js +13 -0
  42. package/lib/chevre/repo/order.d.ts +15 -0
  43. package/lib/chevre/repo/order.js +58 -26
  44. package/lib/chevre/repo/task.d.ts +7 -1
  45. package/lib/chevre/repo/task.js +100 -0
  46. package/lib/chevre/repository.d.ts +3 -0
  47. package/lib/chevre/repository.js +5 -1
  48. package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +2 -1
  49. package/lib/chevre/service/aggregation/event/aggregateUseActionsOnEvent.js +2 -1
  50. package/lib/chevre/service/assetTransaction/pay/account/validation.js +2 -2
  51. package/lib/chevre/service/assetTransaction/pay/factory.js +26 -18
  52. package/lib/chevre/service/assetTransaction/pay/potentialActions.js +3 -3
  53. package/lib/chevre/service/assetTransaction/pay.js +65 -46
  54. package/lib/chevre/service/assetTransaction/refund/factory.js +8 -2
  55. package/lib/chevre/service/assetTransaction/registerService.js +2 -1
  56. package/lib/chevre/service/assetTransaction/reserve.js +111 -35
  57. package/lib/chevre/service/delivery.js +17 -0
  58. package/lib/chevre/service/offer/event/authorize.js +39 -35
  59. package/lib/chevre/service/offer/event/factory.d.ts +1 -1
  60. package/lib/chevre/service/offer/event/factory.js +8 -8
  61. package/lib/chevre/service/offer/event/importFromCOA.d.ts +2 -0
  62. package/lib/chevre/service/offer/event/searchEventTicketOffers.d.ts +1 -0
  63. package/lib/chevre/service/offer/event/searchEventTicketOffers.js +6 -3
  64. package/lib/chevre/service/offer/event/voidTransaction.js +57 -36
  65. package/lib/chevre/service/offer/eventServiceByCOA/factory.d.ts +2 -1
  66. package/lib/chevre/service/offer/eventServiceByCOA/factory.js +7 -11
  67. package/lib/chevre/service/offer/eventServiceByCOA.js +55 -27
  68. package/lib/chevre/service/offer/factory.d.ts +12 -4
  69. package/lib/chevre/service/offer/factory.js +9 -11
  70. package/lib/chevre/service/offer/product/searchProductOffers.d.ts +8 -1
  71. package/lib/chevre/service/offer/product/searchProductOffers.js +10 -3
  72. package/lib/chevre/service/offer/product.d.ts +1 -0
  73. package/lib/chevre/service/offer/product.js +3 -2
  74. package/lib/chevre/service/offer.d.ts +1 -0
  75. package/lib/chevre/service/offer.js +7 -1
  76. package/lib/chevre/service/order/confirmPayTransaction.d.ts +0 -2
  77. package/lib/chevre/service/order/confirmPayTransaction.js +29 -40
  78. package/lib/chevre/service/order/onAssetTransactionStatusChanged.d.ts +27 -0
  79. package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +226 -0
  80. package/lib/chevre/service/order/onOrderStatusChanged/factory.d.ts +8 -6
  81. package/lib/chevre/service/order/onOrderStatusChanged/factory.js +80 -57
  82. package/lib/chevre/service/order/onOrderStatusChanged.js +81 -54
  83. package/lib/chevre/service/order/payOrder.d.ts +2 -10
  84. package/lib/chevre/service/order/payOrder.js +4 -45
  85. package/lib/chevre/service/order/placeOrder.js +11 -13
  86. package/lib/chevre/service/order.d.ts +3 -1
  87. package/lib/chevre/service/order.js +6 -2
  88. package/lib/chevre/service/payment/any/factory.js +33 -8
  89. package/lib/chevre/service/payment/any.js +30 -21
  90. package/lib/chevre/service/payment/creditCard.js +12 -12
  91. package/lib/chevre/service/payment/movieTicket/validation.js +2 -2
  92. package/lib/chevre/service/payment/movieTicket.js +10 -11
  93. package/lib/chevre/service/payment/paymentCard.js +9 -12
  94. package/lib/chevre/service/project.js +1 -1
  95. package/lib/chevre/service/reserve/checkInReservation.d.ts +8 -0
  96. package/lib/chevre/service/reserve/checkInReservation.js +3 -2
  97. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.d.ts +3 -0
  98. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +4 -5
  99. package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.d.ts +8 -0
  100. package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +16 -11
  101. package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +2 -1
  102. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.d.ts +3 -0
  103. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +3 -5
  104. package/lib/chevre/service/task/confirmPayTransaction.js +1 -3
  105. package/lib/chevre/service/task/importOffersFromCOA.js +3 -0
  106. package/lib/chevre/service/task/onAssetTransactionStatusChanged.d.ts +6 -0
  107. package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +37 -0
  108. package/lib/chevre/service/task/onAuthorizationCreated.js +5 -1
  109. package/lib/chevre/service/task/onOrderPaymentCompleted.d.ts +6 -0
  110. package/lib/chevre/service/task/onOrderPaymentCompleted.js +35 -0
  111. package/lib/chevre/service/task/onResourceUpdated/onResourceDeleted.d.ts +2 -0
  112. package/lib/chevre/service/task/onResourceUpdated/onResourceDeleted.js +7 -0
  113. package/lib/chevre/service/task/onResourceUpdated/syncOfferCatalog.d.ts +17 -0
  114. package/lib/chevre/service/task/onResourceUpdated/syncOfferCatalog.js +60 -0
  115. package/lib/chevre/service/task/onResourceUpdated.js +12 -0
  116. package/lib/chevre/service/task/returnPayTransaction.js +8 -3
  117. package/lib/chevre/service/task/syncAggregateOffer.d.ts +7 -0
  118. package/lib/chevre/service/task/syncAggregateOffer.js +23 -0
  119. package/lib/chevre/service/transaction/placeOrderInProgress/result.js +32 -16
  120. package/lib/chevre/service/transaction/placeOrderInProgress/validation/validateMovieTicket.js +13 -11
  121. package/lib/chevre/service/transaction/placeOrderInProgress/validation.js +53 -17
  122. package/lib/chevre/service/transaction/placeOrderInProgress.js +4 -1
  123. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +7 -6
  124. package/lib/chevre/service/transaction/returnOrder.js +5 -1
  125. package/lib/chevre/settings.d.ts +5 -3
  126. package/lib/chevre/settings.js +6 -6
  127. package/package.json +3 -3
  128. package/example/src/chevre/migrateAuthorizePaymentActionResult.ts +0 -83
  129. package/example/src/chevre/migrateEventOrganizer.ts +0 -154
@@ -13,17 +13,20 @@ exports.onOrderStatusChanged = void 0;
13
13
  /**
14
14
  * 注文ステータス変更時処理
15
15
  */
16
+ const createDebug = require("debug");
16
17
  const google_libphonenumber_1 = require("google-libphonenumber");
17
18
  const factory = require("../../factory");
18
19
  const order_1 = require("../../factory/order");
19
20
  const product_1 = require("../offer/product");
20
21
  const factory_1 = require("./onOrderStatusChanged/factory");
22
+ const debug = createDebug('chevre-domain:service:order');
21
23
  const USE_CONFIRM_REGISTER_SERVICE_TRANSACTION = process.env.USE_CONFIRM_REGISTER_SERVICE_TRANSACTION === '1';
22
24
  const TOKEN_EXPIRES_IN = 604800;
23
25
  function onOrderStatusChanged(params) {
24
26
  // tslint:disable-next-line:max-func-body-length
25
27
  return (repos) => __awaiter(this, void 0, void 0, function* () {
26
28
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
29
+ debug('onOrderStatusChanged called.', params.order.orderNumber, params.order.orderStatus, params.order.orderDate);
27
30
  let tasks = [];
28
31
  const maskedCustomer = (0, order_1.createMaskedCustomer)(params.order, { noProfile: true });
29
32
  const simpleOrder = {
@@ -87,21 +90,23 @@ function onOrderStatusChanged(params) {
87
90
  tasks = [
88
91
  // 注文作成時のみトークン付加
89
92
  ...(0, factory_1.createInformTasks)(orderWithToken),
90
- ...yield createConfirmPayTransactionTasks(params.order, simpleOrder)(repos),
91
- ...yield createConfirmReserveTransactionTasks(params.order, simpleOrder)(repos),
92
- ...yield createConfirmRegisterServiceTransactionTasks(params.order, simpleOrder)(repos),
93
+ // 決済取引確定タスク作成はOrderPaymentDueへ完全移行(2023-08-26~)
94
+ // ...await createConfirmPayTransactionTasks(params.order, simpleOrder)(repos),
95
+ // createConfirmReserveTransactionTasksIfNotExistへ移行(2023-08-25~)
96
+ // ...await createConfirmReserveTransactionTasks(params.order, simpleOrder)(repos),
97
+ ...yield createConfirmRegisterServiceTransactionTasks(params.order, simpleOrder)(repos)
93
98
  // 取引のpotentialActionsを適用(2023-08-17~)
94
- ...(0, factory_1.createOnPlaceOrderTasksByTransaction)({
95
- object: params.order,
96
- // potentialActions: params.potentialActions
97
- potentialActions: (_h = (_g = (_f = params.placeOrderTransaction) === null || _f === void 0 ? void 0 : _f.potentialActions) === null || _g === void 0 ? void 0 : _g.order) === null || _h === void 0 ? void 0 : _h.potentialActions
98
- })
99
+ // createGivePointAwardTaskIfNotExistへ移行(2023-09-01~)
100
+ // ...createOnPlaceOrderTasksByTransaction({
101
+ // object: params.order,
102
+ // potentialActions: params.placeOrderTransaction?.potentialActions?.order?.potentialActions
103
+ // })
99
104
  ];
100
105
  break;
101
106
  case factory.orderStatus.OrderReturned:
102
- const potentialActionsByTransaction = (_m = (_l = (_k = (_j = params.returnOrderTransaction) === null || _j === void 0 ? void 0 : _j.potentialActions) === null || _k === void 0 ? void 0 : _k.returnOrder) === null || _l === void 0 ? void 0 : _l.find((returnOrderActionByTransaction) => {
107
+ const potentialActionsByTransaction = (_j = (_h = (_g = (_f = params.returnOrderTransaction) === null || _f === void 0 ? void 0 : _f.potentialActions) === null || _g === void 0 ? void 0 : _g.returnOrder) === null || _h === void 0 ? void 0 : _h.find((returnOrderActionByTransaction) => {
103
108
  return returnOrderActionByTransaction.object.orderNumber === params.order.orderNumber;
104
- })) === null || _m === void 0 ? void 0 : _m.potentialActions;
109
+ })) === null || _j === void 0 ? void 0 : _j.potentialActions;
105
110
  tasks = [
106
111
  ...(0, factory_1.createInformTasks)(params.order),
107
112
  ...createReturnReserveTransactionTasks(params.order, simpleOrder),
@@ -111,14 +116,26 @@ function onOrderStatusChanged(params) {
111
116
  ...(0, factory_1.createOnOrderReturnedTasksByTransaction)({ potentialActions: potentialActionsByTransaction })
112
117
  ];
113
118
  break;
119
+ // OrderCancelled追加(2023-08-30~)
120
+ case factory.orderStatus.OrderCancelled:
121
+ // 注文取引中止時と同様の処理か
122
+ tasks = [
123
+ ...(0, factory_1.createOnOrderCancelledTasksByTransaction)({ transaction: params.placeOrderTransaction })
124
+ ];
125
+ break;
114
126
  default:
115
127
  }
116
128
  yield repos.task.saveMany(tasks, { emitImmediately: true });
117
129
  switch (params.order.orderStatus) {
118
130
  case factory.orderStatus.OrderProcessing:
119
- // 冗長なsendOrderタスク作成を回避(2023-08-24~)
131
+ // 冗長なconfirmReserveTransactionタスク作成を回避(2023-08-25~)
132
+ yield createConfirmReserveTransactionTasksIfNotExist(params.order, simpleOrder)(repos);
133
+ // 冗長なsendOrderタスク作成を回避(2023-08-25~)
120
134
  yield createSendOrderTransactionTaskIfNotExist({
121
135
  object: params.order,
136
+ potentialActions: (_m = (_l = (_k = params.placeOrderTransaction) === null || _k === void 0 ? void 0 : _k.potentialActions) === null || _l === void 0 ? void 0 : _l.order) === null || _m === void 0 ? void 0 : _m.potentialActions
137
+ })(repos);
138
+ yield createGivePointAwardTaskIfNotExist({
122
139
  potentialActions: (_q = (_p = (_o = params.placeOrderTransaction) === null || _o === void 0 ? void 0 : _o.potentialActions) === null || _p === void 0 ? void 0 : _p.order) === null || _q === void 0 ? void 0 : _q.potentialActions
123
140
  })(repos);
124
141
  break;
@@ -180,7 +197,7 @@ function createConfirmPayTransactionTasks(order, simpleOrder) {
180
197
  });
181
198
  }
182
199
  // const COA_TASK_DELAY_IN_SECONDS = 0;
183
- function createConfirmReserveTransactionTasks(order, simpleOrder) {
200
+ function createConfirmReserveTransactionTasksIfNotExist(order, simpleOrder) {
184
201
  return (repos) => __awaiter(this, void 0, void 0, function* () {
185
202
  const taskRunsAt = new Date();
186
203
  const taskRunsAt4coa = new Date();
@@ -191,51 +208,32 @@ function createConfirmReserveTransactionTasks(order, simpleOrder) {
191
208
  ...(0, factory_1.createConfirmReservationActionObject4ChevreByOrder)({ order }),
192
209
  ...(0, factory_1.createConfirmReservationActionObject4COAByOrder)({ order })
193
210
  ];
194
- const tasks = [];
195
211
  yield Promise.all(confirmObjects.map((confirmObject) => __awaiter(this, void 0, void 0, function* () {
196
- // 冗長なタスク作成を回避
197
- const existingTasks = yield repos.task.search({
198
- limit: 1,
199
- page: 1,
200
- project: { id: { $eq: order.project.id } },
201
- name: factory.taskName.ConfirmReserveTransaction,
202
- data: {
203
- object: { transactionNumber: { $eq: confirmObject.transactionNumber } },
204
- purpose: { orderNumber: { $eq: order.orderNumber } }
212
+ const data = {
213
+ project: order.project,
214
+ typeOf: factory.actionType.ConfirmAction,
215
+ object: confirmObject,
216
+ agent: order.project,
217
+ purpose: simpleOrder,
218
+ instrument: {
219
+ typeOf: 'WebAPI',
220
+ identifier: (confirmObject.typeOf === 'COAReserveTransaction')
221
+ ? factory.service.webAPI.Identifier.COA
222
+ : factory.service.webAPI.Identifier.Chevre
205
223
  }
206
- }, {
207
- data: 0, executionResults: 0, name: 0, numberOfTried: 0,
208
- remainingNumberOfTries: 0, runsAt: 0, status: 0
209
- });
210
- if (existingTasks.length === 0) {
211
- const data = {
212
- project: order.project,
213
- typeOf: factory.actionType.ConfirmAction,
214
- object: confirmObject,
215
- agent: order.project,
216
- purpose: simpleOrder,
217
- instrument: {
218
- typeOf: 'WebAPI',
219
- identifier: (confirmObject.typeOf === 'COAReserveTransaction')
220
- ? factory.service.webAPI.Identifier.COA
221
- : factory.service.webAPI.Identifier.Chevre
222
- }
223
- };
224
- tasks.push({
225
- project: order.project,
226
- name: factory.taskName.ConfirmReserveTransaction,
227
- status: factory.taskStatus.Ready,
228
- runsAt: (confirmObject.typeOf === 'COAReserveTransaction')
229
- ? taskRunsAt4coa
230
- : taskRunsAt,
231
- remainingNumberOfTries: 10,
232
- numberOfTried: 0,
233
- executionResults: [],
234
- data
235
- });
236
- }
224
+ };
225
+ const confirmReserveTransactionTask = {
226
+ project: order.project,
227
+ name: factory.taskName.ConfirmReserveTransaction,
228
+ status: factory.taskStatus.Ready,
229
+ runsAt: (confirmObject.typeOf === 'COAReserveTransaction') ? taskRunsAt4coa : taskRunsAt,
230
+ remainingNumberOfTries: 10,
231
+ numberOfTried: 0,
232
+ executionResults: [],
233
+ data
234
+ };
235
+ yield repos.task.createConfirmReserveTransactionTaskIfNotExist(confirmReserveTransactionTask, { emitImmediately: true });
237
236
  })));
238
- return tasks;
239
237
  });
240
238
  }
241
239
  function createConfirmRegisterServiceTransactionTasks(order, simpleOrder) {
@@ -314,6 +312,35 @@ function createSendOrderTransactionTaskIfNotExist(params) {
314
312
  }
315
313
  });
316
314
  }
315
+ function createGivePointAwardTaskIfNotExist(params) {
316
+ return (repos) => __awaiter(this, void 0, void 0, function* () {
317
+ var _a;
318
+ const now = new Date();
319
+ const givePointAwardsByTransaction = (_a = params.potentialActions) === null || _a === void 0 ? void 0 : _a.givePointAward;
320
+ if (Array.isArray(givePointAwardsByTransaction)) {
321
+ for (const givePointAwardByTransaction of givePointAwardsByTransaction) {
322
+ let taskIdentifier = `${givePointAwardByTransaction.project.id}:${factory.taskName.GivePointAward}:${Date.now()}`;
323
+ if (typeof givePointAwardByTransaction.object.identifier === 'string'
324
+ && givePointAwardByTransaction.object.identifier.length > 0) {
325
+ taskIdentifier = `${givePointAwardByTransaction.project.id}:${factory.taskName.GivePointAward}:${givePointAwardByTransaction.object.identifier}`;
326
+ }
327
+ const givePointAwardTask = {
328
+ identifier: taskIdentifier,
329
+ project: givePointAwardByTransaction.project,
330
+ name: factory.taskName.GivePointAward,
331
+ status: factory.taskStatus.Ready,
332
+ runsAt: now,
333
+ remainingNumberOfTries: 10,
334
+ numberOfTried: 0,
335
+ executionResults: [],
336
+ data: givePointAwardByTransaction
337
+ };
338
+ // 冗長なgivePointAwardタスク作成を回避(2023-09-01~)
339
+ yield repos.task.createIfNotExistByIdentifier(givePointAwardTask, { emitImmediately: true });
340
+ }
341
+ }
342
+ });
343
+ }
317
344
  // const RETURN_COA_TASK_DELAY_IN_SECONDS = 0;
318
345
  function createReturnReserveTransactionTasks(order, simpleOrder) {
319
346
  var _a, _b;
@@ -2,19 +2,11 @@ import { RedisRepository as RegisterServiceInProgressRepo } from '../../repo/act
2
2
  import { MongoRepository as OrderRepo } from '../../repo/order';
3
3
  import { MongoRepository as TaskRepo } from '../../repo/task';
4
4
  import { MongoRepository as TransactionRepo } from '../../repo/transaction';
5
+ import * as factory from '../../factory';
5
6
  /**
6
7
  * 注文を決済する
7
8
  */
8
- declare function payOrder(params: {
9
- project: {
10
- id: string;
11
- };
12
- object: {
13
- confirmationNumber: string;
14
- orderNumber: string;
15
- };
16
- useOnOrderStatusChanged: boolean;
17
- }): (repos: {
9
+ declare function payOrder(params: factory.task.IData<factory.taskName.OnOrderPaymentCompleted>): (repos: {
18
10
  order: OrderRepo;
19
11
  registerActionInProgress: RegisterServiceInProgressRepo;
20
12
  task: TaskRepo;
@@ -10,8 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.payOrder = void 0;
13
- const findPlaceOrderTransaction_1 = require("./findPlaceOrderTransaction");
14
- const onOrderStatusChanged_1 = require("./onOrderStatusChanged");
13
+ const onAssetTransactionStatusChanged_1 = require("./onAssetTransactionStatusChanged");
15
14
  const factory = require("../../factory");
16
15
  /**
17
16
  * 注文を決済する
@@ -23,52 +22,12 @@ function payOrder(params) {
23
22
  }
24
23
  const orderNumber = params.object.orderNumber;
25
24
  const confirmationNumber = params.object.confirmationNumber;
26
- const placeOrderTransaction = yield (0, findPlaceOrderTransaction_1.findPlaceOrderTransaction)({
25
+ yield (0, onAssetTransactionStatusChanged_1.paymentDue2Processing)({
27
26
  project: { id: params.project.id },
28
27
  confirmationNumber,
29
- orderNumber
30
- })({ transaction: repos.transaction });
31
- let order = yield repos.order.findByOrderNumber({
32
28
  orderNumber,
33
- project: { id: params.project.id },
34
- inclusion: [],
35
- exclusion: []
36
- });
37
- try {
38
- order = yield repos.order.changeStatus({
39
- project: { id: order.project.id },
40
- orderNumber,
41
- orderStatus: factory.orderStatus.OrderProcessing,
42
- previousOrderStatus: factory.orderStatus.OrderPaymentDue
43
- });
44
- }
45
- catch (error) {
46
- let throwsError = true;
47
- // すでにステータスが煤でいた場合、OrderPaymentDue->OrderProcessingの処理自体は成功しているので、後処理を続行する
48
- order = yield repos.order.findByOrderNumber({
49
- orderNumber: params.object.orderNumber,
50
- project: { id: params.project.id },
51
- inclusion: [],
52
- exclusion: []
53
- });
54
- if (order.orderStatus === factory.orderStatus.OrderDelivered
55
- || order.orderStatus === factory.orderStatus.OrderReturned) {
56
- throwsError = false;
57
- }
58
- if (throwsError) {
59
- throw error;
60
- }
61
- }
62
- if (params.useOnOrderStatusChanged) {
63
- yield (0, onOrderStatusChanged_1.onOrderStatusChanged)({
64
- order: Object.assign(Object.assign({}, order), { orderStatus: factory.orderStatus.OrderProcessing // 強制的にOrderProcessingとして処理する
65
- }),
66
- placeOrderTransaction
67
- })({
68
- registerActionInProgress: repos.registerActionInProgress,
69
- task: repos.task
70
- });
71
- }
29
+ useOnOrderStatusChanged: params.useOnOrderStatusChanged
30
+ })(repos);
72
31
  });
73
32
  }
74
33
  exports.payOrder = payOrder;
@@ -14,8 +14,8 @@ const moment = require("moment");
14
14
  const order_1 = require("../../factory/order");
15
15
  const createAccountingReportIfNotExist_1 = require("./createAccountingReportIfNotExist");
16
16
  const findPlaceOrderTransaction_1 = require("./findPlaceOrderTransaction");
17
+ const onAssetTransactionStatusChanged_1 = require("./onAssetTransactionStatusChanged");
17
18
  const onOrderStatusChanged_1 = require("./onOrderStatusChanged");
18
- const payOrder_1 = require("./payOrder");
19
19
  const factory = require("../../factory");
20
20
  function createOrder(params) {
21
21
  // 必要な属性についてDate型に変換(でないと検索クエリを効率的に使えない)
@@ -241,22 +241,20 @@ function placeOrder(params) {
241
241
  registerActionInProgress: repos.registerActionInProgress,
242
242
  task: repos.task
243
243
  });
244
- // paymentMethods.length: 0の場合を考慮(2023-08-24~)
245
- if (order.paymentMethods.length === 0) {
246
- // paymentMethods.length: 0の場合に、confirmPayTransactionは実行されないので、ここで強制的にpayOrderを実行する必要がある
247
- yield (0, payOrder_1.payOrder)({
248
- project: { id: order.project.id },
249
- object: {
250
- confirmationNumber: order.confirmationNumber,
251
- orderNumber: order.orderNumber
252
- },
253
- useOnOrderStatusChanged: params.useOnOrderStatusChanged
254
- })(repos);
255
- }
256
244
  }
257
245
  else {
258
246
  throw new factory.errors.NotImplemented(`placing an order on the status '${order.orderStatus}' not implemented`);
259
247
  }
248
+ // paymentMethods.length: 0の場合を考慮(2023-08-24~)
249
+ if (order.paymentMethods.length === 0) {
250
+ // paymentMethods.length: 0の場合に、confirmPayTransactionは実行されないので、ここで強制的にpaymentDue2Processingを実行する必要がある
251
+ yield (0, onAssetTransactionStatusChanged_1.paymentDue2Processing)({
252
+ project: { id: order.project.id },
253
+ confirmationNumber: order.confirmationNumber,
254
+ orderNumber: order.orderNumber,
255
+ useOnOrderStatusChanged: params.useOnOrderStatusChanged === true
256
+ })(repos);
257
+ }
260
258
  }
261
259
  // onOrderStatusChangedへ移行(2023-08-17~)
262
260
  // await onPlaceOrder({
@@ -3,8 +3,10 @@
3
3
  */
4
4
  import { confirmPayTransaction } from './order/confirmPayTransaction';
5
5
  import { deleteOrder } from './order/deleteOrder';
6
+ import { onAssetTransactionStatusChanged, paymentDue2Processing } from './order/onAssetTransactionStatusChanged';
6
7
  import { onOrderStatusChanged } from './order/onOrderStatusChanged';
7
8
  import { onOrderUpdated } from './order/onOrderUpdated';
9
+ import { payOrder } from './order/payOrder';
8
10
  import { placeOrder, placeOrderWithoutTransaction } from './order/placeOrder';
9
11
  import { sendOrder } from './order/sendOrder';
10
- export { confirmPayTransaction, deleteOrder, onOrderStatusChanged, onOrderUpdated, placeOrder, placeOrderWithoutTransaction, sendOrder };
12
+ export { confirmPayTransaction, deleteOrder, onAssetTransactionStatusChanged, onOrderStatusChanged, onOrderUpdated, paymentDue2Processing, payOrder, placeOrder, placeOrderWithoutTransaction, sendOrder };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sendOrder = exports.placeOrderWithoutTransaction = exports.placeOrder = exports.onOrderUpdated = exports.onOrderStatusChanged = exports.deleteOrder = exports.confirmPayTransaction = void 0;
3
+ exports.sendOrder = exports.placeOrderWithoutTransaction = exports.placeOrder = exports.payOrder = exports.paymentDue2Processing = exports.onOrderUpdated = exports.onOrderStatusChanged = exports.onAssetTransactionStatusChanged = exports.deleteOrder = exports.confirmPayTransaction = void 0;
4
4
  /**
5
5
  * 注文サービス
6
6
  */
@@ -8,13 +8,17 @@ const confirmPayTransaction_1 = require("./order/confirmPayTransaction");
8
8
  Object.defineProperty(exports, "confirmPayTransaction", { enumerable: true, get: function () { return confirmPayTransaction_1.confirmPayTransaction; } });
9
9
  const deleteOrder_1 = require("./order/deleteOrder");
10
10
  Object.defineProperty(exports, "deleteOrder", { enumerable: true, get: function () { return deleteOrder_1.deleteOrder; } });
11
+ const onAssetTransactionStatusChanged_1 = require("./order/onAssetTransactionStatusChanged");
12
+ Object.defineProperty(exports, "onAssetTransactionStatusChanged", { enumerable: true, get: function () { return onAssetTransactionStatusChanged_1.onAssetTransactionStatusChanged; } });
13
+ Object.defineProperty(exports, "paymentDue2Processing", { enumerable: true, get: function () { return onAssetTransactionStatusChanged_1.paymentDue2Processing; } });
11
14
  const onOrderStatusChanged_1 = require("./order/onOrderStatusChanged");
12
15
  Object.defineProperty(exports, "onOrderStatusChanged", { enumerable: true, get: function () { return onOrderStatusChanged_1.onOrderStatusChanged; } });
13
16
  const onOrderUpdated_1 = require("./order/onOrderUpdated");
14
17
  Object.defineProperty(exports, "onOrderUpdated", { enumerable: true, get: function () { return onOrderUpdated_1.onOrderUpdated; } });
18
+ const payOrder_1 = require("./order/payOrder");
19
+ Object.defineProperty(exports, "payOrder", { enumerable: true, get: function () { return payOrder_1.payOrder; } });
15
20
  const placeOrder_1 = require("./order/placeOrder");
16
21
  Object.defineProperty(exports, "placeOrder", { enumerable: true, get: function () { return placeOrder_1.placeOrder; } });
17
22
  Object.defineProperty(exports, "placeOrderWithoutTransaction", { enumerable: true, get: function () { return placeOrder_1.placeOrderWithoutTransaction; } });
18
- // import { returnOrder } from './order/returnOrder';
19
23
  const sendOrder_1 = require("./order/sendOrder");
20
24
  Object.defineProperty(exports, "sendOrder", { enumerable: true, get: function () { return sendOrder_1.sendOrder; } });
@@ -3,11 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.optimizeAction4inform = exports.createAuthorizeResult = exports.creatPayTransactionStartParams = void 0;
4
4
  const moment = require("moment");
5
5
  const factory = require("../../../factory");
6
+ const settings_1 = require("../../../settings");
6
7
  function creatPayTransactionStartParams(params) {
7
8
  var _a, _b, _c, _d;
8
- const expires = moment(params.transaction.expires)
9
+ let expires = moment(params.transaction.expires)
9
10
  .add(1, 'month')
10
11
  .toDate(); // 余裕を持って
12
+ // 実験的にPaymentDueに対応(2023-08-30~)
13
+ if (params.paymentServiceType === factory.service.paymentService.PaymentServiceType.FaceToFace) {
14
+ if (params.object.paymentMethod.length === 0) {
15
+ expires = moment(params.transaction.expires)
16
+ .add(1, 'hour')
17
+ .toDate();
18
+ }
19
+ }
11
20
  const confirmationNumber = params.transaction.object.confirmationNumber;
12
21
  const issuedThroughId = (_a = params.object.issuedThrough) === null || _a === void 0 ? void 0 : _a.id;
13
22
  const accountId = (typeof params.accountId === 'string')
@@ -39,7 +48,9 @@ function creatPayTransactionStartParams(params) {
39
48
  typeOf: params.paymentServiceType,
40
49
  // 決済サービスIDを連携(2022-04-12~)
41
50
  id: issuedThroughId,
42
- paymentMethod: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ typeOf: params.object.paymentMethod, amount: params.object.amount, additionalProperty: (Array.isArray(params.object.additionalProperty)) ? params.object.additionalProperty : [] }, (typeof params.object.method === 'string') ? { method: params.object.method } : undefined), (typeof params.object.name === 'string') ? { name: params.object.name } : undefined), (typeof accountId === 'string') ? { accountId } : undefined), (typeof params.object.description === 'string') ? { description: params.object.description } : undefined), (typeof params.object.fromLocation === 'string') ? { fromLocation: params.object.fromLocation } : undefined), (params.object.creditCard !== undefined) ? { creditCard: params.object.creditCard } : undefined), (Array.isArray(movieTickets)) ? { movieTickets } : undefined)
51
+ paymentMethod: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ identifier: params.object.paymentMethod,
52
+ // typeOf: params.object.paymentMethod, // identifierへ移行(2023-08-30~)
53
+ amount: params.object.amount, additionalProperty: (Array.isArray(params.object.additionalProperty)) ? params.object.additionalProperty : [] }, (typeof params.object.method === 'string') ? { method: params.object.method } : undefined), (typeof params.object.name === 'string') ? { name: params.object.name } : undefined), (typeof accountId === 'string') ? { accountId } : undefined), (typeof params.object.description === 'string') ? { description: params.object.description } : undefined), (typeof params.object.fromLocation === 'string') ? { fromLocation: params.object.fromLocation } : undefined), (params.object.creditCard !== undefined) ? { creditCard: params.object.creditCard } : undefined), (Array.isArray(movieTickets)) ? { movieTickets } : undefined)
43
54
  }, expires: expires }, (typeof confirmationNumber === 'string')
44
55
  ? {
45
56
  purpose: {
@@ -80,7 +91,7 @@ function createMovieTicket(params) {
80
91
  };
81
92
  }
82
93
  function createAuthorizeResult(params) {
83
- var _a, _b, _c, _d, _e, _f, _g;
94
+ var _a, _b, _c, _d, _e, _f;
84
95
  const payTransactionObject = params.payTransaction.object;
85
96
  const totalPaymentDue = (_a = payTransactionObject.paymentMethod) === null || _a === void 0 ? void 0 : _a.totalPaymentDue;
86
97
  if (typeof (totalPaymentDue === null || totalPaymentDue === void 0 ? void 0 : totalPaymentDue.typeOf) !== 'string') {
@@ -98,7 +109,15 @@ function createAuthorizeResult(params) {
98
109
  && typeof paymentMethodAmountCurrencyByPayTransaction === 'string')
99
110
  ? { amount: { currency: paymentMethodAmountCurrencyByPayTransaction } }
100
111
  : undefined);
101
- return {
112
+ // FaceToFaceの場合、決済方法区分未指定に対応(2023-08-29~)
113
+ let paymentStatus = factory.paymentStatusType.PaymentAutomaticallyApplied;
114
+ if (issuedThrough.typeOf === factory.service.paymentService.PaymentServiceType.FaceToFace) {
115
+ if (paymentMethodAsObject.typeOf.length === 0) {
116
+ paymentStatus = factory.paymentStatusType.PaymentDue;
117
+ }
118
+ }
119
+ // Array対応(2023-09-02~)
120
+ const resultAsInvoice = {
102
121
  accountId: (typeof ((_e = payTransactionObject.paymentMethod) === null || _e === void 0 ? void 0 : _e.accountId) === 'string')
103
122
  ? payTransactionObject.paymentMethod.accountId
104
123
  : '',
@@ -108,17 +127,23 @@ function createAuthorizeResult(params) {
108
127
  // 完全廃止(paymentMethodAsObjectへ完全移行)(2023-08-16~)
109
128
  // paymentMethod: params.object.paymentMethod,
110
129
  paymentMethodAsObject,
111
- paymentStatus: factory.paymentStatusType.PaymentAutomaticallyApplied,
112
- paymentMethodId: (typeof ((_f = payTransactionObject.paymentMethod) === null || _f === void 0 ? void 0 : _f.paymentMethodId) === 'string')
113
- ? payTransactionObject.paymentMethod.paymentMethodId
130
+ paymentStatus,
131
+ paymentMethodId: (typeof payTransactionObject.paymentMethodId === 'string')
132
+ ? payTransactionObject.paymentMethodId
114
133
  : '',
115
- name: (typeof ((_g = payTransactionObject.paymentMethod) === null || _g === void 0 ? void 0 : _g.name) === 'string')
134
+ name: (typeof ((_f = payTransactionObject.paymentMethod) === null || _f === void 0 ? void 0 : _f.name) === 'string')
116
135
  ? payTransactionObject.paymentMethod.name
117
136
  : params.object.paymentMethod,
118
137
  totalPaymentDue: totalPaymentDue,
119
138
  additionalProperty: (Array.isArray(params.object.additionalProperty)) ? params.object.additionalProperty : [],
120
139
  typeOf: factory.action.authorize.paymentMethod.any.ResultType.Payment
121
140
  };
141
+ if (settings_1.USE_AUTHORIZE_PAYMENT_RESULT_AS_ARRAY) {
142
+ return [resultAsInvoice];
143
+ }
144
+ else {
145
+ return resultAsInvoice;
146
+ }
122
147
  }
123
148
  exports.createAuthorizeResult = createAuthorizeResult;
124
149
  function payActionObject2invoice(params) {
@@ -104,7 +104,7 @@ exports.invalidatePaymentUrl = invalidatePaymentUrl;
104
104
  function processVoidPayTransaction(params) {
105
105
  // tslint:disable-next-line:max-func-body-length
106
106
  return (repos) => __awaiter(this, void 0, void 0, function* () {
107
- var _a, _b;
107
+ var _a, _b, _c, _d;
108
108
  let transaction;
109
109
  // アクションID指定の場合、進行中取引検証(2023-02-24~)
110
110
  if (typeof params.id === 'string') {
@@ -145,23 +145,27 @@ function processVoidPayTransaction(params) {
145
145
  throw new factory.errors.NotImplemented(`${transaction.status} not implemented`);
146
146
  // 確定取引に対応(2023-05-03~)
147
147
  case factory.transactionStatusType.Confirmed:
148
- // アクションステータスを検証する
149
- authorizeActions = authorizeActions.filter((a) => a.actionStatus !== factory.actionStatusType.CompletedActionStatus);
150
- if (transaction.typeOf === factory.transactionType.PlaceOrder) {
151
- const paymentMethodIds = (_b = (_a = transaction.result) === null || _a === void 0 ? void 0 : _a.order) === null || _b === void 0 ? void 0 : _b.paymentMethods.map((p) => {
152
- return p.paymentMethodId;
153
- });
154
- if (!Array.isArray(paymentMethodIds)) {
155
- throw new factory.errors.Argument('Transaction', `${transaction.id} must have result.order.paymentMethods`);
156
- }
157
- if (paymentMethodIds.length > 0) {
158
- authorizeActions = authorizeActions.filter((a) => {
159
- // paymentMethodIdが存在しない、あるいは、注文のpaymentMethodIdsに含まれなければ、アクション取消対象
160
- const paymentMethodIdByAction = a.object.paymentMethodId;
161
- const includedInOrder = typeof paymentMethodIdByAction === 'string'
162
- && paymentMethodIds.includes(paymentMethodIdByAction);
163
- return !includedInOrder;
148
+ // OrderCancelledを考慮(2023-08-30~)
149
+ const orderCancelled = ((_b = (_a = params.purpose.result) === null || _a === void 0 ? void 0 : _a.order) === null || _b === void 0 ? void 0 : _b.orderStatus) === factory.orderStatus.OrderCancelled;
150
+ if (!orderCancelled) {
151
+ // 取り消すべきアクションに絞る
152
+ authorizeActions = authorizeActions.filter((a) => a.actionStatus !== factory.actionStatusType.CompletedActionStatus);
153
+ if (transaction.typeOf === factory.transactionType.PlaceOrder) {
154
+ const paymentMethodIds = (_d = (_c = transaction.result) === null || _c === void 0 ? void 0 : _c.order) === null || _d === void 0 ? void 0 : _d.paymentMethods.map((p) => {
155
+ return p.paymentMethodId;
164
156
  });
157
+ if (!Array.isArray(paymentMethodIds)) {
158
+ throw new factory.errors.Argument('Transaction', `${transaction.id} must have result.order.paymentMethods`);
159
+ }
160
+ if (paymentMethodIds.length > 0) {
161
+ authorizeActions = authorizeActions.filter((a) => {
162
+ // paymentMethodIdが存在しない、あるいは、注文のpaymentMethodIdsに含まれなければ、アクション取消対象
163
+ const paymentMethodIdByAction = a.object.paymentMethodId;
164
+ const includedInOrder = typeof paymentMethodIdByAction === 'string'
165
+ && paymentMethodIds.includes(paymentMethodIdByAction);
166
+ return !includedInOrder;
167
+ });
168
+ }
165
169
  }
166
170
  }
167
171
  break;
@@ -182,9 +186,14 @@ function processVoidPayTransaction(params) {
182
186
  project: { id: { $eq: action.project.id } },
183
187
  typeOf: factory.assetTransactionType.Pay,
184
188
  transactionNumber: { $eq: transactionNumber }
185
- });
186
- if (payTransactions.length > 0) {
187
- yield PayTransactionService.cancel({ transactionNumber })(repos);
189
+ }, ['_id', 'status']);
190
+ const payTransaction = payTransactions.shift();
191
+ if (payTransaction !== undefined) {
192
+ // ステータス検証(Expiredから実行される可能性がある)
193
+ if (payTransaction.status !== factory.transactionStatusType.Canceled
194
+ && payTransaction.status !== factory.transactionStatusType.Expired) {
195
+ yield PayTransactionService.cancel({ transactionNumber })(repos);
196
+ }
188
197
  }
189
198
  }
190
199
  yield repos.action.cancel({ typeOf: action.typeOf, id: action.id });
@@ -339,7 +348,7 @@ function authorize(params) {
339
348
  if (error.name !== 'AbortError') {
340
349
  yield processVoidPayTransaction({
341
350
  project: action.project,
342
- agent: { id: action.project.id },
351
+ // agent: { id: action.project.id },
343
352
  id: action.id,
344
353
  purpose: action.purpose
345
354
  })(repos);
@@ -34,9 +34,9 @@ function authorize(params, paymentServiceId, searchTrade4accountId) {
34
34
  exclusion: []
35
35
  });
36
36
  // CreditCard系統の決済方法タイプは動的
37
- const paymentMethodType = (_a = params.object.paymentMethod) === null || _a === void 0 ? void 0 : _a.typeOf;
37
+ const paymentMethodType = (_a = params.object.paymentMethod) === null || _a === void 0 ? void 0 : _a.identifier;
38
38
  if (typeof paymentMethodType !== 'string') {
39
- throw new factory.errors.ArgumentNull('object.paymentMethod.typeOf');
39
+ throw new factory.errors.ArgumentNull('object.paymentMethod.identifier');
40
40
  }
41
41
  const availableChannel = yield repos.product.findAvailableChannel({
42
42
  project: params.project,
@@ -205,16 +205,16 @@ function handleAuthorizeError(error) {
205
205
  */
206
206
  function voidTransaction(params) {
207
207
  return (repos) => __awaiter(this, void 0, void 0, function* () {
208
- var _a, _b, _c, _d, _e, _f, _g;
208
+ var _a, _b, _c, _d, _e, _f;
209
209
  const transaction = params.object;
210
210
  // CreditCard系統の決済方法タイプは動的
211
- const paymentMethodType = (_a = transaction.object.paymentMethod) === null || _a === void 0 ? void 0 : _a.typeOf;
211
+ const paymentMethodType = (_a = transaction.object.paymentMethod) === null || _a === void 0 ? void 0 : _a.identifier;
212
212
  if (typeof paymentMethodType !== 'string') {
213
- throw new factory.errors.ArgumentNull('object.paymentMethod.typeOf');
213
+ throw new factory.errors.ArgumentNull('object.paymentMethod.identifier');
214
214
  }
215
- const paymentMethodId = (_b = transaction.object.paymentMethod) === null || _b === void 0 ? void 0 : _b.paymentMethodId;
215
+ const paymentMethodId = transaction.object.paymentMethodId;
216
216
  if (typeof paymentMethodId !== 'string') {
217
- throw new factory.errors.ArgumentNull('object.paymentMethod.paymentMethodId');
217
+ throw new factory.errors.ArgumentNull('object.paymentMethodId');
218
218
  }
219
219
  const paymentServiceId = String(transaction.object.id);
220
220
  const availableChannel = yield repos.product.findAvailableChannel({
@@ -222,7 +222,7 @@ function voidTransaction(params) {
222
222
  typeOf: factory.service.paymentService.PaymentServiceType.CreditCard,
223
223
  id: paymentServiceId
224
224
  });
225
- const sellerId = (_c = transaction.recipient) === null || _c === void 0 ? void 0 : _c.id;
225
+ const sellerId = (_b = transaction.recipient) === null || _b === void 0 ? void 0 : _b.id;
226
226
  if (typeof sellerId !== 'string') {
227
227
  throw new factory.errors.ArgumentNull('object.recipient.id');
228
228
  }
@@ -236,8 +236,8 @@ function voidTransaction(params) {
236
236
  shopId: shopId,
237
237
  shopPass: shopPass,
238
238
  orderId: paymentMethodId,
239
- siteId: (_d = availableChannel.credentials) === null || _d === void 0 ? void 0 : _d.siteId,
240
- sitePass: (_e = availableChannel.credentials) === null || _e === void 0 ? void 0 : _e.sitePass
239
+ siteId: (_c = availableChannel.credentials) === null || _c === void 0 ? void 0 : _c.siteId,
240
+ sitePass: (_d = availableChannel.credentials) === null || _d === void 0 ? void 0 : _d.sitePass
241
241
  });
242
242
  debug('searchTradeResult:', searchTradeResult);
243
243
  // 仮売上であれば取消
@@ -248,8 +248,8 @@ function voidTransaction(params) {
248
248
  accessId: searchTradeResult.accessId,
249
249
  accessPass: searchTradeResult.accessPass,
250
250
  jobCd: GMO.utils.util.JobCd.Void,
251
- siteId: (_f = availableChannel.credentials) === null || _f === void 0 ? void 0 : _f.siteId,
252
- sitePass: (_g = availableChannel.credentials) === null || _g === void 0 ? void 0 : _g.sitePass
251
+ siteId: (_e = availableChannel.credentials) === null || _e === void 0 ? void 0 : _e.siteId,
252
+ sitePass: (_f = availableChannel.credentials) === null || _f === void 0 ? void 0 : _f.sitePass
253
253
  });
254
254
  debug('alterTran processed', alterTranResult);
255
255
  }
@@ -39,9 +39,9 @@ function validateMovieTicket(params, paymentServiceId, useCheckMovieTicketBefore
39
39
  throw new factory.errors.Argument('movieTickets', 'Number of movie ticket accessCodes must be 1');
40
40
  }
41
41
  // ムビチケ系統の決済方法タイプは動的
42
- const paymentMethodType = (_b = params.object.paymentMethod) === null || _b === void 0 ? void 0 : _b.typeOf;
42
+ const paymentMethodType = (_b = params.object.paymentMethod) === null || _b === void 0 ? void 0 : _b.identifier;
43
43
  if (typeof paymentMethodType !== 'string') {
44
- throw new factory.errors.ArgumentNull('object.paymentMethod.typeOf');
44
+ throw new factory.errors.ArgumentNull('object.paymentMethod.identifier');
45
45
  }
46
46
  // イベント取得属性最適化(2023-01-23~)
47
47
  const screeningEvent = yield repos.event.findMinimizedIndividualEventById({