@chevre/domain 24.1.0-alpha.32 → 24.1.0-alpha.33

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.
@@ -18,8 +18,8 @@ export declare class AcceptedOfferRepo extends AcceptedOfferInReserveRepo {
18
18
  /**
19
19
  * オファー展開の注文検索
20
20
  */
21
- searchWithUnwoundAcceptedOffers(params: factory.order.ISearchConditions, projection: IProjection4searchWithUnwoundAcceptedOffers, options: {
22
- useReserveTransaction: boolean;
21
+ searchWithUnwoundAcceptedOffers(params: factory.order.ISearchConditions, projection: IProjection4searchWithUnwoundAcceptedOffers, _options: {
22
+ useItemOfferedByReserve?: boolean;
23
23
  }): Promise<(factory.order.IOrder & {
24
24
  acceptedOffers: [IAcceptedOffer];
25
25
  _id?: never;
@@ -67,8 +67,8 @@ export declare class AcceptedOfferRepo extends AcceptedOfferInReserveRepo {
67
67
  };
68
68
  };
69
69
  };
70
- }, options: {
71
- useReserveTransaction: boolean;
70
+ }, _options: {
71
+ useItemOfferedByReserve?: boolean;
72
72
  }): Promise<IAcceptedOffer[]>;
73
73
  /**
74
74
  * 注文オファーをsliceして検索する(2024-01-10~)
@@ -83,8 +83,8 @@ export declare class AcceptedOfferRepo extends AcceptedOfferInReserveRepo {
83
83
  $eq: string;
84
84
  };
85
85
  };
86
- }, options: {
87
- useReserveTransaction: boolean;
86
+ }, _options: {
87
+ useItemOfferedByReserve?: boolean;
88
88
  }): Promise<ISearchSlicedAcceptedOffersResult>;
89
89
  countByOrderNumber(filter: {
90
90
  orderNumber: {
@@ -19,7 +19,7 @@ class AcceptedOfferRepo extends acceptedOfferInReserve_1.AcceptedOfferInReserveR
19
19
  /**
20
20
  * オファー展開の注文検索
21
21
  */
22
- async searchWithUnwoundAcceptedOffers(params, projection, options) {
22
+ async searchWithUnwoundAcceptedOffers(params, projection, _options) {
23
23
  const conditions = order_2.OrderRepo.CREATE_MONGO_CONDITIONS(params);
24
24
  const aggregate = this.orderModel.aggregate();
25
25
  // unwind->matchでは遅い
@@ -53,8 +53,7 @@ class AcceptedOfferRepo extends acceptedOfferInReserve_1.AcceptedOfferInReserveR
53
53
  .exec();
54
54
  // 予約取引を参照(2026-05-17~)
55
55
  const offeredThroughIdentifier = orders.at(0)?.acceptedOffers[0].offeredThrough?.identifier;
56
- const useReserveTransaction = options.useReserveTransaction === true
57
- && offeredThroughIdentifier !== factory_1.factory.service.webAPI.Identifier.COA; // COAでは予約取引を参照しない
56
+ const useReserveTransaction = offeredThroughIdentifier !== factory_1.factory.service.webAPI.Identifier.COA; // COAでは予約取引を参照しない
58
57
  if (useReserveTransaction) {
59
58
  const reservationNumbers = [...new Set(orders.map((order) => String(order.acceptedOffers[0].serialNumber)))];
60
59
  let acceptedOffersByReserveTransaction = [];
@@ -125,7 +124,7 @@ class AcceptedOfferRepo extends acceptedOfferInReserve_1.AcceptedOfferInReserveR
125
124
  */
126
125
  async searchAcceptedOffersByOrderNumber(filter,
127
126
  // inclusion?: (keyof IAcceptedOffer)[], // 分かりにくいので廃止(2026-05-17~)
128
- options) {
127
+ _options) {
129
128
  /**
130
129
  * unwind前に1ドキュメントを特定するためのstage
131
130
  */
@@ -220,18 +219,12 @@ class AcceptedOfferRepo extends acceptedOfferInReserve_1.AcceptedOfferInReserveR
220
219
  .option({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
221
220
  .exec();
222
221
  // 予約取引を参照(2026-05-18~)
223
- const useReserveTransaction = options?.useReserveTransaction === true;
224
- if (useReserveTransaction) {
225
- return this.addAcceptedOffersDetails(acceptedOffers);
226
- }
227
- else {
228
- return acceptedOffers;
229
- }
222
+ return this.addAcceptedOffersDetails(acceptedOffers);
230
223
  }
231
224
  /**
232
225
  * 注文オファーをsliceして検索する(2024-01-10~)
233
226
  */
234
- async searchSlicedAcceptedOffersByOrderNumber(filter, options) {
227
+ async searchSlicedAcceptedOffersByOrderNumber(filter, _options) {
235
228
  const aggregate = this.orderModel.aggregate([
236
229
  { $match: { orderNumber: { $eq: filter.orderNumber.$eq } } },
237
230
  { $match: { 'project.id': { $eq: filter.project.id.$eq } } },
@@ -252,16 +245,10 @@ class AcceptedOfferRepo extends acceptedOfferInReserve_1.AcceptedOfferInReserveR
252
245
  }
253
246
  const { acceptedOffers, numAcceptedOffers } = result;
254
247
  // 予約取引を参照(2026-05-18~)
255
- const useReserveTransaction = options?.useReserveTransaction === true;
256
- if (useReserveTransaction) {
257
- return {
258
- acceptedOffers: await this.addAcceptedOffersDetails(acceptedOffers),
259
- numAcceptedOffers
260
- };
261
- }
262
- else {
263
- return result;
264
- }
248
+ return {
249
+ acceptedOffers: await this.addAcceptedOffersDetails(acceptedOffers),
250
+ numAcceptedOffers
251
+ };
265
252
  }
266
253
  async countByOrderNumber(filter) {
267
254
  const aggregate = this.orderModel.aggregate([
@@ -147,6 +147,14 @@ export interface IServiceOutputIdentifierSetting {
147
147
  */
148
148
  version: string;
149
149
  }
150
+ interface ICOAIntegrationSettings {
151
+ timeoutReserve: number;
152
+ timeoutMaster: number;
153
+ }
154
+ interface IGMOIntegrationSettings {
155
+ timeout: number;
156
+ timeoutBackground: number;
157
+ }
150
158
  interface ISurfrockSettings {
151
159
  /**
152
160
  * 着券時タイムアウト
@@ -174,14 +182,8 @@ export interface IIntegrationSettings {
174
182
  abortedTasksWithoutReport: string[];
175
183
  numTryConfirmReserveTransaction: number;
176
184
  deliverOrderLimit: number;
177
- coa: {
178
- timeoutReserve: number;
179
- timeoutMaster: number;
180
- };
181
- gmo: {
182
- timeout: number;
183
- timeoutBackground: number;
184
- };
185
+ coa: ICOAIntegrationSettings;
186
+ gmo: IGMOIntegrationSettings;
185
187
  movieticketReserve: ISurfrockSettings;
186
188
  useExperimentalFeature: boolean;
187
189
  }
@@ -96,7 +96,7 @@ function deleteReservationsByOrder(order) {
96
96
  acceptedOffers: {
97
97
  // itemOffered: { typeOf: { $in: [factory.reservationType.EventReservation] } }
98
98
  }
99
- }, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
99
+ }, {} // 予約取引参照(2026-05-18~)
100
100
  );
101
101
  const reservationIds = acceptedOffers.map((o) => String(o.itemOffered.id));
102
102
  if (reservationIds.length > 0) {
@@ -101,7 +101,7 @@ function sendOrder(params) {
101
101
  $slice: [offerIndexBase, limit],
102
102
  orderNumber: { $eq: order.orderNumber },
103
103
  project: { id: { $eq: order.project.id } }
104
- }, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
104
+ }, {} // 予約取引参照(2026-05-18~)
105
105
  );
106
106
  acceptedOffers = searchSlicedAcceptedOffersResult.acceptedOffers;
107
107
  debug('delivering...', order.orderNumber, acceptedOffers.map((offer) => `${offer.itemOffered.id}`), // eslint-disable-line @typescript-eslint/no-explicit-any
@@ -47,10 +47,11 @@ payTransaction, paymentServiceId, options) {
47
47
  try {
48
48
  // タスクによって実行されているかどうか
49
49
  const executedByTask = typeof options.executor?.id === 'string' && options.executor.id !== '';
50
+ const gmoIntegrationSettings = await settings.getByKey('gmo');
50
51
  // 非同期承認時に長時間対応(2024-05-18~)
51
- const timeout = (executedByTask && typeof (await settings.getByKey('gmo')).timeoutBackground === 'number')
52
- ? (await settings.getByKey('gmo')).timeoutBackground
53
- : (await settings.getByKey('gmo')).timeout;
52
+ const timeout = (executedByTask && typeof gmoIntegrationSettings.timeoutBackground === 'number')
53
+ ? gmoIntegrationSettings.timeoutBackground
54
+ : gmoIntegrationSettings.timeout;
54
55
  debug('processAuthorizeCreditCard processing... executor:', options.executor?.id, 'timeout:', timeout);
55
56
  const creditCardService = new gmo_service_1.GMO.service.Credit({
56
57
  endpoint: String(availableChannel.serviceUrl)
@@ -39,7 +39,7 @@ function findByCode(params) {
39
39
  // typeOf?: { $in?: factory.order.IItemOffered['typeOf'][] };
40
40
  }
41
41
  }
42
- }, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
42
+ }, {} // 予約取引参照(2026-05-18~)
43
43
  )).shift();
44
44
  if (acceptedOffer === undefined) {
45
45
  throw new factory_1.factory.errors.NotFound('acceptedOffer');
@@ -16,7 +16,7 @@ function searchByOrder(params) {
16
16
  // typeOf: { $in: [reservationType] }
17
17
  }
18
18
  }
19
- }, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
19
+ }, {} // 予約取引参照(2026-05-18~)
20
20
  );
21
21
  const reservationIds = acceptedOffers.map((offer) => {
22
22
  if (offer.itemOffered.typeOf === reservationType) {
@@ -58,14 +58,15 @@ function call(params) {
58
58
  const actionRepo = new acceptCOAOffer_1.AcceptCOAOfferActionRepo(connection);
59
59
  // const transactionProcessRepo = new TransactionProcessRepo(redisClient, { lockExpiresInSeconds: 120 });
60
60
  try {
61
+ const coaIntegrationSettings = await settings.getByKey('coa');
61
62
  const reserveService = new coa_service_1.COA.service.Reserve({
62
63
  endpoint: coaAuthClient.options.endpoint, // same as authClient(2024-07-17~)
63
64
  auth: coaAuthClient
64
- }, { timeout: (await settings.getByKey('coa')).timeoutReserve });
65
+ }, { timeout: coaIntegrationSettings.timeoutReserve });
65
66
  const masterService = new coa_service_1.COA.service.Master({
66
67
  endpoint: coaAuthClient.options.endpoint, // same as authClient(2024-07-17~)
67
68
  auth: coaAuthClient
68
- }, { timeout: (await settings.getByKey('coa')).timeoutMaster });
69
+ }, { timeout: coaIntegrationSettings.timeoutMaster });
69
70
  const { agent, object, potentialActions, purpose } = params.data;
70
71
  // agent.idからflgMemberを自動セット(2024-12-16~)
71
72
  const isMember = memberClients.includes(agent.id);
@@ -137,7 +137,7 @@ function fixOrderAsPurpose(params) {
137
137
  const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
138
138
  orderNumber: { $eq: order.orderNumber },
139
139
  project: { id: { $eq: params.project.id } }
140
- }, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
140
+ }, {} // 予約取引参照(2026-05-18~)
141
141
  );
142
142
  return {
143
143
  ...order,
@@ -77,7 +77,7 @@ function fixOrderAsPurpose(params, transaction) {
77
77
  reservedTicket: { ticketedSeat: { seatNumber: { $in: seatNumbers } } }
78
78
  }
79
79
  }
80
- }, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
80
+ }, {} // 予約取引参照(2026-05-18~)
81
81
  );
82
82
  }
83
83
  return {
@@ -144,7 +144,7 @@ function fixOrders(params) {
144
144
  const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
145
145
  orderNumber: { $eq: params.object.order[0].orderNumber },
146
146
  project: { id: { $eq: params.project.id } }
147
- }, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
147
+ }, {} // 予約取引参照(2026-05-18~)
148
148
  );
149
149
  return { acceptedOffers, eventIds, offerIds, orders };
150
150
  };
@@ -22,7 +22,7 @@ function validateOrder(params) {
22
22
  const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
23
23
  orderNumber: { $eq: params.orderNumber },
24
24
  project: { id: { $eq: params.project.id } }
25
- }, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
25
+ }, {} // 予約取引参照(2026-05-18~)
26
26
  );
27
27
  let payTransactions = [];
28
28
  if (order.paymentMethods.length > 0) {
package/package.json CHANGED
@@ -91,5 +91,5 @@
91
91
  "postversion": "git push origin --tags",
92
92
  "prepublishOnly": "npm run clean && npm run build"
93
93
  },
94
- "version": "24.1.0-alpha.32"
94
+ "version": "24.1.0-alpha.33"
95
95
  }