@chevre/domain 23.2.0-alpha.8 → 23.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (763) hide show
  1. package/example/src/chevre/acceptedPaymentMethodOffer/adminAcceptedPaymentMethodOffers.ts +27 -19
  2. package/example/src/chevre/actions/checkAcceptPayActions.ts +2 -2
  3. package/example/src/chevre/actions/checkAuthorizePaymentActions.ts +2 -2
  4. package/example/src/chevre/activateOptionalAggregationSettings.ts +1 -1
  5. package/example/src/chevre/adminIdentities.ts +1 -1
  6. package/example/src/chevre/aggreateOwnershipInfosByOrder.ts +1 -1
  7. package/example/src/chevre/aggregateEventPublicFields.ts +2 -2
  8. package/example/src/chevre/aggregateOfferCatalogItemList.ts +1 -1
  9. package/example/src/chevre/aggregateScreeningEventMaxVersion.ts +1 -1
  10. package/example/src/chevre/aggregation/aggregateOffersOnEvent.ts +1 -1
  11. package/example/src/chevre/aggregation/aggregateOrderOfCustomer.ts +2 -2
  12. package/example/src/chevre/aggregation/aggregateOrderOfCustomerGlobally.ts +2 -2
  13. package/example/src/chevre/aggregation/aggregateOrderOfSeatByRoyalCustomers.ts +2 -2
  14. package/example/src/chevre/aggregation/aggregateOrderOnSystem.ts +2 -2
  15. package/example/src/chevre/aggregation/aggregateReservationByProject.ts +2 -2
  16. package/example/src/chevre/aggregation/aggregateSystem.ts +1 -1
  17. package/example/src/chevre/aggregation/aggregateTasks.ts +2 -2
  18. package/example/src/chevre/aggregation/createAggregateEventTasks.ts +2 -2
  19. package/example/src/chevre/aggregation/searchAggregateReservations.ts +1 -1
  20. package/example/src/chevre/assetTransaction/checkPayTransactionsTicketToken.ts +2 -2
  21. package/example/src/chevre/assetTransaction/processReserve.ts +2 -2
  22. package/example/src/chevre/attendIfNotAttended.ts +1 -1
  23. package/example/src/chevre/authorizeEventServiceOffer.ts +1 -1
  24. package/example/src/chevre/categoryCode/checkUniqueness.ts +1 -1
  25. package/example/src/chevre/changeOrderStatus.ts +1 -1
  26. package/example/src/chevre/checkCustomerAttributesLength.ts +2 -2
  27. package/example/src/chevre/checkEventDuration.ts +2 -2
  28. package/example/src/chevre/checkPaymentServiceUniqueness.ts +1 -1
  29. package/example/src/chevre/checkProjectMembers.ts +1 -1
  30. package/example/src/chevre/checkReserveTransactionSizes.ts +2 -2
  31. package/example/src/chevre/cleanActions.ts +2 -2
  32. package/example/src/chevre/cleanReservations.ts +2 -2
  33. package/example/src/chevre/cleanTransactions.ts +2 -2
  34. package/example/src/chevre/confirmationNumber/testRandomness.ts +49 -0
  35. package/example/src/chevre/countPotentiallyExportTasks.ts +2 -2
  36. package/example/src/chevre/countTransactions.ts +1 -1
  37. package/example/src/chevre/createProject.ts +1 -1
  38. package/example/src/chevre/createTaskIfNotExistByAlternateName.ts +1 -1
  39. package/example/src/chevre/db/stats.ts +1 -1
  40. package/example/src/chevre/deleteDiscontinuedPeople.ts +2 -2
  41. package/example/src/chevre/deleteDiscontinuedPeopleByFetch.ts +1 -1
  42. package/example/src/chevre/deleteOwnershipInfosByOwnedThrough.ts +2 -2
  43. package/example/src/chevre/deleteStartDatePassedCertainPeriod.ts +2 -2
  44. package/example/src/chevre/deleteTasksByName.ts +2 -2
  45. package/example/src/chevre/emailMessage/createEmailMessageText.ts +63 -0
  46. package/example/src/chevre/event/checkEventAdditionalPropertyUniqueness.ts +2 -2
  47. package/example/src/chevre/event/importEventSeriesFromCOAByTitle.ts +1 -1
  48. package/example/src/chevre/event/importEventsFromCOAByTitle.ts +4 -4
  49. package/example/src/chevre/event/migrateEventAdditionalProperty2identifier.ts +2 -2
  50. package/example/src/chevre/event/migrateEventMaximumPhysicalAttendeeCapacity.ts +1 -1
  51. package/example/src/chevre/event/unsetSuperEventVideoFormat.ts +30 -0
  52. package/example/src/chevre/event/updateSellerMakesOffersByIdentifier.ts +2 -2
  53. package/example/src/chevre/eventSeries/unsetVideoFormat.ts +31 -0
  54. package/example/src/chevre/eventSeries/upsertScreeningEventSeriesByVersion.ts +106 -0
  55. package/example/src/chevre/findAnyEventById.ts +1 -1
  56. package/example/src/chevre/findAuthorizePaymentAction.ts +1 -1
  57. package/example/src/chevre/findAvailableChannelMovieTicket.ts +1 -1
  58. package/example/src/chevre/findCheckAction.ts +1 -1
  59. package/example/src/chevre/findCustomerByOrderNumber.ts +1 -1
  60. package/example/src/chevre/findItemListElementByCatalogId.ts +1 -1
  61. package/example/src/chevre/findItemListElementById.ts +1 -1
  62. package/example/src/chevre/findJWTSetting.ts +1 -1
  63. package/example/src/chevre/findOneAvailableHours.ts +2 -2
  64. package/example/src/chevre/findReservationByCode.ts +1 -1
  65. package/example/src/chevre/findSchedule.ts +1 -1
  66. package/example/src/chevre/giveUpStartDatePassedCertainPeriod.ts +2 -2
  67. package/example/src/chevre/identity/getCommonClients.ts +1 -1
  68. package/example/src/chevre/identity/migrateClients2oauth.ts +1 -1
  69. package/example/src/chevre/importCategoryCodesFromCOA.ts +1 -1
  70. package/example/src/chevre/importEventsFromCOA.ts +2 -2
  71. package/example/src/chevre/investigateEvents.ts +1 -1
  72. package/example/src/chevre/investigateTransaction.ts +2 -2
  73. package/example/src/chevre/isPaymentAcceptedBySeller.ts +1 -1
  74. package/example/src/chevre/issuer/adminMemberProgramTiers.ts +1 -1
  75. package/example/src/chevre/issuer/migrateIssuerUrls.ts +1 -1
  76. package/example/src/chevre/issuer/renameIssuerIdentifier.ts +1 -1
  77. package/example/src/chevre/maintenance/checkTransactionStatuses.ts +1 -1
  78. package/example/src/chevre/makeExpiredManyTasks.ts +1 -1
  79. package/example/src/chevre/makeTransactionExpired.ts +2 -2
  80. package/example/src/chevre/member/migrateMemberIdentifier.ts +2 -2
  81. package/example/src/chevre/migrateAuthorizeEventServiceOfferChevre.ts +1 -1
  82. package/example/src/chevre/migrateCancelReservationObject.ts +1 -1
  83. package/example/src/chevre/migrateCustomerAdditionalProperties.ts +2 -2
  84. package/example/src/chevre/migrateEventSellerMakesOfferAvailableAt.ts +2 -2
  85. package/example/src/chevre/migrateIdentities.ts +1 -1
  86. package/example/src/chevre/migrateProjectSettings.ts +1 -1
  87. package/example/src/chevre/migrateRoomAdditionalProperties.ts +2 -2
  88. package/example/src/chevre/migrateRoomSectionAdditionalProperties.ts +2 -2
  89. package/example/src/chevre/note/findNotes.ts +1 -1
  90. package/example/src/chevre/note/upsertNotesByIdentifier.ts +1 -1
  91. package/example/src/chevre/notifyAbortedTasksByEmail.ts +2 -2
  92. package/example/src/chevre/notifyByEmail.ts +1 -1
  93. package/example/src/chevre/offerCatalog/updateManyOfferCatalogsByIds.ts +1 -1
  94. package/example/src/chevre/{upsertOfferCatalogItemsByIdentifier.ts → offerCatalog/upsertOfferCatalogItemsByIdentifier.ts} +7 -4
  95. package/example/src/chevre/{upsertOfferCatalogsByIdentifier.ts → offerCatalog/upsertOfferCatalogsByIdentifier.ts} +9 -4
  96. package/example/src/chevre/offers/checkIncludedInCatalogCount.ts +1 -1
  97. package/example/src/chevre/offers/projectItemListElement.ts +1 -1
  98. package/example/src/chevre/offers/searchAvaialbleAppliesToMovieTicketByOfferCatalogId.ts +1 -1
  99. package/example/src/chevre/offers/searchByOfferCatalogIdWithSortIndex.ts +1 -1
  100. package/example/src/chevre/offers/searchOfferCatalogItemAvailability.ts +1 -1
  101. package/example/src/chevre/{upsertOffersByIdentifier.ts → offers/upsertOffersByIdentifier.ts} +6 -4
  102. package/example/src/chevre/optimizeActions.ts +2 -2
  103. package/example/src/chevre/orderNumber/testRandomness.ts +54 -0
  104. package/example/src/chevre/orders/searchOrders.ts +1 -1
  105. package/example/src/chevre/orders/searchWithUnwoundAcceptedOffers.ts +1 -1
  106. package/example/src/chevre/pendingReservation/findEventSeatOffersBySection.ts +1 -1
  107. package/example/src/chevre/person/checkUserPoolClients.ts +1 -1
  108. package/example/src/chevre/person/cleanUpCognitoUsers.ts +2 -2
  109. package/example/src/chevre/person/cleanUpCognitoUsersByFetch.ts +2 -2
  110. package/example/src/chevre/person/cleanUpCreditCard.ts +1 -1
  111. package/example/src/chevre/place/adminEntranceGates.ts +69 -0
  112. package/example/src/chevre/place/adminHasPOS.ts +1 -1
  113. package/example/src/chevre/place/aggregateSeatingTypes.ts +1 -1
  114. package/example/src/chevre/place/checkEntranceGatesCount.ts +82 -0
  115. package/example/src/chevre/place/checkSectionCount.ts +1 -1
  116. package/example/src/chevre/place/findRooms.ts +24 -0
  117. package/example/src/chevre/place/findSections.ts +28 -0
  118. package/example/src/chevre/place/findSectionsByRoom.ts +1 -1
  119. package/example/src/chevre/place/migrateSectionIdentifier.ts +2 -2
  120. package/example/src/chevre/place/seatsJson2csv.ts +63 -0
  121. package/example/src/chevre/place/upsertMovieTheatersByBranchCode.ts +41 -0
  122. package/example/src/chevre/place/upsertRoomsByBranchCode.ts +40 -0
  123. package/example/src/chevre/place/upsertSeatSectionsByBranchCode.ts +56 -0
  124. package/example/src/chevre/processAction.ts +1 -1
  125. package/example/src/chevre/processOrder.ts +2 -2
  126. package/example/src/chevre/product/findHasOfferCatalog.ts +1 -1
  127. package/example/src/chevre/productOffer/publishMemberTierToken.ts +1 -1
  128. package/example/src/chevre/project/unsetProjectSettings.ts +1 -1
  129. package/example/src/chevre/projectEventFieldsById.ts +1 -1
  130. package/example/src/chevre/projectFields.ts +1 -1
  131. package/example/src/chevre/projectFieldsById.ts +1 -1
  132. package/example/src/chevre/projectOwnershipInfoFieldsById.ts +1 -1
  133. package/example/src/chevre/pushIncludedInDataCatalog.ts +1 -1
  134. package/example/src/chevre/reExportAction.ts +2 -2
  135. package/example/src/chevre/reIndex.ts +2 -2
  136. package/example/src/chevre/recreateRefundTasks.ts +2 -2
  137. package/example/src/chevre/roles/{addAdminSeatReadPermissionIfNotExists.ts → addAdminAcceptedPaymentMethodReadPermissionIfNotExists.ts} +2 -2
  138. package/example/src/chevre/roles/{addAdminSeatWritePermissionIfNotExists.ts → addAdminAcceptedPaymentMethodWritePermissionIfNotExists.ts} +2 -2
  139. package/example/src/chevre/roles/addAdminEventSeriesReadPermissionIfNotExists.ts +1 -1
  140. package/example/src/chevre/roles/addAdminMovieReadPermissionIfNotExists.ts +1 -1
  141. package/example/src/chevre/roles/addAdminNotePermissionIfNotExists.ts +1 -1
  142. package/example/src/chevre/roles/addAdminPaymentServiceReadPermissionIfNotExists.ts +1 -1
  143. package/example/src/chevre/roles/addAdminProductHasOfferCatalogReadPermissionIfNotExists.ts +1 -1
  144. package/example/src/chevre/roles/addAdminRoomReadPermissionIfNotExists.ts +34 -0
  145. package/example/src/chevre/roles/addAdminRoomWritePermissionIfNotExists.ts +34 -0
  146. package/example/src/chevre/roles/addAdminSellerEventOfferIfNotExists.ts +1 -1
  147. package/example/src/chevre/roles/addProjectCreatorRole.ts +1 -1
  148. package/example/src/chevre/roles/assignGlobalRoles.ts +1 -1
  149. package/example/src/chevre/roles/findPermissions.ts +2 -2
  150. package/example/src/chevre/roles/findRoleNames.ts +2 -2
  151. package/example/src/chevre/roles/removeConsolePermissionIfExists.ts +1 -1
  152. package/example/src/chevre/roles/removePermissionFromAPIRoles.ts +1 -1
  153. package/example/src/chevre/roles/removePermissionIfExists.ts +1 -1
  154. package/example/src/chevre/saveOfferCatalogItem.ts +1 -1
  155. package/example/src/chevre/saveWebSite.ts +1 -1
  156. package/example/src/chevre/searchAcceptedOfferIds.ts +1 -1
  157. package/example/src/chevre/searchActionsByPurpose.ts +1 -1
  158. package/example/src/chevre/searchAggregateOffers.ts +1 -1
  159. package/example/src/chevre/searchAggregations.ts +1 -1
  160. package/example/src/chevre/searchAuthorizations.ts +1 -1
  161. package/example/src/chevre/searchCheckMovieTicketResultYkknInfo.ts +1 -1
  162. package/example/src/chevre/searchEventHasOfferCatalog.ts +1 -1
  163. package/example/src/chevre/searchIdsByReservationNumber.ts +1 -1
  164. package/example/src/chevre/searchOfferCatalogItemListElement.ts +1 -1
  165. package/example/src/chevre/searchOffers.ts +1 -1
  166. package/example/src/chevre/searchProducts.ts +1 -1
  167. package/example/src/chevre/searchProjects.ts +1 -1
  168. package/example/src/chevre/searchReservationsByOrder.ts +1 -1
  169. package/example/src/chevre/searchSellersByAggregate.ts +1 -1
  170. package/example/src/chevre/searchSlicedAcceptedOffersByOrderNumber.ts +1 -1
  171. package/example/src/chevre/seller/adminMakesOffer.ts +1 -1
  172. package/example/src/chevre/sendEmailMessage.ts +1 -1
  173. package/example/src/chevre/settings/addOrderNumberSetting.ts +44 -0
  174. package/example/src/chevre/settings/addTransactionNumberSetting.ts +40 -0
  175. package/example/src/chevre/stockHolder/findSeatsBySection.ts +1 -1
  176. package/example/src/chevre/stockHolder/getSize.ts +2 -2
  177. package/example/src/chevre/stockHolder/projectPendingReservation.ts +1 -1
  178. package/example/src/chevre/stockHolder/searchSeats.ts +1 -1
  179. package/example/src/chevre/task/countPotentiallyRunning.ts +1 -1
  180. package/example/src/chevre/task/countTasks.ts +1 -1
  181. package/example/src/chevre/task/deleteRunsAtPassedCertainPeriod.ts +2 -2
  182. package/example/src/chevre/task/deleteUnexpectedTasks.ts +1 -1
  183. package/example/src/chevre/task/emitRunning.ts +2 -2
  184. package/example/src/chevre/transaction/processPlaceOrder.ts +1 -1
  185. package/example/src/chevre/transaction/processReturnOrder.ts +1 -1
  186. package/example/src/chevre/transaction/startExportTasks.ts +1 -1
  187. package/example/src/chevre/transactionNumber/publishByTimestamp.ts +23 -0
  188. package/example/src/chevre/transactionNumber/testRandomness.ts +42 -0
  189. package/example/src/chevre/unsetUnnecessaryFields.ts +10 -6
  190. package/example/src/chevre/updateEventPartiallyById.ts +1 -1
  191. package/example/src/chevre/updateProjectAggregateReservation.ts +1 -1
  192. package/example/src/chevre/validateCheckMovieTicketActions.ts +2 -2
  193. package/example/src/duration.ts +1 -1
  194. package/example/src/moment.ts +1 -1
  195. package/example/src/mongoConnectionList.ts +1 -1
  196. package/example/src/objectId.ts +1 -1
  197. package/lib/chevre/credentials/customSearch.js +2 -0
  198. package/lib/chevre/credentials/lineNotify.js +4 -0
  199. package/lib/chevre/credentials/sendGrid.js +2 -0
  200. package/lib/chevre/credentials.js +37 -29
  201. package/lib/chevre/emailMessageBuilder.js +250 -251
  202. package/lib/chevre/errorHandler.js +60 -58
  203. package/lib/chevre/eventEmitter/assetTransaction.js +0 -1
  204. package/lib/chevre/eventEmitter/task.js +0 -1
  205. package/lib/chevre/eventEmitter/transaction.js +0 -1
  206. package/lib/chevre/eventEmitter.js +24 -1
  207. package/lib/chevre/factory/accountTransactionIdentifier.js +24 -1
  208. package/lib/chevre/factory/availableProductTypes.js +24 -1
  209. package/lib/chevre/factory/event.d.ts +1 -1
  210. package/lib/chevre/factory/event.js +93 -37
  211. package/lib/chevre/factory/taskIdentifier.js +25 -2
  212. package/lib/chevre/factory/transactionNumber.d.ts +19 -0
  213. package/lib/chevre/factory/transactionNumber.js +80 -0
  214. package/lib/chevre/index.js +43 -35
  215. package/lib/chevre/repo/acceptedOffer.js +200 -197
  216. package/lib/chevre/repo/acceptedPaymentMethod.d.ts +41 -8
  217. package/lib/chevre/repo/acceptedPaymentMethod.js +163 -108
  218. package/lib/chevre/repo/account.js +217 -238
  219. package/lib/chevre/repo/accountTitle.js +32 -21
  220. package/lib/chevre/repo/accountTransaction.js +213 -194
  221. package/lib/chevre/repo/accountingReport.js +111 -107
  222. package/lib/chevre/repo/action.js +875 -883
  223. package/lib/chevre/repo/additionalProperty.js +87 -92
  224. package/lib/chevre/repo/advanceBookingRequirement.js +92 -91
  225. package/lib/chevre/repo/aggregateOffer.d.ts +6 -1
  226. package/lib/chevre/repo/aggregateOffer.js +419 -423
  227. package/lib/chevre/repo/aggregateOrder.js +73 -155
  228. package/lib/chevre/repo/aggregateReservation.d.ts +0 -1
  229. package/lib/chevre/repo/aggregateReservation.js +99 -91
  230. package/lib/chevre/repo/aggregation.js +65 -63
  231. package/lib/chevre/repo/assetTransaction.js +719 -730
  232. package/lib/chevre/repo/authorization.js +143 -136
  233. package/lib/chevre/repo/categoryCode.js +137 -147
  234. package/lib/chevre/repo/comment.js +96 -82
  235. package/lib/chevre/repo/concurrentLock.js +40 -29
  236. package/lib/chevre/repo/confirmationNumber.d.ts +1 -0
  237. package/lib/chevre/repo/confirmationNumber.js +48 -54
  238. package/lib/chevre/repo/creativeWork.js +175 -180
  239. package/lib/chevre/repo/credentials.js +39 -51
  240. package/lib/chevre/repo/customer.js +87 -88
  241. package/lib/chevre/repo/customerType.js +52 -62
  242. package/lib/chevre/repo/emailMessage.js +74 -80
  243. package/lib/chevre/repo/event.d.ts +3 -18
  244. package/lib/chevre/repo/event.js +734 -744
  245. package/lib/chevre/repo/eventOffer.d.ts +8 -0
  246. package/lib/chevre/repo/eventOffer.js +149 -118
  247. package/lib/chevre/repo/eventSellerMakesOffer.js +87 -76
  248. package/lib/chevre/repo/eventSeries.d.ts +17 -30
  249. package/lib/chevre/repo/eventSeries.js +391 -347
  250. package/lib/chevre/repo/identity.js +117 -107
  251. package/lib/chevre/repo/identityProvider.js +95 -96
  252. package/lib/chevre/repo/issuer.js +125 -135
  253. package/lib/chevre/repo/member.js +261 -259
  254. package/lib/chevre/repo/memberProgram.js +180 -177
  255. package/lib/chevre/repo/merchantReturnPolicy.js +84 -94
  256. package/lib/chevre/repo/message.js +145 -135
  257. package/lib/chevre/repo/mongoose/onIndexCreated.js +0 -1
  258. package/lib/chevre/repo/mongoose/schemas/acceptedPaymentMethod.js +1 -1
  259. package/lib/chevre/repo/mongoose/schemas/account.js +1 -1
  260. package/lib/chevre/repo/mongoose/schemas/accountTitle.js +1 -1
  261. package/lib/chevre/repo/mongoose/schemas/accountTransaction.js +1 -1
  262. package/lib/chevre/repo/mongoose/schemas/accountingReport.js +1 -1
  263. package/lib/chevre/repo/mongoose/schemas/action.js +1 -1
  264. package/lib/chevre/repo/mongoose/schemas/actionRecipe.js +1 -1
  265. package/lib/chevre/repo/mongoose/schemas/additionalProperty.js +1 -1
  266. package/lib/chevre/repo/mongoose/schemas/advanceBookingRequirement.js +1 -1
  267. package/lib/chevre/repo/mongoose/schemas/aggregateOffer.js +1 -1
  268. package/lib/chevre/repo/mongoose/schemas/aggregateOrder.js +1 -1
  269. package/lib/chevre/repo/mongoose/schemas/aggregateReservation.js +1 -2
  270. package/lib/chevre/repo/mongoose/schemas/aggregation.js +1 -1
  271. package/lib/chevre/repo/mongoose/schemas/assetTransaction.js +1 -1
  272. package/lib/chevre/repo/mongoose/schemas/authorization.js +1 -1
  273. package/lib/chevre/repo/mongoose/schemas/categoryCode.js +1 -1
  274. package/lib/chevre/repo/mongoose/schemas/civicStructure.js +1 -1
  275. package/lib/chevre/repo/mongoose/schemas/creativeWork.js +1 -1
  276. package/lib/chevre/repo/mongoose/schemas/customer.js +1 -1
  277. package/lib/chevre/repo/mongoose/schemas/customerType.js +1 -1
  278. package/lib/chevre/repo/mongoose/schemas/event.js +1 -1
  279. package/lib/chevre/repo/mongoose/schemas/eventOffer.js +1 -1
  280. package/lib/chevre/repo/mongoose/schemas/eventSeries.js +45 -7
  281. package/lib/chevre/repo/mongoose/schemas/identity.js +1 -1
  282. package/lib/chevre/repo/mongoose/schemas/identityProvider.js +1 -1
  283. package/lib/chevre/repo/mongoose/schemas/issuer.js +1 -1
  284. package/lib/chevre/repo/mongoose/schemas/member/global.js +1 -1
  285. package/lib/chevre/repo/mongoose/schemas/member.js +25 -2
  286. package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.js +1 -1
  287. package/lib/chevre/repo/mongoose/schemas/message.js +1 -1
  288. package/lib/chevre/repo/mongoose/schemas/movieTicketTypes.js +1 -1
  289. package/lib/chevre/repo/mongoose/schemas/note.js +1 -1
  290. package/lib/chevre/repo/mongoose/schemas/offerCatalog.js +3 -9
  291. package/lib/chevre/repo/mongoose/schemas/offerCatalogItem.js +29 -3
  292. package/lib/chevre/repo/mongoose/schemas/offerItemCondition.js +1 -1
  293. package/lib/chevre/repo/mongoose/schemas/order.js +1 -1
  294. package/lib/chevre/repo/mongoose/schemas/paymentService.js +1 -1
  295. package/lib/chevre/repo/mongoose/schemas/paymentServiceChannel.js +1 -1
  296. package/lib/chevre/repo/mongoose/schemas/pendingReservation.js +1 -1
  297. package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.js +1 -1
  298. package/lib/chevre/repo/mongoose/schemas/place.d.ts +6 -2
  299. package/lib/chevre/repo/mongoose/schemas/place.js +1 -1
  300. package/lib/chevre/repo/mongoose/schemas/potentialAction.js +1 -1
  301. package/lib/chevre/repo/mongoose/schemas/product.js +1 -1
  302. package/lib/chevre/repo/mongoose/schemas/productModel.js +1 -1
  303. package/lib/chevre/repo/mongoose/schemas/productOffer.js +1 -1
  304. package/lib/chevre/repo/mongoose/schemas/reservation.js +1 -1
  305. package/lib/chevre/repo/mongoose/schemas/reserveInterface.js +1 -1
  306. package/lib/chevre/repo/mongoose/schemas/role.js +1 -1
  307. package/lib/chevre/repo/mongoose/schemas/schedule.js +1 -1
  308. package/lib/chevre/repo/mongoose/schemas/seller.js +1 -1
  309. package/lib/chevre/repo/mongoose/schemas/sellerReturnPolicy.js +1 -1
  310. package/lib/chevre/repo/mongoose/schemas/service/availableHour.js +1 -1
  311. package/lib/chevre/repo/mongoose/schemas/setting.d.ts +40 -0
  312. package/lib/chevre/repo/mongoose/schemas/setting.js +4 -1
  313. package/lib/chevre/repo/mongoose/schemas/task.js +1 -2
  314. package/lib/chevre/repo/mongoose/schemas/ticket.js +1 -1
  315. package/lib/chevre/repo/mongoose/schemas/transaction.js +25 -2
  316. package/lib/chevre/repo/mongoose/schemas/transactionNumber.js +1 -1
  317. package/lib/chevre/repo/mongoose/schemas/trip.js +1 -1
  318. package/lib/chevre/repo/mongoose/schemas/webSite.js +1 -1
  319. package/lib/chevre/repo/movieTicketType.js +90 -94
  320. package/lib/chevre/repo/note.js +166 -147
  321. package/lib/chevre/repo/noteAboutOrder.js +135 -113
  322. package/lib/chevre/repo/offer/unitPriceInCatalog.js +353 -314
  323. package/lib/chevre/repo/offerCatalog.d.ts +14 -1
  324. package/lib/chevre/repo/offerCatalog.js +313 -300
  325. package/lib/chevre/repo/offerCatalogItem.d.ts +10 -1
  326. package/lib/chevre/repo/offerCatalogItem.js +302 -292
  327. package/lib/chevre/repo/offerItemCondition.js +83 -85
  328. package/lib/chevre/repo/order.js +582 -607
  329. package/lib/chevre/repo/orderInTransaction.js +136 -136
  330. package/lib/chevre/repo/orderNumber.d.ts +6 -0
  331. package/lib/chevre/repo/orderNumber.js +142 -58
  332. package/lib/chevre/repo/ownershipInfo.js +236 -241
  333. package/lib/chevre/repo/passport.js +123 -106
  334. package/lib/chevre/repo/paymentMethod/creditCard.js +175 -170
  335. package/lib/chevre/repo/paymentService.js +202 -200
  336. package/lib/chevre/repo/paymentServiceChannel.js +99 -100
  337. package/lib/chevre/repo/paymentServiceProvider.js +209 -201
  338. package/lib/chevre/repo/pendingReservation.js +300 -307
  339. package/lib/chevre/repo/permit.js +70 -42
  340. package/lib/chevre/repo/person.js +240 -256
  341. package/lib/chevre/repo/place/busStop.js +99 -106
  342. package/lib/chevre/repo/place/entranceGate.d.ts +57 -0
  343. package/lib/chevre/repo/place/entranceGate.js +190 -0
  344. package/lib/chevre/repo/place/hasPOS.js +131 -120
  345. package/lib/chevre/repo/place/movieTheater.d.ts +40 -3
  346. package/lib/chevre/repo/place/movieTheater.js +220 -161
  347. package/lib/chevre/repo/place/screeningRoom.d.ts +49 -41
  348. package/lib/chevre/repo/place/screeningRoom.js +469 -345
  349. package/lib/chevre/repo/place/seat.d.ts +47 -45
  350. package/lib/chevre/repo/place/seat.js +596 -386
  351. package/lib/chevre/repo/place/section.d.ts +34 -3
  352. package/lib/chevre/repo/place/section.js +510 -292
  353. package/lib/chevre/repo/potentialAction.js +90 -87
  354. package/lib/chevre/repo/priceSpecification.js +125 -146
  355. package/lib/chevre/repo/product.js +226 -239
  356. package/lib/chevre/repo/productHasOfferCatalog.js +62 -50
  357. package/lib/chevre/repo/productModel.js +117 -127
  358. package/lib/chevre/repo/productOffer.js +142 -118
  359. package/lib/chevre/repo/project.js +146 -141
  360. package/lib/chevre/repo/projectMakesOffer.js +119 -108
  361. package/lib/chevre/repo/rateLimit/offer.js +71 -59
  362. package/lib/chevre/repo/reservation.js +392 -398
  363. package/lib/chevre/repo/reserveInterface.js +31 -42
  364. package/lib/chevre/repo/role.js +116 -112
  365. package/lib/chevre/repo/schedule.js +25 -36
  366. package/lib/chevre/repo/seller.js +137 -147
  367. package/lib/chevre/repo/sellerMakesOffer.js +118 -110
  368. package/lib/chevre/repo/sellerPaymentAccepted.js +115 -109
  369. package/lib/chevre/repo/sellerReturnPolicy.js +97 -97
  370. package/lib/chevre/repo/service/availableHour.js +27 -38
  371. package/lib/chevre/repo/serviceOutput.js +77 -67
  372. package/lib/chevre/repo/serviceOutputIdentifier.d.ts +3 -1
  373. package/lib/chevre/repo/serviceOutputIdentifier.js +80 -51
  374. package/lib/chevre/repo/setting/jwt.js +63 -50
  375. package/lib/chevre/repo/setting.d.ts +1 -1
  376. package/lib/chevre/repo/setting.js +48 -48
  377. package/lib/chevre/repo/stockHolder.js +202 -199
  378. package/lib/chevre/repo/task.d.ts +1 -1
  379. package/lib/chevre/repo/task.js +636 -619
  380. package/lib/chevre/repo/telemetry.js +1 -0
  381. package/lib/chevre/repo/ticket.js +75 -65
  382. package/lib/chevre/repo/transaction.js +781 -816
  383. package/lib/chevre/repo/transactionNumber.d.ts +5 -0
  384. package/lib/chevre/repo/transactionNumber.js +100 -51
  385. package/lib/chevre/repo/transactionNumberCounter.js +91 -79
  386. package/lib/chevre/repo/transactionProcess.js +65 -50
  387. package/lib/chevre/repo/trip.js +167 -164
  388. package/lib/chevre/repo/webSite.js +114 -107
  389. package/lib/chevre/repository.d.ts +8 -0
  390. package/lib/chevre/repository.js +486 -639
  391. package/lib/chevre/service/account.js +32 -21
  392. package/lib/chevre/service/accountTransaction/deposit.js +39 -17
  393. package/lib/chevre/service/accountTransaction/factory.js +24 -1
  394. package/lib/chevre/service/accountTransaction/transfer.js +41 -22
  395. package/lib/chevre/service/accountTransaction/withdraw.js +39 -17
  396. package/lib/chevre/service/accountTransaction.js +30 -19
  397. package/lib/chevre/service/aggregation/event/aggregateOffers.js +95 -66
  398. package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +84 -61
  399. package/lib/chevre/service/aggregation/event/findEventOffers.js +30 -17
  400. package/lib/chevre/service/aggregation/event/importFromCOA.js +11 -18
  401. package/lib/chevre/service/aggregation/project.js +48 -31
  402. package/lib/chevre/service/aggregation/system.js +256 -147
  403. package/lib/chevre/service/aggregation.js +26 -3
  404. package/lib/chevre/service/assetTransaction/cancelReservation/factory.js +55 -18
  405. package/lib/chevre/service/assetTransaction/cancelReservation/start.js +40 -24
  406. package/lib/chevre/service/assetTransaction/cancelReservation/startAndConfirm.js +40 -15
  407. package/lib/chevre/service/assetTransaction/cancelReservation.js +30 -18
  408. package/lib/chevre/service/assetTransaction/cancelReservationCOA/factory.js +35 -5
  409. package/lib/chevre/service/assetTransaction/cancelReservationCOA.js +4 -13
  410. package/lib/chevre/service/assetTransaction/fixInformAction.d.ts +3 -0
  411. package/lib/chevre/service/assetTransaction/fixInformAction.js +32 -16
  412. package/lib/chevre/service/assetTransaction/moneyTransfer/potentialActions.js +36 -25
  413. package/lib/chevre/service/assetTransaction/moneyTransfer.js +131 -94
  414. package/lib/chevre/service/assetTransaction/pay/cancel.d.ts +12 -0
  415. package/lib/chevre/service/assetTransaction/pay/cancel.js +39 -0
  416. package/lib/chevre/service/assetTransaction/pay/check.d.ts +23 -0
  417. package/lib/chevre/service/assetTransaction/pay/check.js +50 -0
  418. package/lib/chevre/service/assetTransaction/pay/confirm.d.ts +24 -0
  419. package/lib/chevre/service/assetTransaction/pay/confirm.js +92 -0
  420. package/lib/chevre/service/assetTransaction/pay/exportTasksById.d.ts +18 -0
  421. package/lib/chevre/service/assetTransaction/pay/exportTasksById.js +127 -0
  422. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.d.ts +48 -0
  423. package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +186 -0
  424. package/lib/chevre/service/assetTransaction/pay/searchGMOTrade.d.ts +20 -0
  425. package/lib/chevre/service/assetTransaction/pay/searchGMOTrade.js +72 -0
  426. package/lib/chevre/service/assetTransaction/pay/{account → start/account}/validation.d.ts +2 -2
  427. package/lib/chevre/service/assetTransaction/pay/{account → start/account}/validation.js +29 -16
  428. package/lib/chevre/service/assetTransaction/pay/{factory.d.ts → start/factory.d.ts} +1 -1
  429. package/lib/chevre/service/assetTransaction/pay/{factory.js → start/factory.js} +88 -38
  430. package/lib/chevre/service/assetTransaction/pay/{validateAcceptedPaymentMethodIfNeeded.d.ts → start/preStart/validateAcceptedPaymentMethodIfNeeded.d.ts} +4 -4
  431. package/lib/chevre/service/assetTransaction/pay/{validateAcceptedPaymentMethodIfNeeded.js → start/preStart/validateAcceptedPaymentMethodIfNeeded.js} +35 -24
  432. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateSeller.d.ts +8 -0
  433. package/lib/chevre/service/assetTransaction/pay/start/preStart/validateSeller.js +67 -0
  434. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeAccount.d.ts +13 -0
  435. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeAccount.js +62 -0
  436. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.d.ts +29 -0
  437. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.js +54 -0
  438. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.d.ts +42 -0
  439. package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.js +45 -0
  440. package/lib/chevre/service/assetTransaction/pay/start.d.ts +60 -0
  441. package/lib/chevre/service/assetTransaction/pay/start.js +162 -0
  442. package/lib/chevre/service/assetTransaction/pay.d.ts +8 -170
  443. package/lib/chevre/service/assetTransaction/pay.js +16 -623
  444. package/lib/chevre/service/assetTransaction/refund/factory.js +60 -17
  445. package/lib/chevre/service/assetTransaction/refund/potentialActions.js +35 -21
  446. package/lib/chevre/service/assetTransaction/refund.js +63 -43
  447. package/lib/chevre/service/assetTransaction/registerService/factory.js +96 -33
  448. package/lib/chevre/service/assetTransaction/registerService/potentialActions.js +80 -47
  449. package/lib/chevre/service/assetTransaction/registerService.js +70 -58
  450. package/lib/chevre/service/assetTransaction/reserve/cancel.js +28 -14
  451. package/lib/chevre/service/assetTransaction/reserve/confirm/factory.js +15 -4
  452. package/lib/chevre/service/assetTransaction/reserve/confirm.js +44 -26
  453. package/lib/chevre/service/assetTransaction/reserve/exportTasksById.js +26 -13
  454. package/lib/chevre/service/assetTransaction/reserve/start/createSubReservations.js +138 -96
  455. package/lib/chevre/service/assetTransaction/reserve/start/factory/createPointAward.js +41 -13
  456. package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.js +142 -80
  457. package/lib/chevre/service/assetTransaction/reserve/start/factory/createStartParams.js +93 -23
  458. package/lib/chevre/service/assetTransaction/reserve/start/factory/price.js +53 -21
  459. package/lib/chevre/service/assetTransaction/reserve/start.js +131 -122
  460. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/fixExtendedEventOffer.js +33 -17
  461. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/validateIssuedOfferIfExists.js +72 -59
  462. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/validateMemberTierIfExists.js +71 -59
  463. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/verifyTicketTokenAsNeeded.js +30 -19
  464. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest.js +45 -31
  465. package/lib/chevre/service/assetTransaction/reserveCOA/cancel.js +47 -24
  466. package/lib/chevre/service/assetTransaction/reserveCOA/factory.js +36 -5
  467. package/lib/chevre/service/assetTransaction/reserveCOA.js +4 -13
  468. package/lib/chevre/service/assetTransaction.js +46 -27
  469. package/lib/chevre/service/delivery/factory.js +33 -8
  470. package/lib/chevre/service/delivery/product/factory.js +48 -13
  471. package/lib/chevre/service/delivery/reservation/factory.js +44 -7
  472. package/lib/chevre/service/delivery.js +78 -56
  473. package/lib/chevre/service/event/processUpdateMovieTheater.d.ts +1 -1
  474. package/lib/chevre/service/event/processUpdateMovieTheater.js +56 -36
  475. package/lib/chevre/service/event/saveScreeningEventSeries.js +98 -58
  476. package/lib/chevre/service/event/saveScreeningEvents.d.ts +2 -2
  477. package/lib/chevre/service/event/saveScreeningEvents.js +65 -50
  478. package/lib/chevre/service/event.js +70 -40
  479. package/lib/chevre/service/iam.js +8 -17
  480. package/lib/chevre/service/moneyTransfer.js +158 -116
  481. package/lib/chevre/service/notification/factory.js +42 -15
  482. package/lib/chevre/service/notification/notifyAbortedTasksByEmail.js +39 -17
  483. package/lib/chevre/service/notification/notifyByEmail.js +31 -20
  484. package/lib/chevre/service/notification/sendEmailMessage.js +47 -27
  485. package/lib/chevre/service/notification/triggerWebhook.js +82 -57
  486. package/lib/chevre/service/offer/any.js +34 -17
  487. package/lib/chevre/service/offer/event/authorize/defaultOffer.js +24 -1
  488. package/lib/chevre/service/offer/event/authorize/factory.js +173 -63
  489. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre/requestedProgramMembershipUsed2permit.js +31 -19
  490. package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.js +67 -28
  491. package/lib/chevre/service/offer/event/authorize.js +137 -71
  492. package/lib/chevre/service/offer/event/checkAvailability.js +33 -17
  493. package/lib/chevre/service/offer/event/importFromCOA/factory.js +34 -5
  494. package/lib/chevre/service/offer/event/importFromCOA.js +36 -19
  495. package/lib/chevre/service/offer/event/issueEventOfferTicket.js +66 -41
  496. package/lib/chevre/service/offer/event/searchEventTicketOffers.js +53 -42
  497. package/lib/chevre/service/offer/event/searchOfferAppliesToMovieTicket.js +38 -23
  498. package/lib/chevre/service/offer/event/searchOfferCatalogItemAvailability.js +36 -26
  499. package/lib/chevre/service/offer/event/searchOfferCatalogItems.js +38 -23
  500. package/lib/chevre/service/offer/event/searchOffersByIds.js +56 -42
  501. package/lib/chevre/service/offer/event/searchPriceSpecs4event.js +28 -14
  502. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.js +27 -13
  503. package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4coa.js +6 -15
  504. package/lib/chevre/service/offer/event/voidTransaction.js +58 -41
  505. package/lib/chevre/service/offer/event/voidTransactionByActionId.js +37 -20
  506. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer/authorize.js +76 -43
  507. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer/factory.js +29 -2
  508. package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +57 -37
  509. package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.js +81 -30
  510. package/lib/chevre/service/offer/eventServiceByCOA/authorize/validateAcceptedOffers.js +90 -62
  511. package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +44 -29
  512. package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +31 -18
  513. package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +70 -45
  514. package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.js +45 -25
  515. package/lib/chevre/service/offer/factory.js +42 -9
  516. package/lib/chevre/service/offer/moneyTransfer/authorize.js +60 -39
  517. package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.js +39 -22
  518. package/lib/chevre/service/offer/moneyTransfer/settleTransaction.js +34 -20
  519. package/lib/chevre/service/offer/moneyTransfer/voidTransaction.js +38 -25
  520. package/lib/chevre/service/offer/onEventChanged.js +106 -72
  521. package/lib/chevre/service/offer/product/factory.js +83 -35
  522. package/lib/chevre/service/offer/product/searchProductOffers.js +53 -24
  523. package/lib/chevre/service/offer/product.js +130 -83
  524. package/lib/chevre/service/offer.d.ts +5 -0
  525. package/lib/chevre/service/offer.js +111 -57
  526. package/lib/chevre/service/order/confirmPayTransaction.js +52 -28
  527. package/lib/chevre/service/order/createAccountingReportIfNotExist.js +81 -42
  528. package/lib/chevre/service/order/deleteOrder.js +51 -36
  529. package/lib/chevre/service/order/findPlaceOrderTransaction.js +26 -12
  530. package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +92 -72
  531. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.d.ts +1 -1
  532. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.js +25 -3
  533. package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled.js +31 -14
  534. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered/factory.js +35 -7
  535. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.js +33 -16
  536. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +1 -1
  537. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.js +46 -10
  538. package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.js +33 -16
  539. package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +51 -28
  540. package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.js +41 -21
  541. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/createSendEmailMessageTaskIfNotExist.js +29 -15
  542. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/factory.js +49 -16
  543. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.js +52 -35
  544. package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.js +36 -20
  545. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.d.ts +1 -1
  546. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.js +34 -10
  547. package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +51 -30
  548. package/lib/chevre/service/order/onOrderUpdated/factory.js +27 -6
  549. package/lib/chevre/service/order/onOrderUpdated.js +36 -15
  550. package/lib/chevre/service/order/payOrder.js +26 -12
  551. package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +32 -20
  552. package/lib/chevre/service/order/placeOrder/factory/orderedItem.js +55 -16
  553. package/lib/chevre/service/order/placeOrder/factory.js +63 -24
  554. package/lib/chevre/service/order/placeOrder/voidAcceptedOfferIfNecessary.js +7 -13
  555. package/lib/chevre/service/order/placeOrder.js +35 -23
  556. package/lib/chevre/service/order/placeOrderWithoutTransaction.js +33 -18
  557. package/lib/chevre/service/order/returnOrder.js +55 -32
  558. package/lib/chevre/service/order/sendOrder.js +65 -39
  559. package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.js +42 -25
  560. package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +52 -41
  561. package/lib/chevre/service/payment/any/factory.js +137 -55
  562. package/lib/chevre/service/payment/any/fixOrderAsNeeded.js +27 -13
  563. package/lib/chevre/service/payment/any/onPayActionCompleted.js +36 -18
  564. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onPaid.js +61 -38
  565. package/lib/chevre/service/payment/any/onPaymentStatusChanged/onRefunded.js +45 -25
  566. package/lib/chevre/service/payment/any/onPaymentStatusChanged.js +39 -16
  567. package/lib/chevre/service/payment/any/onRefundActionCompletedOrFailed.js +38 -21
  568. package/lib/chevre/service/payment/any/person2username.js +55 -45
  569. package/lib/chevre/service/payment/any/publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl.js +31 -18
  570. package/lib/chevre/service/payment/any/verifyTicketTokenAsNeeded.js +28 -17
  571. package/lib/chevre/service/payment/any.js +206 -144
  572. package/lib/chevre/service/payment/creditCard/authorize/handleAuthorizeError.js +31 -5
  573. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +68 -26
  574. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.js +29 -15
  575. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3dsResult2recipe.js +29 -2
  576. package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCardResult2recipe.js +34 -3
  577. package/lib/chevre/service/payment/creditCard/authorize.js +49 -25
  578. package/lib/chevre/service/payment/creditCard/factory.js +46 -5
  579. package/lib/chevre/service/payment/creditCard/getGMOInfoFromSeller.js +31 -18
  580. package/lib/chevre/service/payment/creditCard/payCreditCard.js +55 -37
  581. package/lib/chevre/service/payment/creditCard/refundCreditCard.js +64 -52
  582. package/lib/chevre/service/payment/creditCard/searchGMOTrade.js +57 -46
  583. package/lib/chevre/service/payment/creditCard/voidTransaction.js +39 -27
  584. package/lib/chevre/service/payment/faceToFace.js +37 -23
  585. package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.js +68 -26
  586. package/lib/chevre/service/payment/factory.js +74 -25
  587. package/lib/chevre/service/payment/movieTicket/authorize.js +58 -30
  588. package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +45 -25
  589. package/lib/chevre/service/payment/movieTicket/factory.js +64 -15
  590. package/lib/chevre/service/payment/movieTicket/getCredentials.js +28 -15
  591. package/lib/chevre/service/payment/movieTicket/payMovieTicket.js +53 -41
  592. package/lib/chevre/service/payment/movieTicket/processPurchaseNumberAuth.js +37 -21
  593. package/lib/chevre/service/payment/movieTicket/refundMovieTicket.js +90 -64
  594. package/lib/chevre/service/payment/movieTicket/validation.js +69 -39
  595. package/lib/chevre/service/payment/movieTicket/voidTransaction.js +31 -18
  596. package/lib/chevre/service/payment/paymentCard.js +117 -108
  597. package/lib/chevre/service/permit.js +60 -36
  598. package/lib/chevre/service/product.js +50 -29
  599. package/lib/chevre/service/project.js +22 -31
  600. package/lib/chevre/service/report/ownershipInfo.js +9 -7
  601. package/lib/chevre/service/report/telemetry.js +86 -79
  602. package/lib/chevre/service/report.js +25 -2
  603. package/lib/chevre/service/reserve/cancelReservation.js +122 -97
  604. package/lib/chevre/service/reserve/checkInReservation.js +52 -31
  605. package/lib/chevre/service/reserve/confirmReservation.js +61 -41
  606. package/lib/chevre/service/reserve/factory.js +66 -21
  607. package/lib/chevre/service/reserve/findByCode.js +36 -18
  608. package/lib/chevre/service/reserve/potentialActions/onPendingReservationCanceled.js +41 -24
  609. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +40 -25
  610. package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +61 -30
  611. package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +68 -37
  612. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +67 -37
  613. package/lib/chevre/service/reserve/potentialActions/onReservationsCreated.js +40 -23
  614. package/lib/chevre/service/reserve/searchByOrder.js +33 -20
  615. package/lib/chevre/service/reserve/useReservation.js +75 -36
  616. package/lib/chevre/service/reserve/verifyToken4reservation.js +30 -14
  617. package/lib/chevre/service/reserveCOA/cancelReservation.js +30 -17
  618. package/lib/chevre/service/reserveCOA/factory.js +29 -2
  619. package/lib/chevre/service/task/acceptCOAOffer.js +44 -26
  620. package/lib/chevre/service/task/aggregateOffers.js +26 -12
  621. package/lib/chevre/service/task/aggregateOnSystem.js +4 -14
  622. package/lib/chevre/service/task/aggregateScreeningEvent.js +27 -13
  623. package/lib/chevre/service/task/authorizePayment.js +32 -15
  624. package/lib/chevre/service/task/cancelMoneyTransfer.js +3 -12
  625. package/lib/chevre/service/task/cancelPendingReservation.js +34 -21
  626. package/lib/chevre/service/task/cancelReservation.js +26 -12
  627. package/lib/chevre/service/task/checkMovieTicket.js +39 -19
  628. package/lib/chevre/service/task/checkResource.js +30 -16
  629. package/lib/chevre/service/task/confirmMoneyTransfer.js +3 -12
  630. package/lib/chevre/service/task/confirmPayTransaction.js +6 -12
  631. package/lib/chevre/service/task/confirmRegisterService.js +3 -12
  632. package/lib/chevre/service/task/confirmRegisterServiceTransaction.js +51 -32
  633. package/lib/chevre/service/task/confirmReserveTransaction.js +72 -46
  634. package/lib/chevre/service/task/createAccountingReport.js +37 -20
  635. package/lib/chevre/service/task/deletePerson.js +77 -63
  636. package/lib/chevre/service/task/deleteTransaction.js +26 -12
  637. package/lib/chevre/service/task/givePointAward.js +27 -13
  638. package/lib/chevre/service/task/handleNotification.js +4 -14
  639. package/lib/chevre/service/task/importEventCapacitiesFromCOA.js +31 -18
  640. package/lib/chevre/service/task/importEventsFromCOA.js +31 -18
  641. package/lib/chevre/service/task/importOffersFromCOA.js +33 -20
  642. package/lib/chevre/service/task/invalidatePaymentUrl.js +6 -12
  643. package/lib/chevre/service/task/moneyTransfer.js +27 -13
  644. package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +3 -12
  645. package/lib/chevre/service/task/onAuthorizationCreated.js +34 -19
  646. package/lib/chevre/service/task/onEventChanged.js +3 -12
  647. package/lib/chevre/service/task/onOrderPaymentCompleted.js +3 -12
  648. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByAggregateOffer.d.ts +13 -0
  649. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByAggregateOffer.js +67 -0
  650. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByEventSeries.d.ts +13 -0
  651. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByEventSeries.js +70 -0
  652. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByMovieTheater.d.ts +15 -0
  653. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByMovieTheater.js +72 -0
  654. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByOfferCatalog.d.ts +17 -0
  655. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByOfferCatalog.js +89 -0
  656. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByProduct.d.ts +19 -0
  657. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByProduct.js +74 -0
  658. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByRoom.d.ts +20 -0
  659. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByRoom.js +65 -0
  660. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesBySeller.d.ts +27 -0
  661. package/lib/chevre/service/task/onResourceDeleted/deleteResourcesBySeller.js +113 -0
  662. package/lib/chevre/service/task/onResourceDeleted.d.ts +6 -0
  663. package/lib/chevre/service/task/onResourceDeleted.js +181 -0
  664. package/lib/chevre/service/task/onResourceUpdated/onAggregateOfferUpdated.js +32 -21
  665. package/lib/chevre/service/task/onResourceUpdated/onCategoryCodeUpdated.js +3 -12
  666. package/lib/chevre/service/task/onResourceUpdated/onHasPOSUpdated.js +34 -23
  667. package/lib/chevre/service/task/onResourceUpdated/onOfferCatalogUpdated.js +36 -25
  668. package/lib/chevre/service/task/onResourceUpdated/syncCategoryCode.js +32 -15
  669. package/lib/chevre/service/task/onResourceUpdated/syncOfferCatalog.js +44 -27
  670. package/lib/chevre/service/task/onResourceUpdated.js +285 -144
  671. package/lib/chevre/service/task/pay.js +31 -16
  672. package/lib/chevre/service/task/payment/invalidatePaymentUrlByTask.js +28 -15
  673. package/lib/chevre/service/task/payment/payByTask.js +81 -44
  674. package/lib/chevre/service/task/payment/refundByTask.js +34 -21
  675. package/lib/chevre/service/task/payment/voidPaymentByTask.js +33 -19
  676. package/lib/chevre/service/task/placeOrder.js +6 -12
  677. package/lib/chevre/service/task/publishPaymentUrl.js +32 -14
  678. package/lib/chevre/service/task/refund.js +31 -16
  679. package/lib/chevre/service/task/registerService.js +3 -12
  680. package/lib/chevre/service/task/reserve.js +3 -12
  681. package/lib/chevre/service/task/returnMoneyTransfer.js +26 -12
  682. package/lib/chevre/service/task/returnOrder.js +6 -12
  683. package/lib/chevre/service/task/returnPayTransaction.js +83 -52
  684. package/lib/chevre/service/task/returnPointAward.js +27 -13
  685. package/lib/chevre/service/task/returnReserveTransaction.js +60 -35
  686. package/lib/chevre/service/task/sendEmailMessage.js +6 -13
  687. package/lib/chevre/service/task/sendOrder.js +35 -15
  688. package/lib/chevre/service/task/syncResourcesFromCOA.js +74 -52
  689. package/lib/chevre/service/task/triggerWebhook.js +6 -12
  690. package/lib/chevre/service/task/useReservation.js +11 -14
  691. package/lib/chevre/service/task/voidMoneyTransferTransaction.js +3 -12
  692. package/lib/chevre/service/task/voidPayTransaction.js +7 -12
  693. package/lib/chevre/service/task/voidPayment.js +26 -12
  694. package/lib/chevre/service/task/voidRegisterServiceTransaction.js +3 -12
  695. package/lib/chevre/service/task/voidReserveTransaction.js +34 -17
  696. package/lib/chevre/service/task.js +43 -27
  697. package/lib/chevre/service/taskHandler/onOperationFailed/informTaskIfNeeded.js +37 -22
  698. package/lib/chevre/service/taskHandler/onOperationFailed.js +43 -17
  699. package/lib/chevre/service/taskHandler.js +50 -26
  700. package/lib/chevre/service/transaction/deleteTransaction.js +127 -88
  701. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.js +45 -13
  702. package/lib/chevre/service/transaction/moneyTransfer/factory.js +37 -5
  703. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.js +35 -24
  704. package/lib/chevre/service/transaction/moneyTransfer.js +151 -104
  705. package/lib/chevre/service/transaction/placeOrder/confirm/factory/result.js +24 -1
  706. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions/sendEmailMessage.js +73 -52
  707. package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions.js +14 -25
  708. package/lib/chevre/service/transaction/placeOrder/confirm/publishCode.js +27 -14
  709. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateInvoiceReferencesOrder.js +32 -7
  710. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateMovieTicket.js +32 -9
  711. package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.js +26 -4
  712. package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +59 -50
  713. package/lib/chevre/service/transaction/placeOrder/confirm.js +108 -66
  714. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +61 -19
  715. package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +34 -17
  716. package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.js +29 -15
  717. package/lib/chevre/service/transaction/placeOrder/publishOrderNumberIfNotExist.js +30 -16
  718. package/lib/chevre/service/transaction/placeOrder/start/factory.js +51 -8
  719. package/lib/chevre/service/transaction/placeOrder/start/validateStartRequest.js +77 -61
  720. package/lib/chevre/service/transaction/placeOrder/start.js +37 -18
  721. package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +43 -11
  722. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +200 -191
  723. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPointAward.js +98 -89
  724. package/lib/chevre/service/transaction/returnOrder/potentialActions/sendEmailMessage.js +64 -49
  725. package/lib/chevre/service/transaction/returnOrder/potentialActions.js +75 -56
  726. package/lib/chevre/service/transaction/returnOrder/preStart/findApplicableReturnPolicy.js +142 -120
  727. package/lib/chevre/service/transaction/returnOrder/preStart/getReturnPolicyByProject.js +83 -80
  728. package/lib/chevre/service/transaction/returnOrder/preStart.js +70 -49
  729. package/lib/chevre/service/transaction/returnOrder.js +60 -39
  730. package/lib/chevre/service/transaction.js +101 -49
  731. package/lib/chevre/service/validation/validateEvent.js +3 -12
  732. package/lib/chevre/service/validation/validateOrder.js +41 -26
  733. package/lib/chevre/service.js +113 -136
  734. package/lib/chevre/settings/aggregation.js +4 -0
  735. package/lib/chevre/settings.js +7 -1
  736. package/lib/index.js +24 -2
  737. package/package.json +18 -19
  738. package/example/src/chevre/addEventBySchedule.ts +0 -46
  739. package/example/src/chevre/event/upsertManyScreeningEventByIdentifier.ts +0 -191
  740. package/example/src/chevre/eventSeries/migrateEventSeriesOffers.ts +0 -75
  741. package/example/src/chevre/eventSeries/migrateEventSeriesUnacceptedPaymentMethod.ts +0 -93
  742. package/example/src/chevre/offers/createSampleOffers.ts +0 -154
  743. package/example/src/chevre/settings/addSettings.ts +0 -46
  744. package/example/src/chevre/upsertScreeningEventSeriesByVersion.ts +0 -102
  745. package/example/src/idaas/auth0/adminApplications.ts +0 -183
  746. package/example/src/idaas/auth0/getToken.ts +0 -55
  747. package/example/src/idaas/auth0/getTokenByPrivateKeyJWT.ts +0 -84
  748. package/lib/chevre/service/eventOld.d.ts +0 -60
  749. package/lib/chevre/service/eventOld.js +0 -864
  750. package/lib/chevre/service/task/createEvent/createEvent.d.ts +0 -25
  751. package/lib/chevre/service/task/createEvent/createEvent.js +0 -45
  752. package/lib/chevre/service/task/createEvent/createEventBySchedule/factory.d.ts +0 -22
  753. package/lib/chevre/service/task/createEvent/createEventBySchedule/factory.js +0 -188
  754. package/lib/chevre/service/task/createEvent/createEventBySchedule/schedule2events.d.ts +0 -15
  755. package/lib/chevre/service/task/createEvent/createEventBySchedule/schedule2events.js +0 -116
  756. package/lib/chevre/service/task/createEvent/createEventBySchedule.d.ts +0 -25
  757. package/lib/chevre/service/task/createEvent/createEventBySchedule.js +0 -107
  758. package/lib/chevre/service/task/createEvent/createEventSeries.d.ts +0 -13
  759. package/lib/chevre/service/task/createEvent/createEventSeries.js +0 -118
  760. package/lib/chevre/service/task/createEvent.d.ts +0 -6
  761. package/lib/chevre/service/task/createEvent.js +0 -46
  762. package/lib/chevre/service/task/onResourceUpdated/onResourceDeleted.d.ts +0 -45
  763. package/lib/chevre/service/task/onResourceUpdated/onResourceDeleted.js +0 -447
@@ -1,864 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.importFromCOA = importFromCOA;
13
- exports.createScreeningEventIdFromCOA = createScreeningEventIdFromCOA;
14
- const createDebug = require("debug");
15
- // @ts-ignore
16
- const difference = require("lodash.difference");
17
- // import { google } from 'googleapis';
18
- const moment = require("moment-timezone");
19
- const factory = require("../factory");
20
- const debug = createDebug('chevre-domain:service:event');
21
- /**
22
- * イベントをインポートする
23
- */
24
- function importFromCOA(params) {
25
- // tslint:disable-next-line:max-func-body-length
26
- return (repos) => __awaiter(this, void 0, void 0, function* () {
27
- // 施設更新アクションを分離(2024-04-26~)
28
- const { seller, movieTheater, screeningRooms } = yield processUpdateMovieTheater(params)(repos);
29
- // const targetImportFrom = moment(`${moment(params.importFrom)
30
- // .tz('Asia/Tokyo')
31
- // .format('YYYY-MM-DD')}T00:00:00+09:00`);
32
- // const targetImportThrough = moment(`${moment(params.importThrough)
33
- // .tz('Asia/Tokyo')
34
- // .format('YYYY-MM-DD')}T00:00:00+09:00`)
35
- // .add(1, 'day');
36
- const targetImportFrom = moment(params.importFrom)
37
- .tz('Asia/Tokyo')
38
- .startOf('day');
39
- const targetImportThrough = moment(params.importThrough)
40
- .tz('Asia/Tokyo')
41
- .endOf('day');
42
- const begin = moment(targetImportFrom)
43
- .add(-1, 'day') // 深夜帯スケジュールが前日検索の結果に含まれるため
44
- .tz('Asia/Tokyo')
45
- .format('YYYYMMDD'); // COAは日本時間で判断
46
- const end = moment(targetImportThrough)
47
- // .add(-1, 'day')
48
- .tz('Asia/Tokyo')
49
- .format('YYYYMMDD'); // COAは日本時間で判断
50
- debug('importing screening events...', targetImportFrom, targetImportThrough, begin, end);
51
- const instrument = {
52
- theaterCode: params.locationBranchCode, // debug(2024-04-26~)
53
- begin, // debug(2024-04-24~)
54
- end, // debug(2024-04-24~)
55
- typeOf: 'WebAPI',
56
- identifier: factory.service.webAPI.Identifier.COA
57
- };
58
- const actionAttributes = {
59
- project: { typeOf: factory.organizationType.Project, id: params.project.id },
60
- // typeOf: factory.actionType.UpdateAction,
61
- typeOf: factory.actionType.ReplaceAction, // Replaceに変更(2024-04-26~)
62
- agent: { typeOf: factory.organizationType.Project, id: params.project.id },
63
- object: Object.assign(Object.assign({}, params), { startDate: `${moment(targetImportFrom) // debug(2024-04-26~)
64
- .toISOString()}/${moment(targetImportThrough)
65
- .toISOString()}`, superEvent: { location: { branchCode: params.locationBranchCode } }, typeOf: factory.eventType.ScreeningEvent }),
66
- instrument,
67
- targetCollection: { typeOf: factory.eventType.ScreeningEvent }
68
- };
69
- const action = yield repos.action.start(actionAttributes);
70
- let savedScreeningEventsCount = 0;
71
- let savedScreeningEventSeriesCount = 0;
72
- let cancelledIds = [];
73
- let processTime;
74
- try {
75
- let screeningEventSerieses;
76
- if (params.saveScreeningEventSeries === true) {
77
- const saveScreeningEventSeriesResult = yield saveScreeningEventSeries({
78
- locationBranchCode: params.locationBranchCode,
79
- movieTheater,
80
- project: params.project,
81
- saveScreeningEventSeries: params.saveScreeningEventSeries,
82
- saveScreeningEventSeriesPeriodInMonth: params.saveScreeningEventSeriesPeriodInMonth,
83
- seller: { id: seller.id }
84
- })(repos);
85
- screeningEventSerieses = saveScreeningEventSeriesResult.screeningEventSerieses;
86
- savedScreeningEventSeriesCount = saveScreeningEventSeriesResult.savedEventsCount;
87
- }
88
- else {
89
- // 施設コンテンツを保管しない場合、DBから施設コンテンツを検索するので、ここでは何もしない(2024-09-09~)
90
- }
91
- try {
92
- // イベント永続化
93
- const processStart = process.hrtime.bigint();
94
- const screeningEvents = yield saveScreeningEvents(Object.assign({ movieTheater,
95
- screeningRooms, project: params.project, targetImportFrom: targetImportFrom.toDate(), targetImportThrough: targetImportThrough.toDate(), seller: { id: seller.id }, instrument }, (Array.isArray(screeningEventSerieses)) ? { screeningEventSerieses } : undefined))(repos);
96
- savedScreeningEventsCount = screeningEvents.length;
97
- // COAから削除されたイベントをキャンセル済ステータスへ変更
98
- cancelledIds = yield cancelDeletedEvents({
99
- project: params.project,
100
- locationBranchCode: params.locationBranchCode,
101
- targetImportFrom: targetImportFrom.toDate(),
102
- targetImportThrough: targetImportThrough.toDate(),
103
- idsShouldBe: screeningEvents.map((e) => e.id)
104
- })(repos);
105
- const processEnd = process.hrtime.bigint();
106
- processTime = processEnd - processStart;
107
- }
108
- catch (error) {
109
- let throwsError = true;
110
- if (error.name === 'AbortError') {
111
- // tslint:disable-next-line:no-console
112
- console.error('saveScreeningEvents throwed an error', error.name, error.message);
113
- throwsError = false;
114
- }
115
- if (error.name === 'COAServiceError') {
116
- if (error.message === 'ESOCKETTIMEDOUT') {
117
- // tslint:disable-next-line:no-console
118
- console.error('saveScreeningEvents throwed an error', error.name, error.message);
119
- throwsError = false;
120
- }
121
- }
122
- if (throwsError) {
123
- throw error;
124
- }
125
- }
126
- }
127
- catch (error) {
128
- try {
129
- yield repos.action.giveUp({ typeOf: action.typeOf, id: action.id, error });
130
- }
131
- catch (__) {
132
- // 失敗したら仕方ない
133
- }
134
- throw error;
135
- }
136
- const actionResult = Object.assign({ cancelledIds, // キャンセルイベント保管(2024-04-26~)
137
- savedScreeningEventsCount,
138
- savedScreeningEventSeriesCount }, (processTime !== undefined) ? { processTime } : undefined);
139
- yield repos.action.completeWithVoid({ typeOf: action.typeOf, id: action.id, result: actionResult });
140
- });
141
- }
142
- // tslint:disable-next-line:max-func-body-length
143
- function processUpdateMovieTheater(params) {
144
- return (repos) => __awaiter(this, void 0, void 0, function* () {
145
- const actionAttributes = {
146
- project: { typeOf: factory.organizationType.Project, id: params.project.id },
147
- typeOf: factory.actionType.ReplaceAction,
148
- agent: { typeOf: factory.organizationType.Project, id: params.project.id },
149
- object: Object.assign(Object.assign({}, params), { branchCode: params.locationBranchCode, typeOf: factory.placeType.MovieTheater }),
150
- instrument: {
151
- theaterCode: params.locationBranchCode,
152
- typeOf: 'WebAPI',
153
- identifier: factory.service.webAPI.Identifier.COA
154
- },
155
- targetCollection: { typeOf: factory.placeType.MovieTheater }
156
- };
157
- const action = yield repos.action.start(actionAttributes);
158
- let seller;
159
- let movieTheater;
160
- let screeningRooms;
161
- let processTime;
162
- try {
163
- // 同ブランチコードの販売者を検索する
164
- const sellersWithSameBranchCode = yield repos.seller.projectFields({
165
- limit: 1,
166
- page: 1,
167
- project: { id: { $eq: params.project.id } },
168
- branchCode: { $eq: params.locationBranchCode }
169
- }, ['id']);
170
- const sellerWithSameBranchCode = sellersWithSameBranchCode.shift();
171
- if (typeof (sellerWithSameBranchCode === null || sellerWithSameBranchCode === void 0 ? void 0 : sellerWithSameBranchCode.id) !== 'string') {
172
- throw new factory.errors.NotFound('Seller', `Seller with branchCode '${params.locationBranchCode}' not found`);
173
- }
174
- seller = { id: sellerWithSameBranchCode.id };
175
- // saveMovieTheater:trueの場合のみ、施設保管(2022-10-10~)
176
- if (params.saveMovieTheater === true) {
177
- const processStart = process.hrtime.bigint();
178
- const savingMovieTheater = createMovieTheaterFromCOA(params.project, { id: seller.id }, yield repos.masterService.theater({ theaterCode: params.locationBranchCode }), yield repos.masterService.screen({ theaterCode: params.locationBranchCode }));
179
- yield repos.movieTheater.saveMovieTheaterByBranchCode4coa(savingMovieTheater);
180
- yield repos.screeningRoom.saveScreeningRooms4coa(savingMovieTheater);
181
- const processEnd = process.hrtime.bigint();
182
- processTime = processEnd - processStart;
183
- }
184
- const movieTheaters = yield repos.movieTheater.projectFields({
185
- limit: 1,
186
- page: 1,
187
- project: { id: { $eq: params.project.id } },
188
- branchCode: { $eq: params.locationBranchCode }
189
- }, ['id', 'typeOf', 'branchCode', 'name', 'kanaName']
190
- // []
191
- );
192
- movieTheater = movieTheaters.shift();
193
- if (movieTheater === undefined) {
194
- throw new factory.errors.NotFound(factory.placeType.MovieTheater);
195
- }
196
- screeningRooms = yield repos.screeningRoom.searchScreeningRooms({
197
- project: { id: { $eq: params.project.id } },
198
- containedInPlace: { branchCode: { $eq: movieTheater.branchCode } }
199
- });
200
- }
201
- catch (error) {
202
- try {
203
- yield repos.action.giveUp({ typeOf: action.typeOf, id: action.id, error });
204
- }
205
- catch (__) {
206
- // 失敗したら仕方ない
207
- }
208
- throw error;
209
- }
210
- const actionResult = Object.assign({ screeningRoomsCount: screeningRooms.length }, (processTime !== undefined) ? { processTime } : undefined);
211
- yield repos.action.completeWithVoid({ typeOf: action.typeOf, id: action.id, result: actionResult });
212
- return { seller, movieTheater, screeningRooms };
213
- });
214
- }
215
- function saveScreeningEventSeries(params) {
216
- // tslint:disable-next-line:max-func-body-length
217
- return (repos) => __awaiter(this, void 0, void 0, function* () {
218
- const { importingIds } = params;
219
- const project = params.project;
220
- // COAから作品取得
221
- const filmsFromCOA = yield repos.masterService.title({
222
- theaterCode: params.locationBranchCode
223
- });
224
- // COAから区分マスター抽出
225
- const eirinKubuns = yield repos.masterService.kubunName({
226
- theaterCode: params.locationBranchCode,
227
- kubunClass: '044'
228
- });
229
- const eizouKubuns = yield repos.masterService.kubunName({
230
- theaterCode: params.locationBranchCode,
231
- kubunClass: '042'
232
- });
233
- const joueihousikiKubuns = yield repos.masterService.kubunName({
234
- theaterCode: params.locationBranchCode,
235
- kubunClass: '045'
236
- });
237
- const jimakufukikaeKubuns = yield repos.masterService.kubunName({
238
- theaterCode: params.locationBranchCode,
239
- kubunClass: '043'
240
- });
241
- debug('kubunNames found.');
242
- const availablePaymentMethodTypes = yield repos.categoryCode.projectCategoryCodeFields({
243
- project: { id: { $eq: params.project.id } },
244
- inCodeSet: { identifier: { $eq: factory.categoryCode.CategorySetIdentifier.PaymentMethodType } }
245
- }, ['additionalProperty', 'codeValue']);
246
- const screeningEventSerieses = filmsFromCOA.map((filmFromCOA) => {
247
- return createScreeningEventSeriesFromCOA({
248
- project: project,
249
- filmFromCOA: filmFromCOA,
250
- movieTheater: params.movieTheater,
251
- eirinKubuns: eirinKubuns,
252
- eizouKubuns: eizouKubuns,
253
- joueihousikiKubuns: joueihousikiKubuns,
254
- jimakufukikaeKubuns: jimakufukikaeKubuns,
255
- availablePaymentMethodTypes,
256
- seller: params.seller
257
- });
258
- });
259
- const COA_IMPORT_SCREENING_EVENT_SERIES_PERIOD_IN_MONTH = (typeof params.saveScreeningEventSeriesPeriodInMonth === 'number')
260
- ? params.saveScreeningEventSeriesPeriodInMonth
261
- // tslint:disable-next-line:no-magic-numbers
262
- : 3;
263
- let savedEventsCount = 0;
264
- // saveScreeningEventSeries:trueの場合のみ保管(2022-10-10~)
265
- if (params.saveScreeningEventSeries === true) {
266
- let saveParams;
267
- if (Array.isArray(importingIds) && importingIds.length > 0) {
268
- saveParams = screeningEventSerieses
269
- .filter((screeningEventSeries) => importingIds.includes(screeningEventSeries.id))
270
- .map((screeningEventSeries) => {
271
- return {
272
- id: screeningEventSeries.id,
273
- attributes: screeningEventSeries,
274
- upsert: true
275
- };
276
- });
277
- }
278
- else {
279
- // 更新対象が無限に増えるのを防ぐためにstartDateでフィルター
280
- const someMonthsAgo = moment()
281
- .add(-COA_IMPORT_SCREENING_EVENT_SERIES_PERIOD_IN_MONTH, 'months');
282
- saveParams = screeningEventSerieses
283
- .filter((screeningEventSeries) => {
284
- return moment(screeningEventSeries.startDate)
285
- .isAfter(someMonthsAgo);
286
- })
287
- .map((screeningEventSeries) => {
288
- return {
289
- id: screeningEventSeries.id,
290
- attributes: screeningEventSeries,
291
- upsert: true
292
- };
293
- });
294
- }
295
- debug('saving', saveParams.length, 'ScreeningEventSeries...');
296
- yield repos.eventSeries.upsertManyEventSeriesById4sskts(saveParams);
297
- debug('saved', saveParams.length, 'ScreeningEventSeries');
298
- savedEventsCount = saveParams.length;
299
- // コンテンツ永続化(2023-10-23~)
300
- try {
301
- debug('saving', saveParams.length, 'movies...');
302
- yield repos.creativeWork.upsertMoviesByIdentifier(saveParams.map((saveScreeningEventSeriesParams) => {
303
- var _a;
304
- return {
305
- $set: Object.assign(Object.assign({ typeOf: factory.creativeWorkType.Movie, project: params.project, identifier: saveScreeningEventSeriesParams.attributes.workPerformed.identifier, name: { ja: (_a = saveScreeningEventSeriesParams.attributes.workPerformed.name) === null || _a === void 0 ? void 0 : _a.ja }, offers: { typeOf: factory.offerType.Offer } }, (typeof saveScreeningEventSeriesParams.attributes.workPerformed.contentRating === 'string')
306
- ? { contentRating: saveScreeningEventSeriesParams.attributes.workPerformed.contentRating }
307
- : undefined), (typeof saveScreeningEventSeriesParams.attributes.workPerformed.duration === 'string')
308
- ? { duration: saveScreeningEventSeriesParams.attributes.workPerformed.duration }
309
- : undefined)
310
- };
311
- }));
312
- debug('saved', saveParams.length, 'movies');
313
- }
314
- catch (error) {
315
- // tslint:disable-next-line:no-console
316
- console.error('failed in upsertMoviesByIdentifier', error);
317
- }
318
- }
319
- return { screeningEventSerieses, savedEventsCount };
320
- });
321
- }
322
- function saveScreeningEvents(params) {
323
- return (repos) => __awaiter(this, void 0, void 0, function* () {
324
- const screeningEvents = yield createScreeningEvents(params)(repos);
325
- // 永続化
326
- debug(`storing ${screeningEvents.length} screeningEvents...`);
327
- const saveParams = [];
328
- for (const screeningEvent of screeningEvents) {
329
- try {
330
- const attributes = screeningEvent;
331
- saveParams.push({
332
- id: screeningEvent.id,
333
- attributes: attributes,
334
- upsert: true
335
- });
336
- }
337
- catch (error) {
338
- // no op
339
- }
340
- }
341
- yield repos.event.saveManyEvents(saveParams);
342
- debug(`${screeningEvents.length} screeningEvents stored.`);
343
- return screeningEvents;
344
- });
345
- }
346
- function createScreeningEvents(params) {
347
- // tslint:disable-next-line:max-func-body-length
348
- return (repos) => __awaiter(this, void 0, void 0, function* () {
349
- const project = params.project;
350
- if (typeof params.instrument.begin !== 'string') {
351
- throw new factory.errors.ArgumentNull('instrument.begin');
352
- }
353
- if (typeof params.instrument.end !== 'string') {
354
- throw new factory.errors.ArgumentNull('instrument.end');
355
- }
356
- // COAからイベント取得;
357
- const schedulesFromCOA = yield repos.masterService.schedule({
358
- theaterCode: params.instrument.theaterCode,
359
- begin: params.instrument.begin, // COAは日本時間で判断
360
- end: params.instrument.end // COAは日本時間で判断
361
- });
362
- // COAから区分マスター抽出
363
- const serviceKubuns = yield repos.masterService.kubunName({
364
- theaterCode: params.instrument.theaterCode,
365
- kubunClass: '009'
366
- });
367
- const acousticKubuns = yield repos.masterService.kubunName({
368
- theaterCode: params.instrument.theaterCode,
369
- kubunClass: '046'
370
- });
371
- let screeningEventSerieses;
372
- if (Array.isArray(params.screeningEventSerieses)) {
373
- screeningEventSerieses = params.screeningEventSerieses;
374
- }
375
- else {
376
- // 指定がなければDBから検索する(2024-09-09~)
377
- const importingEventSeriesIds = [...new Set(schedulesFromCOA.map((scheduleFromCOA) => {
378
- return createScreeningEventSeriesId({
379
- theaterCode: params.instrument.theaterCode,
380
- titleCode: scheduleFromCOA.titleCode,
381
- titleBranchNum: scheduleFromCOA.titleBranchNum
382
- });
383
- }))];
384
- debug('searching eventSeries... importingEventSeriesIds:', importingEventSeriesIds);
385
- if (importingEventSeriesIds.length > 0) {
386
- screeningEventSerieses = yield repos.eventSeries.projectEventSeriesFields({
387
- id: { $in: importingEventSeriesIds },
388
- project: { id: { $eq: params.project.id } }
389
- }, [
390
- 'project', 'typeOf', 'eventStatus', 'identifier',
391
- 'name', 'kanaName', 'alternativeHeadline', 'location',
392
- 'organizer', 'videoFormat', 'soundFormat', 'workPerformed',
393
- 'duration', 'endDate', 'startDate', 'coaInfo',
394
- 'offers', 'additionalProperty'
395
- ]);
396
- debug(screeningEventSerieses.length, 'screeningEventSerieses for importing events found.');
397
- // 万が一未インポートの施設コンテンツがあれば強制的にインポート(2024-09-09~)
398
- if (screeningEventSerieses.length < importingEventSeriesIds.length) {
399
- const saveScreeningEventSeriesResult = yield saveScreeningEventSeries({
400
- locationBranchCode: params.instrument.theaterCode,
401
- movieTheater: params.movieTheater,
402
- project: params.project,
403
- saveScreeningEventSeries: true,
404
- saveScreeningEventSeriesPeriodInMonth: 0, // importingIds指定するので0でok
405
- seller: { id: params.seller.id },
406
- importingIds: importingEventSeriesIds
407
- })(repos);
408
- screeningEventSerieses = saveScreeningEventSeriesResult.screeningEventSerieses;
409
- }
410
- }
411
- else {
412
- screeningEventSerieses = [];
413
- }
414
- }
415
- // イベントごとに永続化トライ
416
- const screeningEvents = [];
417
- schedulesFromCOA.forEach((scheduleFromCOA) => {
418
- const screeningEventSeriesId = createScreeningEventSeriesId({
419
- theaterCode: params.instrument.theaterCode,
420
- titleCode: scheduleFromCOA.titleCode,
421
- titleBranchNum: scheduleFromCOA.titleBranchNum
422
- });
423
- // ルーム存在チェック
424
- const screenRoom = params.screeningRooms.find((place) => place.branchCode === scheduleFromCOA.screenCode);
425
- // const screenRoom = <factory.place.screeningRoom.IPlace | undefined>movieTheater.containsPlace.find(
426
- // (place) => place.branchCode === scheduleFromCOA.screenCode
427
- // );
428
- if (screenRoom === undefined) {
429
- // tslint:disable-next-line:no-console
430
- console.error('screenRoom not found.', scheduleFromCOA.screenCode);
431
- return;
432
- }
433
- // イベントシリーズ取得
434
- const screeningEventSeries = screeningEventSerieses.find((e) => e.id === screeningEventSeriesId);
435
- if (screeningEventSeries === undefined) {
436
- // tslint:disable-next-line:no-console
437
- console.error('screeningEventSeries not found.', screeningEventSeriesId);
438
- return;
439
- }
440
- const screeningEvent = createScreeningEventFromCOA({
441
- project: project,
442
- performanceFromCOA: scheduleFromCOA,
443
- screenRoom: screenRoom,
444
- superEvent: screeningEventSeries,
445
- serviceKubuns: serviceKubuns,
446
- acousticKubuns: acousticKubuns,
447
- seller: params.seller
448
- });
449
- // インポート期間で確実に絞る(2024-04-25~)
450
- const isStartDateInTarget = moment(screeningEvent.startDate)
451
- .isBetween(params.targetImportFrom, params.targetImportThrough, 'second', '[]');
452
- if (isStartDateInTarget) {
453
- screeningEvents.push(screeningEvent);
454
- }
455
- });
456
- debug('createScreeningEvents processed', params.targetImportFrom, params.targetImportThrough, params.instrument.begin, params.instrument.end, 'schedulesFromCOA.length:', schedulesFromCOA.length, 'screeningEvents.length:', screeningEvents.length);
457
- return screeningEvents;
458
- });
459
- }
460
- function cancelDeletedEvents(params) {
461
- return (repos) => __awaiter(this, void 0, void 0, function* () {
462
- // distinctでidのみ取得(2023-01-25~)
463
- // COAから削除されたイベントをキャンセル済ステータスへ変更
464
- const ids = yield repos.event.searchEventIds({
465
- project: { id: { $eq: params.project.id } },
466
- typeOf: factory.eventType.ScreeningEvent,
467
- superEvent: {
468
- locationBranchCodes: [params.locationBranchCode]
469
- },
470
- startFrom: params.targetImportFrom,
471
- startThrough: params.targetImportThrough
472
- });
473
- const idsShouldBe = params.idsShouldBe;
474
- const cancelledIds = difference(ids, idsShouldBe);
475
- debug(`cancelling ${cancelledIds.length} events...`);
476
- for (const cancelledId of cancelledIds) {
477
- try {
478
- yield repos.event.cancelEvent({
479
- id: cancelledId,
480
- project: { id: params.project.id }
481
- });
482
- }
483
- catch (error) {
484
- // no op
485
- }
486
- }
487
- debug(`${cancelledIds.length} events cancelled.`);
488
- return cancelledIds;
489
- });
490
- }
491
- function minimizeSuperEvent(params) {
492
- const { workPerformed, videoFormat, startDate, soundFormat, name, location, kanaName, identifier, endDate, duration, coaInfo, alternativeHeadline,
493
- // additionalProperty,
494
- typeOf, id
495
- // project,
496
- // organizer,
497
- // offers,
498
- // eventStatus
499
- } = params.superEvent;
500
- return {
501
- workPerformed, videoFormat, startDate, soundFormat,
502
- name, location, kanaName, identifier,
503
- endDate, duration, coaInfo, alternativeHeadline,
504
- // additionalProperty,
505
- typeOf, id
506
- };
507
- }
508
- /**
509
- * コアデータからイベントを作成する
510
- */
511
- function createScreeningEventFromCOA(params) {
512
- const id = createScreeningEventIdFromCOA({
513
- theaterCode: params.superEvent.location.branchCode,
514
- titleCode: params.superEvent.workPerformed.identifier,
515
- titleBranchNum: params.performanceFromCOA.titleBranchNum,
516
- dateJouei: params.performanceFromCOA.dateJouei,
517
- screenCode: params.performanceFromCOA.screenCode,
518
- timeBegin: params.performanceFromCOA.timeBegin
519
- });
520
- // COA情報を整形して開始日時と終了日時を作成('2500'のような日またぎの時刻入力に対応)
521
- const DAY = 2400;
522
- let timeBegin = params.performanceFromCOA.timeBegin;
523
- let timeEnd = params.performanceFromCOA.timeEnd;
524
- let addDay4startDate = 0;
525
- let addDay4endDate = 0;
526
- try {
527
- addDay4startDate += Math.floor(Number(timeBegin) / DAY);
528
- // tslint:disable-next-line:no-magic-numbers
529
- timeBegin = `0000${Number(timeBegin) % DAY}`.slice(-4);
530
- addDay4endDate += Math.floor(Number(timeEnd) / DAY);
531
- // tslint:disable-next-line:no-magic-numbers
532
- timeEnd = `0000${Number(timeEnd) % DAY}`.slice(-4);
533
- }
534
- catch (error) {
535
- // no op
536
- }
537
- let endDate = moment(`${params.performanceFromCOA.dateJouei} ${timeEnd} +09:00`, 'YYYYMMDD HHmm Z')
538
- .add(addDay4endDate, 'days')
539
- .toDate();
540
- const startDate = moment(`${params.performanceFromCOA.dateJouei} ${timeBegin} +09:00`, 'YYYYMMDD HHmm Z')
541
- .add(addDay4startDate, 'days')
542
- .toDate();
543
- // startDateの方が大きければ日またぎイベントなので調整
544
- // tslint:disable-next-line:no-single-line-block-comment
545
- /* istanbul ignore if */
546
- if (moment(startDate)
547
- .isAfter(moment(endDate))) {
548
- endDate = moment(endDate)
549
- .add(1, 'day')
550
- .toDate();
551
- }
552
- const offers = {
553
- typeOf: factory.offerType.Offer,
554
- offeredThrough: {
555
- typeOf: 'WebAPI',
556
- identifier: factory.service.webAPI.Identifier.COA
557
- },
558
- eligibleQuantity: {
559
- typeOf: 'QuantitativeValue',
560
- unitCode: factory.unitCode.C62,
561
- maxValue: Number(params.performanceFromCOA.availableNum)
562
- },
563
- itemOffered: {
564
- serviceOutput: {
565
- reservedTicket: {
566
- typeOf: 'Ticket',
567
- ticketedSeat: { typeOf: factory.placeType.Seat } // 必ず指定席
568
- }
569
- }
570
- },
571
- seller: {
572
- typeOf: factory.organizationType.Corporation,
573
- id: params.seller.id,
574
- // name: params.sellerFromDB.name,
575
- makesOffer: []
576
- }
577
- };
578
- const { additionalProperty, coaInfo } = createScreeningEventAdditionalPropertyFromCOA(params);
579
- const superEvent = minimizeSuperEvent({ superEvent: params.superEvent }); // optimize superEvent(2024-09-10~)
580
- return {
581
- project: { typeOf: params.project.typeOf, id: params.project.id },
582
- typeOf: factory.eventType.ScreeningEvent,
583
- id: id,
584
- identifier: id,
585
- name: params.superEvent.name,
586
- eventStatus: factory.eventStatusType.EventScheduled,
587
- location: {
588
- typeOf: params.screenRoom.typeOf,
589
- branchCode: params.screenRoom.branchCode,
590
- name: params.screenRoom.name
591
- },
592
- endDate: endDate,
593
- startDate: startDate,
594
- superEvent,
595
- coaInfo,
596
- offers: offers,
597
- checkInCount: 0,
598
- attendeeCount: 0,
599
- maximumAttendeeCapacity: params.screenRoom.maximumAttendeeCapacity,
600
- remainingAttendeeCapacity: params.screenRoom.maximumAttendeeCapacity,
601
- additionalProperty,
602
- organizer: { id: params.seller.id }
603
- };
604
- }
605
- function createScreeningEventAdditionalPropertyFromCOA(params) {
606
- const coaInfo = {
607
- theaterCode: params.superEvent.location.branchCode,
608
- dateJouei: params.performanceFromCOA.dateJouei,
609
- titleCode: params.performanceFromCOA.titleCode,
610
- titleBranchNum: params.performanceFromCOA.titleBranchNum,
611
- timeBegin: params.performanceFromCOA.timeBegin,
612
- timeEnd: params.performanceFromCOA.timeEnd,
613
- screenCode: params.performanceFromCOA.screenCode,
614
- trailerTime: params.performanceFromCOA.trailerTime,
615
- kbnService: params.serviceKubuns.filter((kubun) => kubun.kubunCode === params.performanceFromCOA.kbnService)[0],
616
- kbnAcoustic: params.acousticKubuns.filter((kubun) => kubun.kubunCode === params.performanceFromCOA.kbnAcoustic)[0],
617
- nameServiceDay: params.performanceFromCOA.nameServiceDay,
618
- availableNum: params.performanceFromCOA.availableNum,
619
- rsvStartDate: params.performanceFromCOA.rsvStartDate,
620
- rsvEndDate: params.performanceFromCOA.rsvEndDate,
621
- flgEarlyBooking: params.performanceFromCOA.flgEarlyBooking
622
- };
623
- return {
624
- coaInfo,
625
- additionalProperty: [
626
- { name: 'coaInfo', value: JSON.stringify(coaInfo) }
627
- ]
628
- };
629
- }
630
- /**
631
- * 作品抽出結果から施設コンテンツを作成する
632
- */
633
- function createScreeningEventSeriesFromCOA(params) {
634
- const endDate = (moment(`${params.filmFromCOA.dateEnd} +09:00`, 'YYYYMMDD Z')
635
- .isValid())
636
- ? moment(`${params.filmFromCOA.dateEnd} +09:00`, 'YYYYMMDD Z')
637
- .toDate()
638
- : moment('2118-01-01T00:00:00+09:00') // 値がない場合、十分に長く
639
- .toDate();
640
- const startDate = (moment(`${params.filmFromCOA.dateBegin} +09:00`, 'YYYYMMDD Z')
641
- .isValid())
642
- ? moment(`${params.filmFromCOA.dateBegin} +09:00`, 'YYYYMMDD Z')
643
- .toDate()
644
- : moment('2018-01-01T00:00:00+09:00') // 値がない場合、十分に長く
645
- .toDate();
646
- // title_codeは施設をまたいで共有、title_branch_numは施設毎に管理
647
- const id = createScreeningEventSeriesId({
648
- theaterCode: params.movieTheater.branchCode,
649
- titleCode: params.filmFromCOA.titleCode,
650
- titleBranchNum: params.filmFromCOA.titleBranchNum
651
- });
652
- const { additionalProperty, coaInfo } = createScreeningEventSeriesAdditionalPropertyFromCOA(params);
653
- const { unacceptedPaymentMethod } = createScreeningEventSeriesUnacceptedPaymentMethodFromCOA(params);
654
- const workPerformed = Object.assign({
655
- // id: `${params.movieTheater.branchCode}-${params.filmFromCOA.titleCode}`, // discontinue(2025-01-03~)
656
- identifier: params.filmFromCOA.titleCode, name: {
657
- ja: params.filmFromCOA.titleNameOrig
658
- }, duration: moment.duration(params.filmFromCOA.showTime, 'm')
659
- .toISOString(), contentRating: params.eirinKubuns.filter((kubun) => kubun.kubunCode === params.filmFromCOA.kbnEirin)[0], typeOf: factory.creativeWorkType.Movie }, (typeof params.filmFromCOA.titleBranchNum === 'string' && params.filmFromCOA.titleBranchNum.length > 0)
660
- ? { version: params.filmFromCOA.titleBranchNum } // add version(2024-01-31~)
661
- : undefined);
662
- // redefine videoFormat(2024-09-18~)
663
- // const videoFormat: factory.event.screeningEventSeries.ICOAKubun =
664
- // params.eizouKubuns.filter((kubun) => kubun.kubunCode === params.filmFromCOA.kbnEizou)[0];
665
- const videoFormat = params.joueihousikiKubuns.filter(({ kubunCode }) => kubunCode === params.filmFromCOA.kbnJoueihousiki)
666
- .map(({ kubunCode }) => ({ typeOf: kubunCode, name: kubunCode }));
667
- return {
668
- project: { typeOf: params.project.typeOf, id: params.project.id },
669
- typeOf: factory.eventType.ScreeningEventSeries,
670
- eventStatus: factory.eventStatusType.EventScheduled,
671
- id: id,
672
- identifier: id,
673
- name: {
674
- ja: params.filmFromCOA.titleName,
675
- en: params.filmFromCOA.titleNameEng
676
- },
677
- kanaName: params.filmFromCOA.titleNameKana,
678
- alternativeHeadline: params.filmFromCOA.titleNameShort,
679
- location: {
680
- id: (params.movieTheater.id !== undefined) ? params.movieTheater.id : '',
681
- branchCode: params.movieTheater.branchCode,
682
- name: params.movieTheater.name,
683
- // 廃止(2024-03-05~)
684
- // kanaName: params.movieTheater.kanaName,
685
- typeOf: params.movieTheater.typeOf
686
- },
687
- // 必須化(2023-07-12~)
688
- organizer: { id: params.seller.id },
689
- videoFormat,
690
- soundFormat: [],
691
- workPerformed,
692
- duration: moment.duration(params.filmFromCOA.showTime, 'm')
693
- .toISOString(),
694
- endDate: endDate,
695
- startDate: startDate,
696
- coaInfo,
697
- offers: Object.assign({ typeOf: factory.offerType.Offer }, (Array.isArray(unacceptedPaymentMethod)) ? { unacceptedPaymentMethod: unacceptedPaymentMethod } : undefined),
698
- additionalProperty
699
- };
700
- }
701
- function createScreeningEventSeriesAdditionalPropertyFromCOA(params) {
702
- const coaInfo = Object.assign(Object.assign(Object.assign({ titleBranchNum: params.filmFromCOA.titleBranchNum, kbnEirin: params.eirinKubuns.filter((k) => k.kubunCode === params.filmFromCOA.kbnEirin)[0], kbnEizou: params.eizouKubuns.filter((k) => k.kubunCode === params.filmFromCOA.kbnEizou)[0], kbnJoueihousiki: params.joueihousikiKubuns.filter((k) => k.kubunCode === params.filmFromCOA.kbnJoueihousiki)[0], kbnJimakufukikae: params.jimakufukikaeKubuns.filter((k) => k.kubunCode === params.filmFromCOA.kbnJimakufukikae)[0], flgMvtkUse: params.filmFromCOA.flgMvtkUse, dateMvtkBegin: params.filmFromCOA.dateMvtkBegin }, (typeof params.filmFromCOA.flgMgtkUse === 'string') ? { flgMgtkUse: params.filmFromCOA.flgMgtkUse } : undefined), (typeof params.filmFromCOA.dateMgtkBegin === 'string') ? { dateMgtkBegin: params.filmFromCOA.dateMgtkBegin } : undefined), (typeof params.filmFromCOA.flgNotDiscount === 'string') ? { flgNotDiscount: params.filmFromCOA.flgNotDiscount } : undefined);
703
- return {
704
- coaInfo,
705
- additionalProperty: [
706
- // { name: 'coaInfo', value: JSON.stringify(coaInfo) } // discontinue(2024-09-13~)
707
- ]
708
- };
709
- }
710
- function createScreeningEventSeriesUnacceptedPaymentMethodFromCOA(params) {
711
- let unacceptedPaymentMethod;
712
- // flgMvtkUseはムビチケ、MGチケットの両方に適用される(<-flgMgtkUseが追加されるまで)(~2024-03-05)
713
- if (params.filmFromCOA.flgMvtkUse === '1') {
714
- // no op
715
- }
716
- else {
717
- if (!Array.isArray(unacceptedPaymentMethod)) {
718
- unacceptedPaymentMethod = [];
719
- }
720
- // flgMvtkUseで決済方法区分から動的に
721
- unacceptedPaymentMethod.push(...params.availablePaymentMethodTypes.filter(({ additionalProperty }) => { var _a; return ((_a = additionalProperty === null || additionalProperty === void 0 ? void 0 : additionalProperty.find(({ name }) => name === 'flgMvtkUse')) === null || _a === void 0 ? void 0 : _a.value) === '1'; })
722
- .map(({ codeValue }) => codeValue));
723
- }
724
- if (params.filmFromCOA.flgMgtkUse === '0') {
725
- if (!Array.isArray(unacceptedPaymentMethod)) {
726
- unacceptedPaymentMethod = [];
727
- }
728
- // flgMgtkUseで決済方法区分から動的に
729
- unacceptedPaymentMethod.push(...params.availablePaymentMethodTypes.filter(({ additionalProperty }) => { var _a; return ((_a = additionalProperty === null || additionalProperty === void 0 ? void 0 : additionalProperty.find(({ name }) => name === 'flgMgtkUse')) === null || _a === void 0 ? void 0 : _a.value) === '1'; })
730
- .map(({ codeValue }) => codeValue));
731
- }
732
- if (Array.isArray(unacceptedPaymentMethod)) {
733
- // 重複排除
734
- unacceptedPaymentMethod = [...new Set(unacceptedPaymentMethod)];
735
- }
736
- return { unacceptedPaymentMethod };
737
- }
738
- /**
739
- * COA情報からイベントIDを作成する
740
- */
741
- function createScreeningEventIdFromCOA(params) {
742
- return [
743
- createScreeningEventSeriesId(params),
744
- params.dateJouei,
745
- params.screenCode,
746
- params.timeBegin
747
- ].join('');
748
- }
749
- /**
750
- * COA情報からイベント識別子を作成する
751
- */
752
- // tslint:disable-next-line:no-single-line-block-comment
753
- /* istanbul ignore next */
754
- function createScreeningEventSeriesId(params) {
755
- return [
756
- params.theaterCode,
757
- params.titleCode,
758
- params.titleBranchNum
759
- ].join('');
760
- }
761
- /**
762
- * コアマスター抽出結果から作成する
763
- */
764
- // tslint:disable-next-line:no-single-line-block-comment
765
- /* istanbul ignore next */
766
- function createMovieTheaterFromCOA(project, seller, theaterFromCOA, screensFromCOA) {
767
- // const id = `MovieTheater-${theaterFromCOA.theaterCode}`;
768
- return {
769
- project: { typeOf: project.typeOf, id: project.id },
770
- // id: id,
771
- // screenCount: screensFromCOA.length,
772
- branchCode: theaterFromCOA.theaterCode,
773
- name: {
774
- ja: theaterFromCOA.theaterName,
775
- en: theaterFromCOA.theaterNameEng
776
- },
777
- kanaName: theaterFromCOA.theaterNameKana,
778
- containsPlace: screensFromCOA.map((screenFromCOA) => {
779
- return createScreeningRoomFromCOA(project, seller, screenFromCOA);
780
- }),
781
- typeOf: factory.placeType.MovieTheater,
782
- telephone: theaterFromCOA.theaterTelNum,
783
- offers: {
784
- // project: { typeOf: project.typeOf, id: project.id }, // optimize(2023-11-06~)
785
- // priceCurrency: factory.priceCurrency.JPY, // optimize(2023-11-06~)
786
- typeOf: factory.offerType.Offer,
787
- eligibleQuantity: {
788
- typeOf: 'QuantitativeValue',
789
- maxValue: 6,
790
- unitCode: factory.unitCode.C62
791
- },
792
- availabilityStartsGraceTime: {
793
- typeOf: 'QuantitativeValue',
794
- value: -2,
795
- unitCode: factory.unitCode.Day
796
- },
797
- availabilityEndsGraceTime: {
798
- typeOf: 'QuantitativeValue',
799
- value: 1200,
800
- unitCode: factory.unitCode.Sec
801
- },
802
- availabilityStartsGraceTimeOnPOS: {
803
- typeOf: 'QuantitativeValue',
804
- value: -93,
805
- unitCode: factory.unitCode.Day
806
- },
807
- availabilityEndsGraceTimeOnPOS: {
808
- typeOf: 'QuantitativeValue',
809
- value: 2678400,
810
- unitCode: factory.unitCode.Sec
811
- }
812
- },
813
- parentOrganization: { id: seller.id, typeOf: factory.organizationType.Corporation }
814
- };
815
- }
816
- /**
817
- * コアスクリーン抽出結果からルームを作成する
818
- */
819
- // tslint:disable-next-line:no-single-line-block-comment
820
- /* istanbul ignore next */
821
- function createScreeningRoomFromCOA(project, seller, screenFromCOA) {
822
- const sections = [];
823
- const sectionCodes = [];
824
- screenFromCOA.listSeat.forEach((seat) => {
825
- if (sectionCodes.indexOf(seat.seatSection) < 0) {
826
- sectionCodes.push(seat.seatSection);
827
- sections.push({
828
- project: { typeOf: project.typeOf, id: project.id },
829
- branchCode: seat.seatSection,
830
- name: {
831
- ja: `セクション${seat.seatSection}`,
832
- en: `section${seat.seatSection}`
833
- },
834
- containsPlace: [],
835
- typeOf: factory.placeType.ScreeningRoomSection
836
- });
837
- }
838
- sections[sectionCodes.indexOf(seat.seatSection)].containsPlace.push({
839
- project: { typeOf: project.typeOf, id: project.id },
840
- branchCode: seat.seatNum,
841
- typeOf: factory.placeType.Seat,
842
- additionalProperty: [
843
- { name: 'flgFree', value: String(seat.flgFree) },
844
- { name: 'flgHc', value: String(seat.flgHc) },
845
- { name: 'flgPair', value: String(seat.flgPair) },
846
- { name: 'flgSpare', value: String(seat.flgSpare) },
847
- { name: 'flgSpecial', value: String(seat.flgSpecial) }
848
- ]
849
- });
850
- });
851
- return {
852
- project: { typeOf: project.typeOf, id: project.id },
853
- containsPlace: sections,
854
- branchCode: screenFromCOA.screenCode,
855
- name: {
856
- ja: screenFromCOA.screenName,
857
- en: screenFromCOA.screenNameEng
858
- },
859
- typeOf: factory.placeType.ScreeningRoom,
860
- maximumAttendeeCapacity: sections[0].containsPlace.length,
861
- // 必須化(2023-07-14~)
862
- parentOrganization: { id: seller.id, typeOf: factory.organizationType.Corporation }
863
- };
864
- }