@chevre/domain 28.0.0-alpha.2 → 28.0.0-alpha.20

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 (120) hide show
  1. package/lib/chevre/eventEmitter/transaction.d.ts +2 -2
  2. package/lib/chevre/eventEmitter/transaction.js +1 -1
  3. package/lib/chevre/repo/acceptedOffer.d.ts +3 -3
  4. package/lib/chevre/repo/acceptedOffer.js +14 -9
  5. package/lib/chevre/repo/acceptedOfferInReserve.d.ts +2 -2
  6. package/lib/chevre/repo/adminEvent.d.ts +0 -6
  7. package/lib/chevre/repo/adminEvent.js +3 -9
  8. package/lib/chevre/repo/adminEventSeries.d.ts +89 -0
  9. package/lib/chevre/repo/adminEventSeries.js +174 -0
  10. package/lib/chevre/repo/adminTask.d.ts +2 -2
  11. package/lib/chevre/repo/adminTransaction.d.ts +44 -48
  12. package/lib/chevre/repo/adminTransaction.js +0 -98
  13. package/lib/chevre/repo/aggregateEvent.js +0 -1
  14. package/lib/chevre/repo/aggregateTransaction.d.ts +0 -1
  15. package/lib/chevre/repo/aggregateTransaction.js +0 -1
  16. package/lib/chevre/repo/event.d.ts +2 -2
  17. package/lib/chevre/repo/event.js +71 -110
  18. package/lib/chevre/repo/eventSeries.d.ts +3 -82
  19. package/lib/chevre/repo/eventSeries.js +3 -201
  20. package/lib/chevre/repo/factory/acceptedOffer/reserveTransaction2itemOffered.d.ts +1 -1
  21. package/lib/chevre/repo/mongoose/schemas/civicStructure.d.ts +1 -0
  22. package/lib/chevre/repo/mongoose/schemas/order.d.ts +21 -1
  23. package/lib/chevre/repo/mongoose/schemas/place.js +0 -9
  24. package/lib/chevre/repo/mongoose/schemas/seller.d.ts +3 -1
  25. package/lib/chevre/repo/mongoose/schemas/seller.js +0 -2
  26. package/lib/chevre/repo/mongoose/schemas/transaction.d.ts +2 -3
  27. package/lib/chevre/repo/mongoose/schemas/transaction.js +81 -70
  28. package/lib/chevre/repo/order.d.ts +2 -2
  29. package/lib/chevre/repo/order.js +0 -31
  30. package/lib/chevre/repo/orderInTransaction.d.ts +5 -25
  31. package/lib/chevre/repo/orderInTransaction.js +0 -6
  32. package/lib/chevre/repo/place/movieTheater.d.ts +3 -1
  33. package/lib/chevre/repo/place/movieTheater.js +3 -1
  34. package/lib/chevre/repo/place/{hasPOS.d.ts → pos.d.ts} +13 -20
  35. package/lib/chevre/repo/place/{hasPOS.js → pos.js} +66 -29
  36. package/lib/chevre/repo/place/screeningRoom.d.ts +24 -3
  37. package/lib/chevre/repo/place/screeningRoom.js +28 -17
  38. package/lib/chevre/repo/priceSpecification.d.ts +8 -8
  39. package/lib/chevre/repo/seller.d.ts +11 -4
  40. package/lib/chevre/repo/seller.js +31 -58
  41. package/lib/chevre/repo/sellerPaymentAccepted.d.ts +14 -21
  42. package/lib/chevre/repo/sellerPaymentAccepted.js +65 -38
  43. package/lib/chevre/repo/task.d.ts +3 -3
  44. package/lib/chevre/repo/transaction/placeOrder.d.ts +6 -12
  45. package/lib/chevre/repo/transaction/placeOrder.js +53 -146
  46. package/lib/chevre/repo/transaction/returnOrderInProgress.d.ts +1 -1
  47. package/lib/chevre/repo/transaction.d.ts +1 -1
  48. package/lib/chevre/repo/transaction.js +0 -1
  49. package/lib/chevre/repository.d.ts +10 -5
  50. package/lib/chevre/repository.js +19 -8
  51. package/lib/chevre/service/aggregation/event/aggregateOffers.js +1 -2
  52. package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +0 -1
  53. package/lib/chevre/service/aggregation/system.js +1 -3
  54. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateAcceptedPaymentMethodIfNeeded.js +1 -2
  55. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateSeller.js +2 -2
  56. package/lib/chevre/service/delivery/reservation/factory.d.ts +1 -1
  57. package/lib/chevre/service/event/saveScreeningEventSeries.d.ts +2 -2
  58. package/lib/chevre/service/event/saveScreeningEventSeries.js +1 -1
  59. package/lib/chevre/service/event/saveScreeningEvents.d.ts +2 -0
  60. package/lib/chevre/service/event.d.ts +2 -0
  61. package/lib/chevre/service/event.js +0 -1
  62. package/lib/chevre/service/offer/any.d.ts +1 -1
  63. package/lib/chevre/service/offer/event/authorize/factory.d.ts +5 -5
  64. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.d.ts +1 -1
  65. package/lib/chevre/service/offer/event/authorize.js +1 -4
  66. package/lib/chevre/service/offer/event/issueEventOfferTicket.js +1 -1
  67. package/lib/chevre/service/offer/event/voidTransaction.js +2 -5
  68. package/lib/chevre/service/offer/event/voidTransactionByActionId.js +1 -4
  69. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +2 -9
  70. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.d.ts +2 -2
  71. package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +1 -4
  72. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +1 -4
  73. package/lib/chevre/service/offer/onEventChanged.js +2 -4
  74. package/lib/chevre/service/offer.js +1 -2
  75. package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.js +1 -1
  76. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +1 -6
  77. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.js +24 -4
  78. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +1 -1
  79. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.d.ts +1 -1
  80. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.d.ts +1 -1
  81. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +1 -1
  82. package/lib/chevre/service/order/placeOrder/factory/orderedItem.d.ts +1 -1
  83. package/lib/chevre/service/order/placeOrder/factory.d.ts +1 -1
  84. package/lib/chevre/service/order/sendOrder.js +2 -14
  85. package/lib/chevre/service/payment/any/authorize.js +1 -1
  86. package/lib/chevre/service/payment/any/factory.d.ts +2 -2
  87. package/lib/chevre/service/payment/any/invalidatePaymentUrl.js +1 -4
  88. package/lib/chevre/service/payment/any/processVoidPayTransaction.js +2 -2
  89. package/lib/chevre/service/payment/any/publishPaymentUrl.js +1 -1
  90. package/lib/chevre/service/payment/creditCard/getGMOInfoFromSeller.js +1 -1
  91. package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.d.ts +3 -3
  92. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +1 -1
  93. package/lib/chevre/service/payment/movieTicket/payMovieTicket/payActionParams2seatInfoSyncIn.js +1 -1
  94. package/lib/chevre/service/payment/movieTicket/validation.js +1 -1
  95. package/lib/chevre/service/task/importEventsFromCOA.js +2 -0
  96. package/lib/chevre/service/task/onResourceDeleted.js +8 -8
  97. package/lib/chevre/service/task/onResourceUpdated/onHasPOSUpdated.d.ts +7 -3
  98. package/lib/chevre/service/task/onResourceUpdated/onHasPOSUpdated.js +51 -50
  99. package/lib/chevre/service/task/onResourceUpdated.js +5 -25
  100. package/lib/chevre/service/task/syncResourcesFromCOA.js +3 -1
  101. package/lib/chevre/service/transaction/deleteTransaction.js +1 -1
  102. package/lib/chevre/service/transaction/placeOrder/confirm/prepareUnitPriceOfferConditions.d.ts +1 -1
  103. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateInvoiceReferencesOrder.d.ts +1 -1
  104. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateMovieTicket.d.ts +1 -1
  105. package/lib/chevre/service/transaction/placeOrder/confirm/validation.d.ts +2 -2
  106. package/lib/chevre/service/transaction/placeOrder/confirm.js +1 -7
  107. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.d.ts +2 -2
  108. package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +1 -4
  109. package/lib/chevre/service/transaction/placeOrder/start.js +1 -1
  110. package/lib/chevre/service/transaction/placeOrder/updateAgent.js +1 -4
  111. package/lib/chevre/service/transaction/returnOrder/potentialActions.js +1 -3
  112. package/lib/chevre/service/transaction/returnOrder/preStart/factory.d.ts +1 -1
  113. package/lib/chevre/service/transaction/returnOrder/preStart.d.ts +13 -1
  114. package/lib/chevre/service/transaction/returnOrder/preStart.js +1 -2
  115. package/lib/chevre/service/transaction/returnOrder.d.ts +14 -3
  116. package/lib/chevre/service/transaction/returnOrder.js +1 -6
  117. package/lib/chevre/service/transaction.d.ts +1 -1
  118. package/package.json +2 -2
  119. package/lib/chevre/service/delivery/factory.d.ts +0 -16
  120. package/lib/chevre/service/delivery/factory.js +0 -124
@@ -8,7 +8,7 @@ declare function createReserveTransactionStartParams(params: {
8
8
  id: string;
9
9
  };
10
10
  broker?: factory.reservation.IBroker;
11
- transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'expires' | 'seller'>;
11
+ transaction: Pick<factory.transaction.placeOrder.ITransaction, 'expires' | 'seller'>;
12
12
  transactionNumber: string;
13
13
  }): factory.assetTransaction.reserve.IStartParamsWithoutDetail;
14
14
  declare function createAuthorizeSeatReservationActionAttributes(params: {
@@ -18,7 +18,7 @@ declare function createAuthorizeSeatReservationActionAttributes(params: {
18
18
  */
19
19
  transactionNumber: string;
20
20
  };
21
- transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'agent' | 'id' | 'project' | 'seller' | 'typeOf'>;
21
+ transaction: Pick<factory.transaction.placeOrder.ITransaction, 'agent' | 'id' | 'project' | 'seller' | 'typeOf'>;
22
22
  }): factory.action.authorize.offer.eventService.IAttributes;
23
23
  declare function acceptedOffers2amount(params: {
24
24
  acceptedOffers: Pick<IResultAcceptedOffer, 'priceSpecification' | 'id'>[];
@@ -31,11 +31,11 @@ declare function acceptedOffers2authorizeResult(params: {
31
31
  onlyPrice?: boolean;
32
32
  };
33
33
  type IObjectSubReservation = factory.assetTransaction.reserve.IObjectSubReservation;
34
- export type IResultAcceptedOffer = Omit<factory.order.IOptimizedAcceptedOffer, 'priceSpecification'> & {
35
- itemOffered: factory.order.IEventReservation;
34
+ export type IResultAcceptedOffer = Omit<factory.acceptedOffer.IOptimizedAcceptedOffer, 'priceSpecification'> & {
35
+ itemOffered: factory.acceptedOffer.IEventReservation;
36
36
  offeredThrough: factory.offer.IOfferedThrough;
37
37
  serialNumber: string;
38
- priceSpecification?: factory.order.ITicketPriceSpecification;
38
+ priceSpecification?: factory.acceptedOffer.ITicketPriceSpecification;
39
39
  };
40
40
  declare function responseBody2acceptedOffers4result(params: {
41
41
  issuedThrough: factory.assetTransaction.reserve.IIssuedThrough;
@@ -31,7 +31,7 @@ declare function processStartReserve4chevre(params: {
31
31
  };
32
32
  broker?: factory.reservation.IBroker;
33
33
  transactionNumber: string;
34
- transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'agent' | 'expires' | 'id' | 'project' | 'seller' | 'typeOf'>;
34
+ transaction: Pick<factory.transaction.placeOrder.ITransaction, 'agent' | 'expires' | 'id' | 'project' | 'seller' | 'typeOf'>;
35
35
  availableAtOrFrom: {
36
36
  id: string;
37
37
  };
@@ -121,10 +121,7 @@ function minimizeItemOffered(itemOffered, options) {
121
121
  }
122
122
  function validateCreateRequest(params) {
123
123
  return async (repos) => {
124
- const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
125
- typeOf: factory_1.factory.transactionType.PlaceOrder,
126
- id: params.transaction.id
127
- }, ['agent', 'expires', 'project', 'seller', 'typeOf', 'instrument']);
124
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: params.transaction.id }, ['agent', 'expires', 'project', 'seller', 'typeOf', 'instrument']);
128
125
  if (transaction.agent.id !== params.agent.id) {
129
126
  throw new factory_1.factory.errors.Forbidden('Transaction not yours');
130
127
  }
@@ -63,7 +63,7 @@ function issueEventOfferTicket(params) {
63
63
  return async (repos) => {
64
64
  const { now, audience, eventId, eventOfferId, ticketedOffer, author, project, instrument } = params;
65
65
  // 取引は存在するか
66
- const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ typeOf: factory_1.factory.transactionType.PlaceOrder, id: audience.id }, ['expires', 'typeOf', 'seller']);
66
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: audience.id }, ['expires', 'typeOf', 'seller']);
67
67
  // イベントは存在するか
68
68
  const event = await repos.event.projectEventFieldsById({ id: eventId }, ['project', 'offers', 'identifier']);
69
69
  const { seller } = transaction;
@@ -22,7 +22,7 @@ function voidTransaction(params) {
22
22
  agent: { id: params.project.id, typeOf: factory_1.factory.organizationType.Project },
23
23
  ...(typeof params.sameAs?.id === 'string') ? { sameAs: { id: params.sameAs.id, typeOf: 'Task' } } : undefined
24
24
  };
25
- const transaction = await repos.placeOrder.findPlaceOrderById({ typeOf: params.purpose.typeOf, id: params.purpose.id }, ['typeOf', 'status', 'object']);
25
+ const transaction = await repos.placeOrder.findPlaceOrderById({ id: params.purpose.id }, ['typeOf', 'status', 'object']);
26
26
  // 興行オファー承認アクション検索
27
27
  let authorizeActions = await repos.actions.authorizeOffer.findAuthorizeOfferActionsByPurpose({
28
28
  // typeOf: factory.actionType.AuthorizeAction,
@@ -115,10 +115,7 @@ function cancelAcceptActions(params) {
115
115
  agent: { id: params.project.id, typeOf: factory_1.factory.organizationType.Project },
116
116
  ...(typeof params.sameAs?.id === 'string') ? { sameAs: { id: params.sameAs.id, typeOf: 'Task' } } : undefined
117
117
  };
118
- const transaction = await repos.placeOrder.findPlaceOrderById({
119
- typeOf: params.purpose.typeOf,
120
- id: params.purpose.id
121
- }, ['typeOf', 'status']);
118
+ const transaction = await repos.placeOrder.findPlaceOrderById({ id: params.purpose.id }, ['typeOf', 'status']);
122
119
  // 興行オファー承認アクション検索
123
120
  const completedAuthorizeActions = await repos.actions.authorizeOffer.findAuthorizeOfferActionsByPurpose({
124
121
  // typeOf: factory.actionType.AuthorizeAction,
@@ -19,10 +19,7 @@ function voidTransactionByActionId(params) {
19
19
  agent: { id: params.project.id, typeOf: factory_1.factory.organizationType.Project },
20
20
  ...(typeof params.sameAs?.id === 'string') ? { sameAs: { id: params.sameAs.id, typeOf: 'Task' } } : undefined
21
21
  };
22
- const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
23
- typeOf: factory_1.factory.transactionType.PlaceOrder,
24
- id: params.purpose.id
25
- }, ['typeOf']);
22
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: params.purpose.id }, ['typeOf']);
26
23
  // if (transaction.agent.id !== params.agent.id) {
27
24
  // throw new factory.errors.Forbidden('Transaction not yours');
28
25
  // }
@@ -12,7 +12,6 @@ function findCOAInfo(params) {
12
12
  project: { id: { $eq: params.project.id } },
13
13
  limit: 1,
14
14
  page: 1,
15
- typeOf: factory_1.factory.eventType.ScreeningEvent,
16
15
  id: { $eq: params.id }
17
16
  }, ['coaInfo'])).shift();
18
17
  if (event === undefined) {
@@ -33,10 +32,7 @@ function acceptOffer(params) {
33
32
  if (typeof params.sameAs.id !== 'string' || params.sameAs.id === '') {
34
33
  throw new factory_1.factory.errors.ArgumentNull('sameAs.id');
35
34
  }
36
- const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
37
- typeOf: factory_1.factory.transactionType.PlaceOrder,
38
- id: params.purpose.id
39
- }, ['project', 'agent', 'typeOf']);
35
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: params.purpose.id }, ['project', 'agent', 'typeOf']);
40
36
  // // 注文ドキュメントを参照(2026-06-24~)
41
37
  // const orderNumber = await repos.orderInTransaction.findOrderNumberByIdentifier({
42
38
  // identifier: transaction.id,
@@ -118,10 +114,7 @@ function reAcceptOffer(params) {
118
114
  if (typeof params.potentialActions?.id !== 'string' || params.potentialActions.id === '') {
119
115
  throw new factory_1.factory.errors.ArgumentNull('potentialActions.id');
120
116
  }
121
- const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
122
- typeOf: factory_1.factory.transactionType.PlaceOrder,
123
- id: params.purpose.id
124
- }, ['project', 'agent', 'typeOf']);
117
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: params.purpose.id }, ['project', 'agent', 'typeOf']);
125
118
  // const orderNumber = await repos.placeOrder.findInProgressOrderNumberById({ id: transaction.id });
126
119
  // if (typeof orderNumber !== 'string') {
127
120
  // // 事前に発行されているはず
@@ -8,7 +8,7 @@ export declare function createAuthorizeSeatReservationActionAttributes(params: {
8
8
  acceptAction: {
9
9
  id: string;
10
10
  };
11
- transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'agent' | 'id' | 'project' | 'seller' | 'typeOf'>;
11
+ transaction: Pick<factory.transaction.placeOrder.ITransaction, 'agent' | 'id' | 'project' | 'seller' | 'typeOf'>;
12
12
  /**
13
13
  * 仮予約済のCOA予約取引
14
14
  */
@@ -22,7 +22,7 @@ export declare function createAuthorizeSeatReservationActionAttributes(params: {
22
22
  export declare function offers2resultPrice(offers: IAcceptedOffer4COA[]): {
23
23
  price: number;
24
24
  };
25
- type IResultAcceptedOffer = factory.order.ICOAAcceptedOffer;
25
+ type IResultAcceptedOffer = factory.acceptedOffer.ICOAAcceptedOffer;
26
26
  /**
27
27
  * COA仮予約結果から注文アイテムを生成する
28
28
  */
@@ -14,10 +14,7 @@ const factory_2 = require("../../../factory");
14
14
  */
15
15
  function authorize(params) {
16
16
  return async (repos) => {
17
- const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
18
- typeOf: factory_2.factory.transactionType.PlaceOrder,
19
- id: params.transaction.id
20
- }, ['agent', 'project', 'seller', 'typeOf', 'instrument']);
17
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: params.transaction.id }, ['agent', 'project', 'seller', 'typeOf', 'instrument']);
21
18
  if (transaction.agent.id !== params.agent.id) {
22
19
  throw new factory_2.factory.errors.Forbidden('Transaction not yours');
23
20
  }
@@ -14,10 +14,7 @@ const factory_2 = require("../../../factory");
14
14
  */
15
15
  function changeOffers(params) {
16
16
  return async (repos) => {
17
- const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
18
- typeOf: factory_2.factory.transactionType.PlaceOrder,
19
- id: params.transaction.id
20
- }, ['typeOf', 'agent', 'project', 'seller']);
17
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: params.transaction.id }, ['typeOf', 'agent', 'project', 'seller']);
21
18
  if (transaction.agent.id !== params.agent.id) {
22
19
  throw new factory_2.factory.errors.Forbidden('Transaction not yours');
23
20
  }
@@ -101,8 +101,7 @@ function createInformTasks(params, setting) {
101
101
  const informEvents = setting?.onResourceUpdated?.informResource;
102
102
  if (params.typeOf === factory_1.factory.eventType.ScreeningEvent) {
103
103
  const screeningEvents4inform = await repos.event.projectEventFields({
104
- id: { $in: params.ids },
105
- typeOf: params.typeOf
104
+ id: { $in: params.ids }
106
105
  }, [
107
106
  'project', 'organizer', 'typeOf', 'name', 'doorTime', 'endDate',
108
107
  'eventStatus', 'location', 'startDate', 'superEvent', 'offers', 'additionalProperty', 'identifier'
@@ -296,8 +295,7 @@ function syncEventEndDate2pendingReservations(params) {
296
295
  const events = await repos.event.projectEventFields({
297
296
  limit: 1,
298
297
  page: 1,
299
- id: { $eq: eventId },
300
- typeOf: params.typeOf
298
+ id: { $eq: eventId }
301
299
  }, ['endDate']);
302
300
  const endDate = events.shift()?.endDate;
303
301
  if (endDate instanceof Date) {
@@ -169,8 +169,7 @@ function findEventSeatOffersBySection(params) {
169
169
  page: 1,
170
170
  project: { id: { $eq: projectId } },
171
171
  organizer: { id: { $eq: sellerId } },
172
- id: { $eq: eventId },
173
- typeOf: factory_1.factory.eventType.ScreeningEvent
172
+ id: { $eq: eventId }
174
173
  }, ['startDate', 'offers.itemOffered', 'location', 'superEvent'])).shift();
175
174
  if (event === undefined) {
176
175
  throw new factory_1.factory.errors.NotFound(factory_1.factory.eventType.ScreeningEvent);
@@ -36,7 +36,7 @@ function cancelOrderIfExist(params) {
36
36
  limit: 1,
37
37
  page: 1,
38
38
  project: { id: { $eq: params.project.id } },
39
- typeOf: factory_1.factory.transactionType.PlaceOrder,
39
+ // typeOf: factory.transactionType.PlaceOrder,
40
40
  statuses: [factory_1.factory.transactionStatusType.Confirmed],
41
41
  // resultではなくobjectで参照するように変更(2026-06-16~)
42
42
  object: {
@@ -5,12 +5,7 @@ type IInTransitOrder = Pick<factory.order.IOrder, 'confirmationNumber' | 'projec
5
5
  limit: number;
6
6
  page: number;
7
7
  };
8
- deliveredAcceptedOffers: (Omit<factory.order.IAcceptedOffer, 'priceSpecification' | 'name'> & {
9
- /**
10
- * COA以外では注文ドキュメントにpriceSpecificationが存在しないのでIFを補完
11
- */
12
- priceSpecification?: factory.order.ITicketPriceSpecification;
13
- })[];
8
+ deliveredAcceptedOffers: Pick<factory.acceptedOffer.IAcceptedOffer, 'priceSpecification' | 'id' | 'itemOffered' | 'offeredThrough' | 'serialNumber' | 'typeOf'>[];
14
9
  orderStatus: factory.orderStatus.OrderInTransit;
15
10
  };
16
11
  declare function createInformTasks(params: {
@@ -4,11 +4,31 @@ exports.createInformTasks = createInformTasks;
4
4
  exports.createNextSendOrderTasks = createNextSendOrderTasks;
5
5
  const factory_1 = require("../../../../factory");
6
6
  function creteOrder4inform(order) {
7
+ const { deliveredAcceptedOffers, project, typeOf, orderNumber } = order;
8
+ let acceptedOffers = deliveredAcceptedOffers;
9
+ const offeredThroughIdentifier = acceptedOffers.at(0)?.offeredThrough?.identifier;
10
+ if (offeredThroughIdentifier === factory_1.factory.service.webAPI.Identifier.COA) {
11
+ // COAでは最小化しない
12
+ }
13
+ else {
14
+ acceptedOffers = deliveredAcceptedOffers.map((acceptedOffer) => {
15
+ const { itemOffered, ...acceptedOfferWithtoutItemOffered } = acceptedOffer;
16
+ const { reservationFor, issuedThrough: _issuedThrough, ...itemOfferedWithoutReservationFor } = itemOffered;
17
+ const itemOffered4inform = {
18
+ ...itemOfferedWithoutReservationFor,
19
+ reservationFor: { id: reservationFor.id, typeOf: reservationFor.typeOf } // minimize reservationFor(2026-09-28~)
20
+ };
21
+ return {
22
+ ...acceptedOfferWithtoutItemOffered,
23
+ itemOffered: itemOffered4inform
24
+ };
25
+ });
26
+ }
7
27
  return {
8
- project: order.project,
9
- typeOf: order.typeOf,
10
- orderNumber: order.orderNumber,
11
- acceptedOffers: order.deliveredAcceptedOffers,
28
+ project,
29
+ typeOf,
30
+ orderNumber,
31
+ acceptedOffers,
12
32
  orderStatus: factory_1.factory.orderStatus.OrderInTransit,
13
33
  // ↓hub側で使用している可能性もあるので念のため
14
34
  ...(typeof order.id === 'string') ? { id: order.id } : undefined
@@ -83,7 +83,7 @@ function createOnAuthorizationCreatedTask(order) {
83
83
  const placeOrderTransaction = (await repos.placeOrder.findPlaceOrderTransactions({
84
84
  limit: 1,
85
85
  page: 1,
86
- typeOf: factory_1.factory.transactionType.PlaceOrder,
86
+ // typeOf: factory.transactionType.PlaceOrder,
87
87
  object: { orderNumber: { $eq: order.orderNumber } },
88
88
  inclusion: ['result']
89
89
  })).shift();
@@ -3,7 +3,7 @@ import { factory } from '../../../../factory';
3
3
  import { IProcessingOrder } from './factory';
4
4
  declare function processOrder(params: {
5
5
  order: Pick<IProcessingOrder, 'confirmationNumber' | 'orderDate' | 'orderNumber' | 'project' | 'typeOf'> & {
6
- itemOfferedTypeOf: factory.order.IItemOffered['typeOf'];
6
+ itemOfferedTypeOf: factory.reservationType.EventReservation;
7
7
  serialNumbers: string[];
8
8
  offeredThroughIdentifier?: factory.service.webAPI.Identifier;
9
9
  };
@@ -7,7 +7,7 @@ import { IExternalOrder, IProcessingOrder } from './onOrderProcessing/factory';
7
7
  import { processOrder } from './onOrderProcessing/processOrder';
8
8
  declare function onOrderProcessing(params: {
9
9
  order: IProcessingOrder & {
10
- itemOfferedTypeOf: factory.order.IItemOffered['typeOf'];
10
+ itemOfferedTypeOf: factory.reservationType.EventReservation;
11
11
  serialNumbers: string[];
12
12
  offeredThroughIdentifier?: factory.service.webAPI.Identifier;
13
13
  };
@@ -11,7 +11,7 @@ function createPlacingOrderFromExistingTransaction(params) {
11
11
  limit: 1,
12
12
  page: 1,
13
13
  project: { id: { $eq: params.project.id } },
14
- typeOf: factory_1.factory.transactionType.PlaceOrder,
14
+ // typeOf: factory.transactionType.PlaceOrder,
15
15
  statuses: [factory_1.factory.transactionStatusType.Confirmed],
16
16
  // resultではなくobjectで参照するように変更(2026-06-16~)
17
17
  object: {
@@ -3,6 +3,6 @@ import { factory } from '../../../../factory';
3
3
  * 受入オファーを注文アイテムに変換する
4
4
  */
5
5
  declare function acceptedOffers2orderedItem(params: {
6
- eventReservationAcceptedOffers: Pick<factory.order.IAcceptedOffer, 'itemOffered'>[];
6
+ eventReservationAcceptedOffers: Pick<factory.acceptedOffer.IAcceptedOffer, 'itemOffered'>[];
7
7
  }): factory.order.IOrderedItem[];
8
8
  export { acceptedOffers2orderedItem };
@@ -1,7 +1,7 @@
1
1
  import type { IPlacingOrder } from '../../../repo/orderInTransaction';
2
2
  import { factory } from '../../../factory';
3
3
  type IPlaceOrderTransaction = Pick<factory.transaction.placeOrder.ITransaction, 'id' | 'project' | 'typeOf' | 'result' | 'object' | 'seller'>;
4
- type IOrderAcceptedOffer = Pick<factory.order.IAcceptedOffer, 'itemOffered' | 'serialNumber'>;
4
+ type IOrderAcceptedOffer = Pick<factory.acceptedOffer.IAcceptedOffer, 'itemOffered' | 'serialNumber'>;
5
5
  declare function createPaymentMethods(params: {
6
6
  authorizePaymentActions: Pick<factory.action.authorize.paymentMethod.any.IAction, 'result'>[];
7
7
  }): {
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.sendOrder = sendOrder;
4
- // import { createOwnershipInfosFromOrder } from '../delivery/factory';
5
4
  const onOrderStatusChanged_1 = require("./onOrderStatusChanged");
6
5
  const factory_1 = require("../../factory");
7
6
  /**
@@ -61,26 +60,15 @@ function sendOrder(params) {
61
60
  const action = await repos.actions.sendOrder.start(sendOrderActionAttributes);
62
61
  let allOffersDelivered = false;
63
62
  let acceptedOffers;
64
- // 所有権管理はひとまず廃止(2026-08-10~)
65
- // // 所有権生成を最小化(2024-03-01~)
66
- // let createOwnerships = false;
67
- // switch (order.customer.typeOf) {
68
- // case factory.personType.Person:
69
- // createOwnerships = true; // Personのみに限定(2026-03-15~)
70
- // break;
71
- // default:
72
- // }
73
63
  try {
74
64
  const offerIndexBase = (limit * (page - 1));
75
- const searchSlicedAcceptedOffersResult = await repos.acceptedOffer.searchSlicedAcceptedOffersByOrderNumber({
65
+ const { partialAcceptedOffers } = await repos.acceptedOffer.findPartialAcceptedOffersByOrderNumber({
76
66
  $slice: [offerIndexBase, limit],
77
67
  orderNumber: { $eq: order.orderNumber },
78
68
  project: { id: { $eq: order.project.id } }
79
69
  });
80
- acceptedOffers = searchSlicedAcceptedOffersResult.acceptedOffers;
70
+ acceptedOffers = partialAcceptedOffers;
81
71
  // 所有権管理はひとまず廃止(2026-08-10~)
82
- // if (createOwnerships) {
83
- // }
84
72
  if (acceptedOffers.length === 0) {
85
73
  order = await repos.order.changeStatus({
86
74
  project: { id: order.project.id },
@@ -59,7 +59,7 @@ function authorize(params) {
59
59
  if (purpose.typeOf !== factory_1.factory.transactionType.PlaceOrder) {
60
60
  throw new factory_1.factory.errors.NotImplemented(`purpose.typeOf '${purpose.typeOf} not implemented'`);
61
61
  }
62
- const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ typeOf: purpose.typeOf, id: purpose.id }, ['agent', 'expires', 'typeOf', 'project', 'seller']);
62
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: purpose.id }, ['agent', 'expires', 'typeOf', 'project', 'seller']);
63
63
  if (project.id !== transaction.project.id) {
64
64
  throw new factory_1.factory.errors.NotFound(factory_1.factory.transactionType.PlaceOrder);
65
65
  }
@@ -8,7 +8,7 @@ export declare function creatPublishPaymentUrlParams(params: {
8
8
  accountId?: string;
9
9
  object: Pick<factory.action.authorize.paymentMethod.any.IObjectIncludingPaymentMethodDetails, 'amount' | 'creditCard' | 'issuedThrough' | 'method' | 'paymentMethod' | 'referencesOrder'>;
10
10
  paymentServiceType: factory.service.paymentService.PaymentServiceType;
11
- transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'expires' | 'seller' | 'project'>;
11
+ transaction: Pick<factory.transaction.placeOrder.ITransaction, 'expires' | 'seller' | 'project'>;
12
12
  transactionNumber: string;
13
13
  location?: factory.action.trade.pay.ILocation;
14
14
  identifier?: string;
@@ -26,7 +26,7 @@ export declare function creatPayTransactionStartParams(params: {
26
26
  accountId?: string;
27
27
  object: factory.action.authorize.paymentMethod.any.IObjectIncludingPaymentMethodDetails;
28
28
  paymentServiceType: factory.service.paymentService.PaymentServiceType;
29
- transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'expires' | 'seller' | 'project'>;
29
+ transaction: Pick<factory.transaction.placeOrder.ITransaction, 'expires' | 'seller' | 'project'>;
30
30
  transactionNumber: string;
31
31
  location?: factory.action.trade.pay.ILocation;
32
32
  order: {
@@ -12,10 +12,7 @@ function invalidatePaymentUrl(params) {
12
12
  if (params.purpose.typeOf !== factory_1.factory.transactionType.PlaceOrder) {
13
13
  throw new factory_1.factory.errors.Argument('purpose.typeOf', `must be ${factory_1.factory.transactionType.PlaceOrder}`);
14
14
  }
15
- const transaction = await repos.placeOrder.findPlaceOrderById({
16
- typeOf: params.purpose.typeOf,
17
- id: params.purpose.id
18
- }, ['typeOf', 'status', 'object', 'project', 'seller', 'agent']);
15
+ const transaction = await repos.placeOrder.findPlaceOrderById({ id: params.purpose.id }, ['typeOf', 'status', 'object', 'project', 'seller', 'agent']);
19
16
  // const orderCancelled: boolean = params.purpose.result?.order?.orderStatus === factory.orderStatus.OrderCancelled;
20
17
  // if (transaction.status === factory.transactionStatusType.Confirmed) {
21
18
  // if (!orderCancelled) {
@@ -50,10 +50,10 @@ function processVoidPayTransaction(params) {
50
50
  let transaction;
51
51
  // アクションID指定の場合、進行中取引検証(2023-02-24~)
52
52
  if (typeof params.id === 'string') {
53
- transaction = await repos.placeOrder.findPlaceOrderInProgressById({ typeOf: params.purpose.typeOf, id: params.purpose.id }, ['typeOf', 'status']);
53
+ transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: params.purpose.id }, ['typeOf', 'status']);
54
54
  }
55
55
  else {
56
- transaction = await repos.placeOrder.findPlaceOrderById({ typeOf: params.purpose.typeOf, id: params.purpose.id }, ['typeOf', 'status', 'result']);
56
+ transaction = await repos.placeOrder.findPlaceOrderById({ id: params.purpose.id }, ['typeOf', 'status', 'result']);
57
57
  }
58
58
  // 承認アクションを取得
59
59
  let authorizeActions;
@@ -48,7 +48,7 @@ function publishPaymentUrl(params) {
48
48
  throw new factory_1.factory.errors.NotImplemented(`purpose.typeOf '${purpose.typeOf} not implemented'`);
49
49
  }
50
50
  try {
51
- const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ typeOf: purpose.typeOf, id: purpose.id }, ['expires', 'seller', 'project']);
51
+ const transaction = await repos.placeOrder.findPlaceOrderInProgressById({ id: purpose.id }, ['expires', 'seller', 'project']);
52
52
  if (project.id !== transaction.project.id) {
53
53
  throw new factory_1.factory.errors.NotFound(factory_1.factory.transactionType.PlaceOrder);
54
54
  }
@@ -6,7 +6,7 @@ function getGMOInfoFromSeller(params) {
6
6
  return async (repos) => {
7
7
  if (params.requirePaymentAccepted) {
8
8
  const paymentAccepted = await repos.paymentAccepted.isAcceptedBySeller({
9
- seller: { id: params.seller.id },
9
+ sellerId: params.seller.id,
10
10
  codeValue: params.paymentMethodType
11
11
  });
12
12
  if (paymentAccepted !== true) {
@@ -15,9 +15,9 @@ declare function createPayObjectServiceOutput(params: {
15
15
  /**
16
16
  * 決済カードの適用された注文オファー
17
17
  */
18
- type IAcceptedOfferMovieTicketUsed = Pick<factory.order.IAcceptedOffer, 'priceSpecification'> & {
19
- itemOffered: Pick<factory.order.IReservation, 'reservationFor' | 'reservationNumber'> & {
20
- reservedTicket: Pick<factory.order.IReservedTicket, 'identifier' | 'ticketedSeat' | 'ticketToken'> | Pick<factory.order.ICOAReservedTicket, 'identifier' | 'ticketedSeat' | 'ticketToken'>;
18
+ type IAcceptedOfferMovieTicketUsed = Pick<factory.acceptedOffer.IAcceptedOffer, 'priceSpecification'> & {
19
+ itemOffered: Pick<factory.acceptedOffer.IEventReservation | factory.acceptedOffer.ICOAEventReservation, 'reservationFor' | 'reservationNumber'> & {
20
+ reservedTicket: Pick<factory.acceptedOffer.IReservedTicket, 'identifier' | 'ticketedSeat' | 'ticketToken'> | Pick<factory.acceptedOffer.ICOAReservedTicket, 'identifier' | 'ticketedSeat' | 'ticketToken'>;
21
21
  };
22
22
  };
23
23
  export { createPayObjectServiceOutput, IAcceptedOfferMovieTicketUsed };
@@ -56,7 +56,7 @@ function checkMovieTicket(params) {
56
56
  const screeningEvent = await repos.event.projectEventFieldsById({ id: eventIds[0] }, ['typeOf', 'project', 'coaInfo', 'startDate', 'offers.offeredThrough', 'superEvent.workPerformed.identifier']);
57
57
  const sellerId = optimizedCheckObject[0]?.seller.id;
58
58
  const paymentAccepted = await repos.paymentAccepted.isAcceptedBySeller({
59
- seller: { id: sellerId },
59
+ sellerId,
60
60
  codeValue: paymentMethodType
61
61
  });
62
62
  if (paymentAccepted !== true) {
@@ -31,7 +31,7 @@ function payActionParams2seatInfoSyncIn(params) {
31
31
  paymentServiceId
32
32
  })(repos);
33
33
  const paymentAccepted = await repos.paymentAccepted.isAcceptedBySeller({
34
- seller: { id: sellerId },
34
+ sellerId,
35
35
  codeValue: paymentMethodType
36
36
  });
37
37
  if (paymentAccepted !== true) {
@@ -61,7 +61,7 @@ checkedAction, purpose) {
61
61
  // }
62
62
  // const paymentAccepted = seller.paymentAccepted?.some((a) => a.paymentMethodType === paymentMethodType);
63
63
  const paymentAccepted = await repos.paymentAccepted.isAcceptedBySeller({
64
- seller: { id: sellerId },
64
+ sellerId,
65
65
  codeValue: paymentMethodType
66
66
  });
67
67
  if (paymentAccepted !== true) {
@@ -39,6 +39,7 @@ const update_1 = require("../../repo/action/update");
39
39
  const categoryCode_1 = require("../../repo/categoryCode");
40
40
  const creativeWork_1 = require("../../repo/creativeWork");
41
41
  const adminEvent_1 = require("../../repo/adminEvent");
42
+ const adminEventSeries_1 = require("../../repo/adminEventSeries");
42
43
  const event_1 = require("../../repo/event");
43
44
  const eventSeries_1 = require("../../repo/eventSeries");
44
45
  const movieTheater_1 = require("../../repo/place/movieTheater");
@@ -78,6 +79,7 @@ function call(params) {
78
79
  categoryCode: new categoryCode_1.CategoryCodeRepo(connection),
79
80
  creativeWork: new creativeWork_1.CreativeWorkRepo(connection),
80
81
  adminEvent: new adminEvent_1.AdminEventRepo(connection),
82
+ adminEventSeries: new adminEventSeries_1.AdminEventSeriesRepo(connection),
81
83
  event: new event_1.EventRepo(connection),
82
84
  eventSeries: new eventSeries_1.EventSeriesRepo(connection),
83
85
  movieTheater: new movieTheater_1.MovieTheaterRepo(connection),
@@ -13,7 +13,7 @@ const note_1 = require("../../repo/note");
13
13
  const offerCatalog_1 = require("../../repo/offerCatalog");
14
14
  const offerCatalogItem_1 = require("../../repo/offerCatalogItem");
15
15
  const paymentServiceProvider_1 = require("../../repo/paymentServiceProvider");
16
- const hasPOS_1 = require("../../repo/place/hasPOS");
16
+ const pos_1 = require("../../repo/place/pos");
17
17
  const movieTheater_1 = require("../../repo/place/movieTheater");
18
18
  const screeningRoom_1 = require("../../repo/place/screeningRoom");
19
19
  const product_1 = require("../../repo/product");
@@ -26,7 +26,6 @@ const deleteResourcesByOfferCatalog_1 = require("./onResourceDeleted/deleteResou
26
26
  const deleteResourcesByProduct_1 = require("./onResourceDeleted/deleteResourcesByProduct");
27
27
  const deleteResourcesByRoom_1 = require("./onResourceDeleted/deleteResourcesByRoom");
28
28
  const deleteResourcesBySeller_1 = require("./onResourceDeleted/deleteResourcesBySeller");
29
- const onHasPOSUpdated_1 = require("./onResourceUpdated/onHasPOSUpdated");
30
29
  const syncOfferCatalog_1 = require("./onResourceUpdated/syncOfferCatalog");
31
30
  /**
32
31
  * タスク実行関数
@@ -42,7 +41,7 @@ function call(params) {
42
41
  adminEvent: new adminEvent_1.AdminEventRepo(connection),
43
42
  eventOffer: new eventOffer_1.EventOfferRepo(connection),
44
43
  eventSeries: new eventSeries_1.EventSeriesRepo(connection),
45
- hasPOS: new hasPOS_1.HasPOSRepo(connection, { id: '' }), // 先の処理で明示的に指定される
44
+ pos: new pos_1.POSRepo(connection, { id: '' }), // 先の処理で明示的に指定される
46
45
  member: new member_1.MemberRepo(connection),
47
46
  movieTheater: new movieTheater_1.MovieTheaterRepo(connection),
48
47
  note: new note_1.NoteRepo(connection),
@@ -68,11 +67,12 @@ function onResourceDeleted(params) {
68
67
  if (useInform) {
69
68
  switch (resourceType) {
70
69
  case 'POS':
71
- await (0, onHasPOSUpdated_1.createInformHasPOSTasks)({
72
- project: { id: params.project.id },
73
- ids: [params.operator.id],
74
- typeOf: factory_1.factory.placeType.MovieTheater
75
- })(repos);
70
+ // POS削除時通知は廃止(2026-09-26~)
71
+ // await createInformHasPOSTasks({
72
+ // project: { id: params.project.id },
73
+ // ids: [params.operator.id],
74
+ // typeOf: factory.placeType.MovieTheater
75
+ // })(repos);
76
76
  break;
77
77
  default:
78
78
  // no op
@@ -1,5 +1,5 @@
1
1
  import { factory } from '../../../factory';
2
- import type { HasPOSRepo } from '../../../repo/place/hasPOS';
2
+ import type { POSRepo } from '../../../repo/place/pos';
3
3
  import type { MovieTheaterRepo } from '../../../repo/place/movieTheater';
4
4
  import type { SettingRepo } from '../../../repo/setting';
5
5
  import type { TaskRepo } from '../../../repo/task';
@@ -10,10 +10,14 @@ export declare function createInformHasPOSTasks(params: {
10
10
  /**
11
11
  * 施設ID
12
12
  */
13
- ids: string[];
13
+ id: string;
14
14
  typeOf: factory.placeType.MovieTheater;
15
+ /**
16
+ * POSコード
17
+ */
18
+ branchCode: string;
15
19
  }): (repos: {
16
- hasPOS: HasPOSRepo;
20
+ pos: POSRepo;
17
21
  movieTheater: MovieTheaterRepo;
18
22
  setting: SettingRepo;
19
23
  task: TaskRepo;