@chevre/domain 23.2.0-alpha.60 → 23.2.0-alpha.62
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.
- package/lib/chevre/credentials/customSearch.js +2 -0
- package/lib/chevre/credentials/lineNotify.js +4 -0
- package/lib/chevre/credentials/sendGrid.js +2 -0
- package/lib/chevre/credentials.js +15 -30
- package/lib/chevre/emailMessageBuilder.js +225 -250
- package/lib/chevre/errorHandler.js +38 -54
- package/lib/chevre/factory/event.js +69 -42
- package/lib/chevre/factory/transactionNumber.js +3 -1
- package/lib/chevre/index.js +15 -30
- package/lib/chevre/repo/acceptedOffer.js +178 -197
- package/lib/chevre/repo/acceptedPaymentMethod.js +131 -143
- package/lib/chevre/repo/account.js +196 -223
- package/lib/chevre/repo/accountTitle.js +9 -21
- package/lib/chevre/repo/accountTransaction.js +189 -189
- package/lib/chevre/repo/accountingReport.js +88 -107
- package/lib/chevre/repo/action.js +853 -880
- package/lib/chevre/repo/additionalProperty.js +65 -91
- package/lib/chevre/repo/advanceBookingRequirement.js +69 -90
- package/lib/chevre/repo/aggregateOffer.js +394 -427
- package/lib/chevre/repo/aggregateOrder.js +50 -62
- package/lib/chevre/repo/aggregateReservation.js +76 -89
- package/lib/chevre/repo/aggregation.js +42 -63
- package/lib/chevre/repo/assetTransaction.js +696 -716
- package/lib/chevre/repo/authorization.js +115 -127
- package/lib/chevre/repo/categoryCode.js +115 -143
- package/lib/chevre/repo/comment.js +74 -82
- package/lib/chevre/repo/concurrentLock.js +17 -29
- package/lib/chevre/repo/confirmationNumber.js +21 -33
- package/lib/chevre/repo/creativeWork.js +154 -176
- package/lib/chevre/repo/credentials.js +40 -51
- package/lib/chevre/repo/customer.js +65 -88
- package/lib/chevre/repo/customerType.js +52 -61
- package/lib/chevre/repo/emailMessage.js +52 -80
- package/lib/chevre/repo/event.d.ts +0 -15
- package/lib/chevre/repo/event.js +720 -744
- package/lib/chevre/repo/eventOffer.js +122 -125
- package/lib/chevre/repo/eventSellerMakesOffer.js +64 -76
- package/lib/chevre/repo/eventSeries.d.ts +1 -7
- package/lib/chevre/repo/eventSeries.js +258 -277
- package/lib/chevre/repo/identity.js +94 -106
- package/lib/chevre/repo/identityProvider.js +72 -95
- package/lib/chevre/repo/issuer.js +102 -135
- package/lib/chevre/repo/member.js +238 -258
- package/lib/chevre/repo/memberProgram.js +157 -177
- package/lib/chevre/repo/merchantReturnPolicy.js +62 -93
- package/lib/chevre/repo/message.js +122 -135
- package/lib/chevre/repo/mongoose/schemas/acceptedPaymentMethod.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/account.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/accountTitle.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/accountTransaction.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/accountingReport.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/action.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/actionRecipe.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/additionalProperty.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/advanceBookingRequirement.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/aggregateOffer.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/aggregateOrder.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/aggregateReservation.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/aggregation.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/assetTransaction.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/authorization.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/categoryCode.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/civicStructure.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/creativeWork.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/customer.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/customerType.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/event.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/eventOffer.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/eventSeries.js +41 -14
- package/lib/chevre/repo/mongoose/schemas/identity.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/identityProvider.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/issuer.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/member/global.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/member.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/message.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/movieTicketTypes.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/note.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/offerCatalog.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/offerCatalogItem.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/offerItemCondition.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/order.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/paymentService.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/paymentServiceChannel.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/pendingReservation.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/place.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/potentialAction.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/product.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/productModel.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/productOffer.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/reservation.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/reserveInterface.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/role.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/schedule.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/seller.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/sellerReturnPolicy.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/service/availableHour.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/setting.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/task.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/ticket.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/transaction.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/transactionNumber.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/trip.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/webSite.js +1 -1
- package/lib/chevre/repo/movieTicketType.js +68 -89
- package/lib/chevre/repo/note.js +143 -146
- package/lib/chevre/repo/noteAboutOrder.js +112 -113
- package/lib/chevre/repo/offer/unitPriceInCatalog.js +331 -313
- package/lib/chevre/repo/offerCatalog.js +302 -333
- package/lib/chevre/repo/offerCatalogItem.js +289 -316
- package/lib/chevre/repo/offerItemCondition.js +60 -85
- package/lib/chevre/repo/order.js +563 -572
- package/lib/chevre/repo/orderInTransaction.js +113 -136
- package/lib/chevre/repo/orderNumber.d.ts +0 -1
- package/lib/chevre/repo/orderNumber.js +108 -122
- package/lib/chevre/repo/ownershipInfo.js +213 -233
- package/lib/chevre/repo/passport.js +94 -102
- package/lib/chevre/repo/paymentMethod/creditCard.js +153 -169
- package/lib/chevre/repo/paymentService.js +180 -199
- package/lib/chevre/repo/paymentServiceChannel.js +76 -99
- package/lib/chevre/repo/paymentServiceProvider.js +186 -201
- package/lib/chevre/repo/pendingReservation.js +275 -305
- package/lib/chevre/repo/permit.js +47 -42
- package/lib/chevre/repo/person.js +227 -247
- package/lib/chevre/repo/place/busStop.js +77 -103
- package/lib/chevre/repo/place/entranceGate.js +123 -128
- package/lib/chevre/repo/place/hasPOS.js +108 -120
- package/lib/chevre/repo/place/movieTheater.js +187 -219
- package/lib/chevre/repo/place/screeningRoom.js +340 -324
- package/lib/chevre/repo/place/seat.js +539 -475
- package/lib/chevre/repo/place/section.js +329 -292
- package/lib/chevre/repo/potentialAction.js +67 -86
- package/lib/chevre/repo/priceSpecification.js +103 -141
- package/lib/chevre/repo/product.js +204 -238
- package/lib/chevre/repo/productHasOfferCatalog.js +39 -50
- package/lib/chevre/repo/productModel.js +94 -126
- package/lib/chevre/repo/productOffer.js +119 -118
- package/lib/chevre/repo/project.js +123 -141
- package/lib/chevre/repo/projectMakesOffer.js +96 -108
- package/lib/chevre/repo/rateLimit/offer.js +43 -56
- package/lib/chevre/repo/reservation.js +370 -345
- package/lib/chevre/repo/reserveInterface.js +31 -42
- package/lib/chevre/repo/role.js +94 -112
- package/lib/chevre/repo/schedule.js +25 -36
- package/lib/chevre/repo/seller.js +115 -145
- package/lib/chevre/repo/sellerMakesOffer.js +95 -110
- package/lib/chevre/repo/sellerPaymentAccepted.js +92 -109
- package/lib/chevre/repo/sellerReturnPolicy.js +74 -96
- package/lib/chevre/repo/service/availableHour.js +27 -38
- package/lib/chevre/repo/serviceOutput.js +55 -66
- package/lib/chevre/repo/serviceOutputIdentifier.js +46 -57
- package/lib/chevre/repo/setting/jwt.js +40 -50
- package/lib/chevre/repo/setting.js +48 -48
- package/lib/chevre/repo/stockHolder.js +179 -197
- package/lib/chevre/repo/task.d.ts +1 -1
- package/lib/chevre/repo/task.js +615 -617
- package/lib/chevre/repo/telemetry.js +1 -0
- package/lib/chevre/repo/ticket.js +52 -65
- package/lib/chevre/repo/transaction.js +758 -795
- package/lib/chevre/repo/transactionNumber.js +67 -80
- package/lib/chevre/repo/transactionNumberCounter.js +69 -79
- package/lib/chevre/repo/transactionProcess.js +36 -47
- package/lib/chevre/repo/trip.js +145 -163
- package/lib/chevre/repo/webSite.js +90 -105
- package/lib/chevre/repository.js +455 -646
- package/lib/chevre/service/account.js +9 -18
- package/lib/chevre/service/accountTransaction/deposit.js +16 -17
- package/lib/chevre/service/accountTransaction/transfer.js +18 -19
- package/lib/chevre/service/accountTransaction/withdraw.js +16 -17
- package/lib/chevre/service/accountTransaction.js +4 -13
- package/lib/chevre/service/aggregation/event/aggregateOffers.js +63 -60
- package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +52 -55
- package/lib/chevre/service/aggregation/event/findEventOffers.js +7 -17
- package/lib/chevre/service/aggregation/event/importFromCOA.js +4 -13
- package/lib/chevre/service/aggregation/project.js +10 -19
- package/lib/chevre/service/aggregation/system.js +182 -99
- package/lib/chevre/service/assetTransaction/cancelReservation/factory.js +31 -17
- package/lib/chevre/service/assetTransaction/cancelReservation/start.js +17 -23
- package/lib/chevre/service/assetTransaction/cancelReservation/startAndConfirm.js +17 -15
- package/lib/chevre/service/assetTransaction/cancelReservation.js +7 -16
- package/lib/chevre/service/assetTransaction/cancelReservationCOA/factory.js +11 -4
- package/lib/chevre/service/assetTransaction/cancelReservationCOA.js +4 -13
- package/lib/chevre/service/assetTransaction/fixInformAction.d.ts +3 -0
- package/lib/chevre/service/assetTransaction/fixInformAction.js +9 -16
- package/lib/chevre/service/assetTransaction/moneyTransfer/potentialActions.js +13 -25
- package/lib/chevre/service/assetTransaction/moneyTransfer.js +101 -88
- package/lib/chevre/service/assetTransaction/pay/cancel.d.ts +12 -0
- package/lib/chevre/service/assetTransaction/pay/cancel.js +16 -0
- package/lib/chevre/service/assetTransaction/pay/check.d.ts +23 -0
- package/lib/chevre/service/assetTransaction/pay/check.js +27 -0
- package/lib/chevre/service/assetTransaction/pay/confirm.d.ts +24 -0
- package/lib/chevre/service/assetTransaction/pay/confirm.js +69 -0
- package/lib/chevre/service/assetTransaction/pay/exportTasksById.d.ts +18 -0
- package/lib/chevre/service/assetTransaction/pay/exportTasksById.js +102 -0
- package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.d.ts +48 -0
- package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +165 -0
- package/lib/chevre/service/assetTransaction/pay/searchGMOTrade.d.ts +20 -0
- package/lib/chevre/service/assetTransaction/pay/searchGMOTrade.js +49 -0
- package/lib/chevre/service/assetTransaction/pay/{account → start/account}/validation.d.ts +2 -2
- package/lib/chevre/service/assetTransaction/pay/{account → start/account}/validation.js +7 -17
- package/lib/chevre/service/assetTransaction/pay/{factory.d.ts → start/factory.d.ts} +1 -1
- package/lib/chevre/service/assetTransaction/pay/{factory.js → start/factory.js} +65 -37
- package/lib/chevre/service/assetTransaction/pay/{validateAcceptedPaymentMethodIfNeeded.d.ts → start/preStart/validateAcceptedPaymentMethodIfNeeded.d.ts} +4 -4
- package/lib/chevre/service/assetTransaction/pay/{validateAcceptedPaymentMethodIfNeeded.js → start/preStart/validateAcceptedPaymentMethodIfNeeded.js} +8 -21
- package/lib/chevre/service/assetTransaction/pay/start/preStart/validateSeller.d.ts +8 -0
- package/lib/chevre/service/assetTransaction/pay/start/preStart/validateSeller.js +44 -0
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeAccount.d.ts +13 -0
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeAccount.js +39 -0
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.d.ts +29 -0
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.js +31 -0
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.d.ts +42 -0
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.js +22 -0
- package/lib/chevre/service/assetTransaction/pay/start.d.ts +60 -0
- package/lib/chevre/service/assetTransaction/pay/start.js +139 -0
- package/lib/chevre/service/assetTransaction/pay.d.ts +8 -170
- package/lib/chevre/service/assetTransaction/pay.js +16 -623
- package/lib/chevre/service/assetTransaction/refund/factory.js +36 -16
- package/lib/chevre/service/assetTransaction/refund/potentialActions.js +12 -21
- package/lib/chevre/service/assetTransaction/refund.js +35 -39
- package/lib/chevre/service/assetTransaction/registerService/factory.js +65 -28
- package/lib/chevre/service/assetTransaction/registerService/potentialActions.js +50 -41
- package/lib/chevre/service/assetTransaction/registerService.js +45 -52
- package/lib/chevre/service/assetTransaction/reserve/cancel.js +5 -14
- package/lib/chevre/service/assetTransaction/reserve/confirm/factory.js +15 -3
- package/lib/chevre/service/assetTransaction/reserve/confirm.js +21 -26
- package/lib/chevre/service/assetTransaction/reserve/exportTasksById.js +3 -12
- package/lib/chevre/service/assetTransaction/reserve/start/createSubReservations.js +99 -79
- package/lib/chevre/service/assetTransaction/reserve/start/factory/createPointAward.js +17 -12
- package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.js +108 -70
- package/lib/chevre/service/assetTransaction/reserve/start/factory/createStartParams.js +69 -30
- package/lib/chevre/service/assetTransaction/reserve/start/factory/price.js +29 -20
- package/lib/chevre/service/assetTransaction/reserve/start.js +91 -106
- package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/fixExtendedEventOffer.js +5 -15
- package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/validateIssuedOfferIfExists.js +41 -54
- package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/validateMemberTierIfExists.js +42 -55
- package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/verifyTicketTokenAsNeeded.js +7 -17
- package/lib/chevre/service/assetTransaction/reserve/validateStartRequest.js +15 -27
- package/lib/chevre/service/assetTransaction/reserveCOA/cancel.js +24 -24
- package/lib/chevre/service/assetTransaction/reserveCOA/factory.js +12 -4
- package/lib/chevre/service/assetTransaction/reserveCOA.js +4 -13
- package/lib/chevre/service/assetTransaction.js +17 -21
- package/lib/chevre/service/delivery/factory.js +3 -4
- package/lib/chevre/service/delivery/product/factory.js +16 -7
- package/lib/chevre/service/delivery/reservation/factory.js +14 -3
- package/lib/chevre/service/delivery.js +47 -49
- package/lib/chevre/service/event/processUpdateMovieTheater.js +21 -23
- package/lib/chevre/service/event/saveScreeningEventSeries.js +56 -37
- package/lib/chevre/service/event/saveScreeningEvents.js +14 -23
- package/lib/chevre/service/event.js +34 -27
- package/lib/chevre/service/iam.js +8 -17
- package/lib/chevre/service/moneyTransfer.js +128 -112
- package/lib/chevre/service/notification/factory.js +11 -8
- package/lib/chevre/service/notification/notifyAbortedTasksByEmail.js +11 -15
- package/lib/chevre/service/notification/notifyByEmail.js +7 -17
- package/lib/chevre/service/notification/sendEmailMessage.js +23 -26
- package/lib/chevre/service/notification/triggerWebhook.js +58 -54
- package/lib/chevre/service/offer/any.js +6 -15
- package/lib/chevre/service/offer/event/authorize/factory.js +139 -61
- package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre/requestedProgramMembershipUsed2permit.js +8 -18
- package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.js +43 -27
- package/lib/chevre/service/offer/event/authorize.js +114 -68
- package/lib/chevre/service/offer/event/checkAvailability.js +5 -15
- package/lib/chevre/service/offer/event/importFromCOA/factory.js +9 -2
- package/lib/chevre/service/offer/event/importFromCOA.js +13 -19
- package/lib/chevre/service/offer/event/issueEventOfferTicket.js +38 -39
- package/lib/chevre/service/offer/event/searchEventTicketOffers.js +26 -38
- package/lib/chevre/service/offer/event/searchOfferAppliesToMovieTicket.js +11 -22
- package/lib/chevre/service/offer/event/searchOfferCatalogItemAvailability.js +13 -24
- package/lib/chevre/service/offer/event/searchOfferCatalogItems.js +15 -22
- package/lib/chevre/service/offer/event/searchOffersByIds.js +24 -36
- package/lib/chevre/service/offer/event/searchPriceSpecs4event.js +5 -14
- package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.js +4 -13
- package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4coa.js +6 -15
- package/lib/chevre/service/offer/event/voidTransaction.js +35 -39
- package/lib/chevre/service/offer/event/voidTransactionByActionId.js +14 -20
- package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer/authorize.js +52 -40
- package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer/factory.js +5 -1
- package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +34 -37
- package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.js +45 -22
- package/lib/chevre/service/offer/eventServiceByCOA/authorize/validateAcceptedOffers.js +67 -59
- package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +16 -26
- package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +8 -18
- package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +42 -41
- package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.js +22 -25
- package/lib/chevre/service/offer/factory.js +18 -7
- package/lib/chevre/service/offer/moneyTransfer/authorize.js +31 -36
- package/lib/chevre/service/offer/moneyTransfer/returnMoneyTransfer.js +9 -18
- package/lib/chevre/service/offer/moneyTransfer/settleTransaction.js +10 -19
- package/lib/chevre/service/offer/moneyTransfer/voidTransaction.js +14 -24
- package/lib/chevre/service/offer/onEventChanged.js +69 -64
- package/lib/chevre/service/offer/product/factory.js +54 -29
- package/lib/chevre/service/offer/product/searchProductOffers.js +30 -23
- package/lib/chevre/service/offer/product.js +106 -80
- package/lib/chevre/service/offer.js +48 -44
- package/lib/chevre/service/order/confirmPayTransaction.js +28 -27
- package/lib/chevre/service/order/createAccountingReportIfNotExist.js +54 -41
- package/lib/chevre/service/order/deleteOrder.js +28 -35
- package/lib/chevre/service/order/findPlaceOrderTransaction.js +3 -12
- package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +64 -68
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.d.ts +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.js +1 -2
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled.js +3 -12
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered/factory.js +11 -6
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.js +5 -14
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.js +22 -9
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.js +5 -14
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +23 -26
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.js +13 -19
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/createSendEmailMessageTaskIfNotExist.js +5 -14
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/factory.js +24 -13
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.js +23 -32
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.js +8 -18
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.d.ts +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.js +10 -9
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +23 -28
- package/lib/chevre/service/order/onOrderUpdated/factory.js +3 -5
- package/lib/chevre/service/order/onOrderUpdated.js +13 -15
- package/lib/chevre/service/order/payOrder.js +3 -12
- package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +9 -19
- package/lib/chevre/service/order/placeOrder/factory/orderedItem.js +31 -15
- package/lib/chevre/service/order/placeOrder/factory.js +35 -22
- package/lib/chevre/service/order/placeOrder/voidAcceptedOfferIfNecessary.js +3 -12
- package/lib/chevre/service/order/placeOrder.js +12 -22
- package/lib/chevre/service/order/placeOrderWithoutTransaction.js +10 -18
- package/lib/chevre/service/order/returnOrder.js +27 -29
- package/lib/chevre/service/order/sendOrder.js +37 -36
- package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.js +19 -25
- package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +24 -37
- package/lib/chevre/service/payment/any/factory.js +106 -49
- package/lib/chevre/service/payment/any/fixOrderAsNeeded.js +4 -13
- package/lib/chevre/service/payment/any/onPayActionCompleted.js +13 -18
- package/lib/chevre/service/payment/any/onPaymentStatusChanged/onPaid.js +34 -37
- package/lib/chevre/service/payment/any/onPaymentStatusChanged/onRefunded.js +18 -24
- package/lib/chevre/service/payment/any/onPaymentStatusChanged.js +16 -16
- package/lib/chevre/service/payment/any/onRefundActionCompletedOrFailed.js +15 -20
- package/lib/chevre/service/payment/any/person2username.js +33 -45
- package/lib/chevre/service/payment/any/publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl.js +8 -18
- package/lib/chevre/service/payment/any/verifyTicketTokenAsNeeded.js +5 -15
- package/lib/chevre/service/payment/any.js +181 -137
- package/lib/chevre/service/payment/creditCard/authorize/handleAuthorizeError.js +2 -2
- package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +44 -24
- package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.js +6 -15
- package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3dsResult2recipe.js +5 -1
- package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCardResult2recipe.js +10 -2
- package/lib/chevre/service/payment/creditCard/authorize.js +20 -22
- package/lib/chevre/service/payment/creditCard/factory.js +22 -4
- package/lib/chevre/service/payment/creditCard/getGMOInfoFromSeller.js +8 -18
- package/lib/chevre/service/payment/creditCard/payCreditCard.js +31 -36
- package/lib/chevre/service/payment/creditCard/refundCreditCard.js +40 -49
- package/lib/chevre/service/payment/creditCard/searchGMOTrade.js +33 -45
- package/lib/chevre/service/payment/creditCard/voidTransaction.js +15 -25
- package/lib/chevre/service/payment/faceToFace.js +14 -23
- package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.js +44 -25
- package/lib/chevre/service/payment/factory.js +50 -23
- package/lib/chevre/service/payment/movieTicket/authorize.js +35 -28
- package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +22 -25
- package/lib/chevre/service/payment/movieTicket/factory.js +33 -10
- package/lib/chevre/service/payment/movieTicket/getCredentials.js +5 -15
- package/lib/chevre/service/payment/movieTicket/payMovieTicket.js +29 -40
- package/lib/chevre/service/payment/movieTicket/processPurchaseNumberAuth.js +8 -18
- package/lib/chevre/service/payment/movieTicket/refundMovieTicket.js +60 -59
- package/lib/chevre/service/payment/movieTicket/validation.js +41 -36
- package/lib/chevre/service/payment/movieTicket/voidTransaction.js +8 -18
- package/lib/chevre/service/payment/paymentCard.js +87 -103
- package/lib/chevre/service/permit.js +36 -35
- package/lib/chevre/service/product.js +23 -27
- package/lib/chevre/service/project.js +22 -31
- package/lib/chevre/service/report/ownershipInfo.js +3 -4
- package/lib/chevre/service/report/telemetry.js +51 -55
- package/lib/chevre/service/reserve/cancelReservation.js +92 -90
- package/lib/chevre/service/reserve/checkInReservation.js +24 -29
- package/lib/chevre/service/reserve/confirmReservation.js +33 -38
- package/lib/chevre/service/reserve/factory.js +42 -20
- package/lib/chevre/service/reserve/findByCode.js +13 -18
- package/lib/chevre/service/reserve/potentialActions/onPendingReservationCanceled.js +18 -24
- package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +17 -24
- package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +38 -29
- package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +45 -35
- package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +37 -32
- package/lib/chevre/service/reserve/potentialActions/onReservationsCreated.js +17 -23
- package/lib/chevre/service/reserve/searchByOrder.js +10 -19
- package/lib/chevre/service/reserve/useReservation.js +47 -32
- package/lib/chevre/service/reserve/verifyToken4reservation.js +7 -14
- package/lib/chevre/service/reserveCOA/cancelReservation.js +7 -16
- package/lib/chevre/service/reserveCOA/factory.js +5 -1
- package/lib/chevre/service/task/acceptCOAOffer.js +20 -24
- package/lib/chevre/service/task/aggregateOffers.js +3 -12
- package/lib/chevre/service/task/aggregateOnSystem.js +4 -14
- package/lib/chevre/service/task/aggregateScreeningEvent.js +3 -12
- package/lib/chevre/service/task/authorizePayment.js +9 -15
- package/lib/chevre/service/task/cancelMoneyTransfer.js +3 -12
- package/lib/chevre/service/task/cancelPendingReservation.js +10 -20
- package/lib/chevre/service/task/cancelReservation.js +3 -12
- package/lib/chevre/service/task/checkMovieTicket.js +16 -19
- package/lib/chevre/service/task/checkResource.js +7 -16
- package/lib/chevre/service/task/confirmMoneyTransfer.js +3 -12
- package/lib/chevre/service/task/confirmPayTransaction.js +6 -12
- package/lib/chevre/service/task/confirmRegisterService.js +3 -12
- package/lib/chevre/service/task/confirmRegisterServiceTransaction.js +24 -31
- package/lib/chevre/service/task/confirmReserveTransaction.js +48 -42
- package/lib/chevre/service/task/createAccountingReport.js +14 -20
- package/lib/chevre/service/task/deletePerson.js +48 -58
- package/lib/chevre/service/task/deleteTransaction.js +3 -12
- package/lib/chevre/service/task/givePointAward.js +3 -12
- package/lib/chevre/service/task/handleNotification.js +4 -14
- package/lib/chevre/service/task/importEventCapacitiesFromCOA.js +6 -16
- package/lib/chevre/service/task/importEventsFromCOA.js +6 -16
- package/lib/chevre/service/task/importOffersFromCOA.js +8 -18
- package/lib/chevre/service/task/invalidatePaymentUrl.js +6 -12
- package/lib/chevre/service/task/moneyTransfer.js +3 -12
- package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +3 -12
- package/lib/chevre/service/task/onAuthorizationCreated.js +11 -18
- package/lib/chevre/service/task/onEventChanged.js +3 -12
- package/lib/chevre/service/task/onOrderPaymentCompleted.js +3 -12
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByAggregateOffer.js +7 -16
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByEventSeries.js +7 -16
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByMovieTheater.js +8 -17
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByOfferCatalog.js +10 -19
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByProduct.js +8 -17
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByRoom.js +6 -15
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesBySeller.js +14 -23
- package/lib/chevre/service/task/onResourceDeleted.js +17 -26
- package/lib/chevre/service/task/onResourceUpdated/onAggregateOfferUpdated.js +9 -21
- package/lib/chevre/service/task/onResourceUpdated/onCategoryCodeUpdated.js +3 -12
- package/lib/chevre/service/task/onResourceUpdated/onHasPOSUpdated.js +11 -23
- package/lib/chevre/service/task/onResourceUpdated/onOfferCatalogUpdated.js +13 -25
- package/lib/chevre/service/task/onResourceUpdated/syncCategoryCode.js +9 -15
- package/lib/chevre/service/task/onResourceUpdated/syncOfferCatalog.js +21 -27
- package/lib/chevre/service/task/onResourceUpdated.js +113 -153
- package/lib/chevre/service/task/pay.js +8 -16
- package/lib/chevre/service/task/payment/invalidatePaymentUrlByTask.js +4 -14
- package/lib/chevre/service/task/payment/payByTask.js +49 -38
- package/lib/chevre/service/task/payment/refundByTask.js +7 -17
- package/lib/chevre/service/task/payment/voidPaymentByTask.js +6 -15
- package/lib/chevre/service/task/placeOrder.js +6 -12
- package/lib/chevre/service/task/publishPaymentUrl.js +9 -14
- package/lib/chevre/service/task/refund.js +8 -16
- package/lib/chevre/service/task/registerService.js +3 -12
- package/lib/chevre/service/task/reserve.js +3 -12
- package/lib/chevre/service/task/returnMoneyTransfer.js +3 -12
- package/lib/chevre/service/task/returnOrder.js +6 -12
- package/lib/chevre/service/task/returnPayTransaction.js +54 -48
- package/lib/chevre/service/task/returnPointAward.js +3 -12
- package/lib/chevre/service/task/returnReserveTransaction.js +29 -30
- package/lib/chevre/service/task/sendEmailMessage.js +6 -13
- package/lib/chevre/service/task/sendOrder.js +12 -15
- package/lib/chevre/service/task/syncResourcesFromCOA.js +39 -40
- package/lib/chevre/service/task/triggerWebhook.js +6 -12
- package/lib/chevre/service/task/useReservation.js +11 -14
- package/lib/chevre/service/task/voidMoneyTransferTransaction.js +3 -12
- package/lib/chevre/service/task/voidPayTransaction.js +7 -12
- package/lib/chevre/service/task/voidPayment.js +3 -12
- package/lib/chevre/service/task/voidRegisterServiceTransaction.js +3 -12
- package/lib/chevre/service/task/voidReserveTransaction.js +10 -16
- package/lib/chevre/service/task.js +16 -22
- package/lib/chevre/service/taskHandler/onOperationFailed/informTaskIfNeeded.js +9 -20
- package/lib/chevre/service/taskHandler/onOperationFailed.js +20 -17
- package/lib/chevre/service/taskHandler.js +19 -21
- package/lib/chevre/service/transaction/deleteTransaction.js +104 -84
- package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.js +15 -6
- package/lib/chevre/service/transaction/moneyTransfer/factory.js +13 -4
- package/lib/chevre/service/transaction/moneyTransfer/potentialActions.js +12 -24
- package/lib/chevre/service/transaction/moneyTransfer.js +119 -96
- package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions/sendEmailMessage.js +49 -51
- package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions.js +14 -25
- package/lib/chevre/service/transaction/placeOrder/confirm/publishCode.js +4 -14
- package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateInvoiceReferencesOrder.js +3 -4
- package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateMovieTicket.js +3 -4
- package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.js +2 -3
- package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +30 -45
- package/lib/chevre/service/transaction/placeOrder/confirm.js +75 -55
- package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +31 -13
- package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +6 -15
- package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.js +6 -15
- package/lib/chevre/service/transaction/placeOrder/publishOrderNumberIfNotExist.js +7 -16
- package/lib/chevre/service/transaction/placeOrder/start/factory.js +27 -7
- package/lib/chevre/service/transaction/placeOrder/start/validateStartRequest.js +53 -59
- package/lib/chevre/service/transaction/placeOrder/start.js +14 -18
- package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +13 -6
- package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +176 -190
- package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPointAward.js +77 -89
- package/lib/chevre/service/transaction/returnOrder/potentialActions/sendEmailMessage.js +40 -48
- package/lib/chevre/service/transaction/returnOrder/potentialActions.js +52 -56
- package/lib/chevre/service/transaction/returnOrder/preStart/findApplicableReturnPolicy.js +100 -102
- package/lib/chevre/service/transaction/returnOrder/preStart/getReturnPolicyByProject.js +60 -80
- package/lib/chevre/service/transaction/returnOrder/preStart.js +42 -46
- package/lib/chevre/service/transaction/returnOrder.js +32 -36
- package/lib/chevre/service/transaction.js +75 -46
- package/lib/chevre/service/validation/validateEvent.js +2 -11
- package/lib/chevre/service/validation/validateOrder.js +7 -16
- package/lib/chevre/service.js +85 -128
- package/lib/chevre/settings/aggregation.js +4 -0
- package/lib/chevre/settings.js +7 -0
- package/package.json +8 -11
- package/example/src/chevre/addEventBySchedule.ts +0 -46
- package/example/src/chevre/orderNumber/decryptOrderNumber.ts +0 -14
- package/example/src/idaas/auth0/adminApplications.ts +0 -183
- package/example/src/idaas/auth0/getToken.ts +0 -55
- package/example/src/idaas/auth0/getTokenByPrivateKeyJWT.ts +0 -84
- package/lib/chevre/service/task/createEvent/createEvent.d.ts +0 -25
- package/lib/chevre/service/task/createEvent/createEvent.js +0 -45
- package/lib/chevre/service/task/createEvent/createEventBySchedule/factory.d.ts +0 -22
- package/lib/chevre/service/task/createEvent/createEventBySchedule/factory.js +0 -190
- package/lib/chevre/service/task/createEvent/createEventBySchedule/schedule2events.d.ts +0 -15
- package/lib/chevre/service/task/createEvent/createEventBySchedule/schedule2events.js +0 -118
- package/lib/chevre/service/task/createEvent/createEventBySchedule.d.ts +0 -25
- package/lib/chevre/service/task/createEvent/createEventBySchedule.js +0 -107
- package/lib/chevre/service/task/createEvent/createEventSeries.d.ts +0 -13
- package/lib/chevre/service/task/createEvent/createEventSeries.js +0 -118
- package/lib/chevre/service/task/createEvent.d.ts +0 -6
- package/lib/chevre/service/task/createEvent.js +0 -46
|
@@ -1,21 +1,11 @@
|
|
|
1
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
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.issueEventOfferTicket = issueEventOfferTicket;
|
|
13
4
|
const moment = require("moment");
|
|
14
5
|
const factory = require("../../../factory");
|
|
15
6
|
const validateStartRequest_1 = require("../../assetTransaction/reserve/validateStartRequest");
|
|
16
7
|
function createOfferTicket(params) {
|
|
17
|
-
return (repos) =>
|
|
18
|
-
var _a;
|
|
8
|
+
return async (repos) => {
|
|
19
9
|
const { audience, expiresInSeconds, issuedBy, object, validFrom, author, project, instrument } = params;
|
|
20
10
|
const actionAttributes = {
|
|
21
11
|
project: { id: project.id, typeOf: factory.organizationType.Project },
|
|
@@ -28,10 +18,10 @@ function createOfferTicket(params) {
|
|
|
28
18
|
id: instrument.id
|
|
29
19
|
}
|
|
30
20
|
};
|
|
31
|
-
const action =
|
|
21
|
+
const action = await repos.action.start(actionAttributes);
|
|
32
22
|
let authorizations;
|
|
33
23
|
try {
|
|
34
|
-
authorizations =
|
|
24
|
+
authorizations = await repos.authorization.issueAuthorization([{
|
|
35
25
|
project: { id: project.id, typeOf: factory.organizationType.Project },
|
|
36
26
|
object,
|
|
37
27
|
validFrom,
|
|
@@ -43,7 +33,7 @@ function createOfferTicket(params) {
|
|
|
43
33
|
}
|
|
44
34
|
catch (error) {
|
|
45
35
|
try {
|
|
46
|
-
|
|
36
|
+
await repos.action.giveUp({ typeOf: action.typeOf, id: action.id, error });
|
|
47
37
|
}
|
|
48
38
|
catch (__) {
|
|
49
39
|
// 失敗したら仕方ない
|
|
@@ -51,55 +41,64 @@ function createOfferTicket(params) {
|
|
|
51
41
|
throw error;
|
|
52
42
|
}
|
|
53
43
|
const result = authorizations.map(({ code, typeOf }) => ({ code, typeOf }));
|
|
54
|
-
|
|
55
|
-
const ticketToken =
|
|
44
|
+
await repos.action.completeWithVoid({ typeOf: action.typeOf, id: action.id, result: result });
|
|
45
|
+
const ticketToken = authorizations.shift()?.code;
|
|
56
46
|
if (typeof ticketToken !== 'string') {
|
|
57
47
|
// 基本的にありえないフロー
|
|
58
48
|
throw new factory.errors.Internal('code not published by an unexpected reason');
|
|
59
49
|
}
|
|
60
50
|
// チケット作成
|
|
61
|
-
|
|
51
|
+
await repos.ticket.issueByTicketToken({
|
|
62
52
|
project: { id: project.id },
|
|
63
53
|
ticketToken,
|
|
64
54
|
issuedBy
|
|
65
55
|
});
|
|
66
56
|
return { ticketToken };
|
|
67
|
-
}
|
|
57
|
+
};
|
|
68
58
|
}
|
|
69
59
|
function issueEventOfferTicket(params) {
|
|
70
|
-
return (repos) =>
|
|
71
|
-
var _a, _b;
|
|
60
|
+
return async (repos) => {
|
|
72
61
|
const { now, audience, eventId, eventOfferId, ticketedOffer, author, project, instrument } = params;
|
|
73
62
|
// 取引は存在するか
|
|
74
|
-
const transaction =
|
|
63
|
+
const transaction = await repos.transaction.projectFieldsInProgressById({ typeOf: factory.transactionType.PlaceOrder, id: audience.id }, ['expires', 'typeOf', 'seller']);
|
|
75
64
|
// イベントは存在するか
|
|
76
|
-
const event =
|
|
65
|
+
const event = await repos.event.projectEventFieldsById({ id: eventId }, ['project', 'offers', 'identifier']);
|
|
77
66
|
// 取引番号発行
|
|
78
67
|
// const { transactionNumber } = await transactionNumberRepo.publishByTimestamp({ startDate: now });
|
|
79
68
|
const { seller } = transaction;
|
|
80
69
|
// 承認作成
|
|
81
|
-
const issuedBy =
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
70
|
+
const issuedBy = {
|
|
71
|
+
id: seller.id,
|
|
72
|
+
typeOf: seller.typeOf,
|
|
73
|
+
...(typeof seller.name.ja === 'string') ? { name: seller.name.ja } : undefined
|
|
74
|
+
};
|
|
75
|
+
const validForMemberTierToken = ticketedOffer?.validForMemberTier?.token;
|
|
76
|
+
const validForMemberProgramIdentifier = ticketedOffer?.validForMemberTier?.isTierOf.identifier;
|
|
77
|
+
const authorizationObject = {
|
|
78
|
+
typeOf: factory.offerType.Offer,
|
|
79
|
+
itemOffered: {
|
|
85
80
|
typeOf: factory.product.ProductType.EventService,
|
|
86
81
|
serviceOutput: {
|
|
87
82
|
typeOf: factory.reservationType.ReservationPackage,
|
|
88
83
|
reservationFor: { id: eventId }
|
|
89
84
|
}
|
|
90
|
-
}
|
|
91
|
-
? {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
85
|
+
},
|
|
86
|
+
...(typeof eventOfferId === 'string' && eventOfferId !== '') ? { id: eventOfferId } : undefined,
|
|
87
|
+
...(typeof ticketedOffer?.token === 'string' && ticketedOffer.token !== '')
|
|
88
|
+
? { token: ticketedOffer.token }
|
|
89
|
+
: undefined,
|
|
90
|
+
...(typeof validForMemberTierToken === 'string' && validForMemberTierToken !== ''
|
|
91
|
+
&& typeof validForMemberProgramIdentifier === 'string' && validForMemberProgramIdentifier !== '')
|
|
92
|
+
? {
|
|
93
|
+
validForMemberTier: {
|
|
94
|
+
token: validForMemberTierToken,
|
|
95
|
+
isTierOf: { identifier: validForMemberProgramIdentifier }
|
|
96
|
+
}
|
|
98
97
|
}
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
: undefined
|
|
99
|
+
};
|
|
101
100
|
// validations(eventId,eventOfferIdentifier,offerToken...)
|
|
102
|
-
|
|
101
|
+
await (0, validateStartRequest_1.validEventOfferByApplicationExists)({
|
|
103
102
|
event,
|
|
104
103
|
now,
|
|
105
104
|
availableAt: { id: instrument.id },
|
|
@@ -108,7 +107,7 @@ function issueEventOfferTicket(params) {
|
|
|
108
107
|
})(repos);
|
|
109
108
|
const expiresInSeconds = moment(transaction.expires)
|
|
110
109
|
.diff(now, 'seconds');
|
|
111
|
-
const { ticketToken } =
|
|
110
|
+
const { ticketToken } = await createOfferTicket({
|
|
112
111
|
object: authorizationObject,
|
|
113
112
|
validFrom: now,
|
|
114
113
|
expiresInSeconds,
|
|
@@ -119,5 +118,5 @@ function issueEventOfferTicket(params) {
|
|
|
119
118
|
instrument
|
|
120
119
|
})(repos);
|
|
121
120
|
return { ticketToken };
|
|
122
|
-
}
|
|
121
|
+
};
|
|
123
122
|
}
|
|
@@ -1,13 +1,4 @@
|
|
|
1
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
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.searchEventTicketOffers = searchEventTicketOffers;
|
|
13
4
|
const factory = require("../../../factory");
|
|
@@ -17,19 +8,18 @@ const searchPriceSpecs4event_1 = require("./searchPriceSpecs4event");
|
|
|
17
8
|
// tslint:disable-next-line:max-func-body-length
|
|
18
9
|
function searchTicketOffersByItemOffered(params) {
|
|
19
10
|
// tslint:disable-next-line:max-func-body-length
|
|
20
|
-
return (repos) =>
|
|
21
|
-
|
|
22
|
-
const eventService = (yield repos.product.projectFields({
|
|
11
|
+
return async (repos) => {
|
|
12
|
+
const eventService = (await repos.product.projectFields({
|
|
23
13
|
limit: 1,
|
|
24
14
|
page: 1,
|
|
25
|
-
id: { $eq: String(
|
|
15
|
+
id: { $eq: String(params.itemOffered?.id) }
|
|
26
16
|
}, ['hasOfferCatalog', 'project']
|
|
27
17
|
// []
|
|
28
18
|
)).shift();
|
|
29
19
|
if (eventService === undefined) {
|
|
30
20
|
throw new factory.errors.NotFound(factory.product.ProductType.EventService);
|
|
31
21
|
}
|
|
32
|
-
const offerCatalogItemsOfProduct =
|
|
22
|
+
const offerCatalogItemsOfProduct = eventService.hasOfferCatalog?.itemListElement;
|
|
33
23
|
/**
|
|
34
24
|
* プロダクトのカタログIDリスト
|
|
35
25
|
*/
|
|
@@ -46,17 +36,17 @@ function searchTicketOffersByItemOffered(params) {
|
|
|
46
36
|
*/
|
|
47
37
|
let subOfferCatalogId = firstCatalogIdOfProduct;
|
|
48
38
|
let isOfferCatalogItem = false;
|
|
49
|
-
const offerCatalogFirstElement =
|
|
39
|
+
const offerCatalogFirstElement = await repos.offerCatalog.findFirstItemListElementById({ id: firstCatalogIdOfProduct });
|
|
50
40
|
if (offerCatalogFirstElement.typeOf === 'OfferCatalog') {
|
|
51
41
|
subOfferCatalogId = offerCatalogFirstElement.id;
|
|
52
42
|
isOfferCatalogItem = true;
|
|
53
43
|
}
|
|
54
44
|
if (params.withSortIndex) {
|
|
55
45
|
// 明示的にカタログ指定可能にする
|
|
56
|
-
if (typeof
|
|
46
|
+
if (typeof params.includedInDataCatalog?.id === 'string' && params.includedInDataCatalog.id.length > 0) {
|
|
57
47
|
if (isOfferCatalogItem) {
|
|
58
48
|
// カタログに含まれるサブカタログか検証(2024-09-30~)
|
|
59
|
-
const offerCatalogIncludingSpecifiedElement =
|
|
49
|
+
const offerCatalogIncludingSpecifiedElement = await repos.offerCatalog.projectFields({
|
|
60
50
|
limit: 1,
|
|
61
51
|
page: 1,
|
|
62
52
|
id: { $in: catalogIdsOfProduct },
|
|
@@ -77,14 +67,14 @@ function searchTicketOffersByItemOffered(params) {
|
|
|
77
67
|
// サブカタログの適用決済カード条件を考慮
|
|
78
68
|
if (isOfferCatalogItem) {
|
|
79
69
|
// サブカタログ参照
|
|
80
|
-
const offerCatalogItem = (
|
|
70
|
+
const offerCatalogItem = (await repos.offerCatalogItem.projectFields({ id: { $in: [subOfferCatalogId] } }, ['relatedOffer']
|
|
81
71
|
// { relatedOffer: 1 }
|
|
82
72
|
)).shift();
|
|
83
73
|
if (offerCatalogItem === undefined) {
|
|
84
74
|
throw new factory.errors.NotFound('OfferCatalogItem');
|
|
85
75
|
}
|
|
86
76
|
// 強制的にサブカタログの適用決済カード条件に変更
|
|
87
|
-
const appliesToMovieTicketBySubCatalog =
|
|
77
|
+
const appliesToMovieTicketBySubCatalog = offerCatalogItem.relatedOffer?.priceSpecification?.appliesToMovieTicket;
|
|
88
78
|
if (Array.isArray(appliesToMovieTicketBySubCatalog)) {
|
|
89
79
|
priceSpecificationCondition = {
|
|
90
80
|
appliesToMovieTicket: {
|
|
@@ -103,9 +93,9 @@ function searchTicketOffersByItemOffered(params) {
|
|
|
103
93
|
};
|
|
104
94
|
}
|
|
105
95
|
}
|
|
106
|
-
const { offers, sortedOfferIds } =
|
|
96
|
+
const { offers, sortedOfferIds } = await repos.offer.searchByOfferCatalogIdWithSortIndex({
|
|
107
97
|
offerCatalog: { id: subOfferCatalogId, isOfferCatalogItem },
|
|
108
|
-
availableAtOrFrom: { id:
|
|
98
|
+
availableAtOrFrom: { id: params.store?.id },
|
|
109
99
|
unacceptedPaymentMethod: params.unacceptedPaymentMethod,
|
|
110
100
|
excludeAppliesToMovieTicket: params.excludeAppliesToMovieTicket,
|
|
111
101
|
priceSpecification: priceSpecificationCondition,
|
|
@@ -119,20 +109,19 @@ function searchTicketOffersByItemOffered(params) {
|
|
|
119
109
|
else {
|
|
120
110
|
throw new factory.errors.NotImplemented('only withSortIndex: true implemented'); // ID指定での検索はモジュール分離(2024-09-30~)
|
|
121
111
|
}
|
|
122
|
-
}
|
|
112
|
+
};
|
|
123
113
|
}
|
|
124
114
|
/**
|
|
125
115
|
* イベントから興行(旅客)オファーを検索する
|
|
126
116
|
*/
|
|
127
117
|
function searchEventTicketOffersByEvent(params) {
|
|
128
118
|
// tslint:disable-next-line:max-func-body-length
|
|
129
|
-
return (repos) =>
|
|
130
|
-
var _a, _b;
|
|
119
|
+
return async (repos) => {
|
|
131
120
|
const event = params.event;
|
|
132
121
|
let soundFormatTypes = [];
|
|
133
122
|
let videoFormatTypes = [];
|
|
134
123
|
if (event.typeOf === factory.eventType.ScreeningEvent) {
|
|
135
|
-
const superEvents =
|
|
124
|
+
const superEvents = await repos.eventSeries.projectEventSeriesFields({
|
|
136
125
|
limit: 1,
|
|
137
126
|
page: 1,
|
|
138
127
|
id: { $eq: event.superEvent.id }
|
|
@@ -146,15 +135,15 @@ function searchEventTicketOffersByEvent(params) {
|
|
|
146
135
|
}
|
|
147
136
|
soundFormatTypes = (Array.isArray(superEvent.soundFormat)) ? superEvent.soundFormat.map((f) => f.typeOf) : [];
|
|
148
137
|
// videoFormatTypes = (Array.isArray(superEvent.videoFormat)) ? superEvent.videoFormat.map((f) => f.typeOf) : [];
|
|
149
|
-
videoFormatTypes = (Array.isArray(
|
|
138
|
+
videoFormatTypes = (Array.isArray(superEvent.subEvent?.videoFormat)) ? superEvent.subEvent.videoFormat : [];
|
|
150
139
|
}
|
|
151
140
|
const unacceptedPaymentMethod = getUnacceptedPaymentMethodByEvent({ event });
|
|
152
141
|
// 上映方式がなければMovieTicket除外(2023-02-21~)
|
|
153
142
|
const excludeAppliesToMovieTicket = videoFormatTypes.length === 0;
|
|
154
143
|
// 興行設定があれば興行のカタログを参照する(2022-08-31~)
|
|
155
144
|
const eventOffers = event.offers;
|
|
156
|
-
const { availableOffers, sortedOfferIds } =
|
|
157
|
-
itemOffered: { id: String(
|
|
145
|
+
const { availableOffers, sortedOfferIds } = await searchTicketOffersByItemOffered({
|
|
146
|
+
itemOffered: { id: String(eventOffers?.itemOffered?.id) },
|
|
158
147
|
// ids: params.ids,
|
|
159
148
|
store: params.store,
|
|
160
149
|
limit: params.limit,
|
|
@@ -167,7 +156,7 @@ function searchEventTicketOffersByEvent(params) {
|
|
|
167
156
|
withSortIndex: true,
|
|
168
157
|
useIncludeInDataCatalog: params.useIncludeInDataCatalog
|
|
169
158
|
})(repos);
|
|
170
|
-
const { soundFormatChargeSpecs, videoFormatChargeSpecs, movieTicketTypeChargeSpecs } =
|
|
159
|
+
const { soundFormatChargeSpecs, videoFormatChargeSpecs, movieTicketTypeChargeSpecs } = await (0, searchPriceSpecs4event_1.searchPriceSpecs4event)({
|
|
171
160
|
project: { id: event.project.id },
|
|
172
161
|
soundFormatTypes,
|
|
173
162
|
videoFormatTypes,
|
|
@@ -176,11 +165,11 @@ function searchEventTicketOffersByEvent(params) {
|
|
|
176
165
|
const offers4event = [];
|
|
177
166
|
// 単価オファーから興行オファーを生成(順に処理)
|
|
178
167
|
for (const availableOffer of availableOffers) {
|
|
179
|
-
const sortIndex = sortedOfferIds
|
|
168
|
+
const sortIndex = sortedOfferIds?.indexOf(String(availableOffer.id));
|
|
180
169
|
let availability;
|
|
181
170
|
if (params.validateOfferRateLimit) {
|
|
182
171
|
// レート制限を確認
|
|
183
|
-
availability =
|
|
172
|
+
availability = await (0, checkAvailability_1.checkAvailability)({ event, unitPriceOffer: availableOffer })(repos);
|
|
184
173
|
}
|
|
185
174
|
offers4event.push((0, factory_1.createCompoundPriceSpec4event)({
|
|
186
175
|
eligibleQuantity: eventOffers.eligibleQuantity,
|
|
@@ -199,12 +188,11 @@ function searchEventTicketOffersByEvent(params) {
|
|
|
199
188
|
ticketOffers: offers4event,
|
|
200
189
|
unitPriceOffers: availableOffers
|
|
201
190
|
};
|
|
202
|
-
}
|
|
191
|
+
};
|
|
203
192
|
}
|
|
204
193
|
function getUnacceptedPaymentMethodByEvent(params) {
|
|
205
|
-
var _a;
|
|
206
194
|
let unacceptedPaymentMethod = [];
|
|
207
|
-
const unacceptedPaymentMethodByEvent =
|
|
195
|
+
const unacceptedPaymentMethodByEvent = params.event.offers?.unacceptedPaymentMethod;
|
|
208
196
|
// 施設コンテンツを参照する必要はない(2022-10-31~)
|
|
209
197
|
if (Array.isArray(unacceptedPaymentMethodByEvent)) {
|
|
210
198
|
unacceptedPaymentMethod = unacceptedPaymentMethodByEvent;
|
|
@@ -215,10 +203,10 @@ function getUnacceptedPaymentMethodByEvent(params) {
|
|
|
215
203
|
* 興行オファー検索
|
|
216
204
|
*/
|
|
217
205
|
function searchEventTicketOffers(params) {
|
|
218
|
-
return (repos) =>
|
|
206
|
+
return async (repos) => {
|
|
219
207
|
// const eventType = params.event.typeOf;
|
|
220
208
|
// optimize projection(2024-07-17~)
|
|
221
|
-
const event =
|
|
209
|
+
const event = await repos.event.projectEventFieldsById({ id: params.event.id }, [
|
|
222
210
|
'project', 'typeOf', 'startDate',
|
|
223
211
|
'superEvent.id',
|
|
224
212
|
'offers.itemOffered.id', 'offers.offeredThrough', 'offers.unacceptedPaymentMethod', 'offers.eligibleQuantity'
|
|
@@ -236,7 +224,7 @@ function searchEventTicketOffers(params) {
|
|
|
236
224
|
case factory.service.webAPI.Identifier.COA:
|
|
237
225
|
throw new factory.errors.NotImplemented(`booking service '${eventOffers.offeredThrough.identifier}' not implemented`);
|
|
238
226
|
default:
|
|
239
|
-
const searchOffersResult =
|
|
227
|
+
const searchOffersResult = await searchEventTicketOffersByEvent({
|
|
240
228
|
event,
|
|
241
229
|
store: params.store,
|
|
242
230
|
priceSpecification: params.priceSpecification,
|
|
@@ -252,5 +240,5 @@ function searchEventTicketOffers(params) {
|
|
|
252
240
|
unitPriceOffers = searchOffersResult.unitPriceOffers;
|
|
253
241
|
}
|
|
254
242
|
return { ticketOffers: offers, unitPriceOffers };
|
|
255
|
-
}
|
|
243
|
+
};
|
|
256
244
|
}
|
|
@@ -1,20 +1,10 @@
|
|
|
1
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
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.searchOfferAppliesToMovieTicket = searchOfferAppliesToMovieTicket;
|
|
13
4
|
const factory = require("../../../factory");
|
|
14
5
|
function getUnacceptedPaymentMethodByEvent(params) {
|
|
15
|
-
var _a;
|
|
16
6
|
let unacceptedPaymentMethod = [];
|
|
17
|
-
const unacceptedPaymentMethodByEvent =
|
|
7
|
+
const unacceptedPaymentMethodByEvent = params.event.offers?.unacceptedPaymentMethod;
|
|
18
8
|
// 施設コンテンツを参照する必要はない(2022-10-31~)
|
|
19
9
|
if (Array.isArray(unacceptedPaymentMethodByEvent)) {
|
|
20
10
|
unacceptedPaymentMethod = unacceptedPaymentMethodByEvent;
|
|
@@ -27,14 +17,13 @@ function getUnacceptedPaymentMethodByEvent(params) {
|
|
|
27
17
|
* また、サブカタログによるカタログが設定されている場合、カタログのひとつめのサブカタログのみが検索対象
|
|
28
18
|
*/
|
|
29
19
|
function searchOfferAppliesToMovieTicket(params) {
|
|
30
|
-
return (repos) =>
|
|
31
|
-
var _a, _b, _c, _d, _e;
|
|
20
|
+
return async (repos) => {
|
|
32
21
|
// optimize(2024-07-18~)
|
|
33
|
-
const event =
|
|
22
|
+
const event = await repos.event.projectEventFieldsById({ id: params.event.id }, ['project', 'startDate', 'typeOf', 'superEvent.id', 'offers.itemOffered.id', 'offers.unacceptedPaymentMethod']);
|
|
34
23
|
// let soundFormatTypes: string[] = [];
|
|
35
24
|
let videoFormatTypes = [];
|
|
36
25
|
if (event.typeOf === factory.eventType.ScreeningEvent) {
|
|
37
|
-
const superEvents =
|
|
26
|
+
const superEvents = await repos.eventSeries.projectEventSeriesFields({
|
|
38
27
|
limit: 1,
|
|
39
28
|
page: 1,
|
|
40
29
|
id: { $eq: event.superEvent.id }
|
|
@@ -48,7 +37,7 @@ function searchOfferAppliesToMovieTicket(params) {
|
|
|
48
37
|
}
|
|
49
38
|
// soundFormatTypes = (Array.isArray(superEvent.soundFormat)) ? superEvent.soundFormat.map((f) => f.typeOf) : [];
|
|
50
39
|
// videoFormatTypes = (Array.isArray(superEvent.videoFormat)) ? superEvent.videoFormat.map((f) => f.typeOf) : [];
|
|
51
|
-
videoFormatTypes = (Array.isArray(
|
|
40
|
+
videoFormatTypes = (Array.isArray(superEvent.subEvent?.videoFormat)) ? superEvent.subEvent.videoFormat : [];
|
|
52
41
|
}
|
|
53
42
|
const unacceptedPaymentMethod = getUnacceptedPaymentMethodByEvent({ event });
|
|
54
43
|
// 上映方式がなければMovieTicket除外
|
|
@@ -56,8 +45,8 @@ function searchOfferAppliesToMovieTicket(params) {
|
|
|
56
45
|
// 興行設定があれば興行のカタログを参照する
|
|
57
46
|
const eventOffers = event.offers;
|
|
58
47
|
let catalogId;
|
|
59
|
-
if (typeof
|
|
60
|
-
const eventService = (
|
|
48
|
+
if (typeof eventOffers.itemOffered?.id === 'string') {
|
|
49
|
+
const eventService = (await repos.product.projectFields({
|
|
61
50
|
limit: 1,
|
|
62
51
|
page: 1,
|
|
63
52
|
id: { $eq: eventOffers.itemOffered.id }
|
|
@@ -68,7 +57,7 @@ function searchOfferAppliesToMovieTicket(params) {
|
|
|
68
57
|
throw new factory.errors.NotFound(factory.product.ProductType.EventService);
|
|
69
58
|
}
|
|
70
59
|
// const firstCatalogIdOfProduct = eventService.hasOfferCatalog?.id; // migrate to itemListElement(2024-09-30~)
|
|
71
|
-
const firstCatalogIdOfProduct =
|
|
60
|
+
const firstCatalogIdOfProduct = eventService.hasOfferCatalog?.itemListElement.at(0)?.id;
|
|
72
61
|
if (typeof firstCatalogIdOfProduct === 'string') {
|
|
73
62
|
catalogId = firstCatalogIdOfProduct;
|
|
74
63
|
}
|
|
@@ -79,14 +68,14 @@ function searchOfferAppliesToMovieTicket(params) {
|
|
|
79
68
|
// サブカタログIDを決定
|
|
80
69
|
let subOfferCatalogId = catalogId;
|
|
81
70
|
let isOfferCatalogItem = false;
|
|
82
|
-
const offerCatalogFirstElement =
|
|
71
|
+
const offerCatalogFirstElement = await repos.offerCatalog.findFirstItemListElementById({ id: catalogId });
|
|
83
72
|
if (offerCatalogFirstElement.typeOf === 'OfferCatalog') {
|
|
84
73
|
subOfferCatalogId = offerCatalogFirstElement.id;
|
|
85
74
|
isOfferCatalogItem = true;
|
|
86
75
|
}
|
|
87
76
|
return repos.offer.searchAvaialbleAppliesToMovieTicketByOfferCatalogId({
|
|
88
77
|
subOfferCatalog: { id: subOfferCatalogId, isOfferCatalogItem },
|
|
89
|
-
availableAtOrFrom: { id:
|
|
78
|
+
availableAtOrFrom: { id: params.store?.id },
|
|
90
79
|
unacceptedPaymentMethod: unacceptedPaymentMethod,
|
|
91
80
|
excludeAppliesToMovieTicket: excludeAppliesToMovieTicket,
|
|
92
81
|
onlyValid: params.onlyValid === true,
|
|
@@ -94,5 +83,5 @@ function searchOfferAppliesToMovieTicket(params) {
|
|
|
94
83
|
page: params.page,
|
|
95
84
|
useIncludeInDataCatalog: params.options.useIncludeInDataCatalog
|
|
96
85
|
});
|
|
97
|
-
}
|
|
86
|
+
};
|
|
98
87
|
}
|
|
@@ -1,20 +1,10 @@
|
|
|
1
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
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.searchOfferCatalogItemAvailability = searchOfferCatalogItemAvailability;
|
|
13
4
|
const factory = require("../../../factory");
|
|
14
5
|
function getUnacceptedPaymentMethodByEvent(params) {
|
|
15
|
-
var _a;
|
|
16
6
|
let unacceptedPaymentMethod = [];
|
|
17
|
-
const unacceptedPaymentMethodByEvent =
|
|
7
|
+
const unacceptedPaymentMethodByEvent = params.event.offers?.unacceptedPaymentMethod;
|
|
18
8
|
// 施設コンテンツを参照する必要はない(2022-10-31~)
|
|
19
9
|
if (Array.isArray(unacceptedPaymentMethodByEvent)) {
|
|
20
10
|
unacceptedPaymentMethod = unacceptedPaymentMethodByEvent;
|
|
@@ -28,8 +18,7 @@ const MAX_LIMIT_SEARCH_OFFER_CATALOG_ITEMS = 10;
|
|
|
28
18
|
// tslint:disable-next-line:max-func-body-length
|
|
29
19
|
function searchOfferCatalogItemAvailability(params) {
|
|
30
20
|
// tslint:disable-next-line:max-func-body-length
|
|
31
|
-
return (repos) =>
|
|
32
|
-
var _a, _b, _c, _d;
|
|
21
|
+
return async (repos) => {
|
|
33
22
|
const { considerUnacceptedPaymentMethod, useIncludeInDataCatalog } = params.options;
|
|
34
23
|
if (typeof params.limit !== 'number') {
|
|
35
24
|
throw new factory.errors.Argument('limit', 'must be number');
|
|
@@ -43,12 +32,12 @@ function searchOfferCatalogItemAvailability(params) {
|
|
|
43
32
|
}
|
|
44
33
|
let availabilities = [];
|
|
45
34
|
// optimize(2024-07-18~)
|
|
46
|
-
const event =
|
|
35
|
+
const event = await repos.event.projectEventFieldsById({ id: params.event.id }, ['project', 'offers.itemOffered.id', 'offers.unacceptedPaymentMethod']);
|
|
47
36
|
// 興行設定があれば興行のカタログを参照する
|
|
48
37
|
const eventOffers = event.offers;
|
|
49
38
|
let catalogId;
|
|
50
|
-
if (typeof
|
|
51
|
-
const eventService = (
|
|
39
|
+
if (typeof eventOffers.itemOffered?.id === 'string') {
|
|
40
|
+
const eventService = (await repos.product.projectFields({
|
|
52
41
|
limit: 1,
|
|
53
42
|
page: 1,
|
|
54
43
|
id: { $eq: eventOffers.itemOffered.id }
|
|
@@ -58,11 +47,11 @@ function searchOfferCatalogItemAvailability(params) {
|
|
|
58
47
|
if (eventService === undefined) {
|
|
59
48
|
throw new factory.errors.NotFound(factory.product.ProductType.EventService);
|
|
60
49
|
}
|
|
61
|
-
const productCatalogs =
|
|
50
|
+
const productCatalogs = eventService.hasOfferCatalog?.itemListElement;
|
|
62
51
|
/**
|
|
63
52
|
* 明示的なカタログID指定に対応(2024-10-01~)
|
|
64
53
|
*/
|
|
65
|
-
const catalogIdSpecified =
|
|
54
|
+
const catalogIdSpecified = params.options.includedInDataCatalog?.id;
|
|
66
55
|
if (typeof catalogIdSpecified === 'string') {
|
|
67
56
|
const productHasSpecifiedCatalog = Array.isArray(productCatalogs) && productCatalogs.some(({ id }) => id === catalogIdSpecified);
|
|
68
57
|
if (!productHasSpecifiedCatalog) {
|
|
@@ -73,7 +62,7 @@ function searchOfferCatalogItemAvailability(params) {
|
|
|
73
62
|
else {
|
|
74
63
|
// 指定のない場合、自動的にひとつめのカタログを選択
|
|
75
64
|
// const firstCatalogIdOfProduct = eventService.hasOfferCatalog?.id; // migrate to itemListElement(2024-09-30~)
|
|
76
|
-
const firstCatalogIdOfProduct =
|
|
65
|
+
const firstCatalogIdOfProduct = productCatalogs?.at(0)?.id;
|
|
77
66
|
if (typeof firstCatalogIdOfProduct === 'string') {
|
|
78
67
|
catalogId = firstCatalogIdOfProduct;
|
|
79
68
|
}
|
|
@@ -82,9 +71,9 @@ function searchOfferCatalogItemAvailability(params) {
|
|
|
82
71
|
if (typeof catalogId !== 'string') {
|
|
83
72
|
throw new factory.errors.NotFound('itemOffered.hasOfferCatalog');
|
|
84
73
|
}
|
|
85
|
-
const offerCatalogFirstElement =
|
|
74
|
+
const offerCatalogFirstElement = await repos.offerCatalog.findFirstItemListElementById({ id: catalogId });
|
|
86
75
|
if (offerCatalogFirstElement.typeOf === 'OfferCatalog') {
|
|
87
|
-
const catalogItemListElements =
|
|
76
|
+
const catalogItemListElements = await repos.offerCatalog.sliceItemListElementById({
|
|
88
77
|
id: catalogId,
|
|
89
78
|
limit: params.limit,
|
|
90
79
|
page: params.page
|
|
@@ -93,7 +82,7 @@ function searchOfferCatalogItemAvailability(params) {
|
|
|
93
82
|
if (catalogItemListElements.length > 0) {
|
|
94
83
|
if (useIncludeInDataCatalog) {
|
|
95
84
|
// 単価オファーから利用可能なサブカタログを検索
|
|
96
|
-
const availableCatalogs =
|
|
85
|
+
const availableCatalogs = await repos.offer.searchAvailableCatalogs({
|
|
97
86
|
project: { id: event.project.id },
|
|
98
87
|
includedInDataCatalog: { id: catalogItemListElements.map((element) => element.id) },
|
|
99
88
|
availableAtOrFrom: { id: params.availableAtOrFrom.id },
|
|
@@ -111,7 +100,7 @@ function searchOfferCatalogItemAvailability(params) {
|
|
|
111
100
|
for (const element of catalogItemListElements) {
|
|
112
101
|
availabilities.push({
|
|
113
102
|
id: element.id,
|
|
114
|
-
isAvailable:
|
|
103
|
+
isAvailable: await repos.offer.isCatalogAvailable({
|
|
115
104
|
includedInDataCatalog: { id: element.id },
|
|
116
105
|
availableAtOrFrom: { id: params.availableAtOrFrom.id },
|
|
117
106
|
unacceptedPaymentMethod: (considerUnacceptedPaymentMethod) ? unacceptedPaymentMethod : []
|
|
@@ -125,5 +114,5 @@ function searchOfferCatalogItemAvailability(params) {
|
|
|
125
114
|
// Offerによるカタログの場合はひとまずempty
|
|
126
115
|
}
|
|
127
116
|
return availabilities;
|
|
128
|
-
}
|
|
117
|
+
};
|
|
129
118
|
}
|
|
@@ -1,13 +1,4 @@
|
|
|
1
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
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.searchOfferCatalogItems = searchOfferCatalogItems;
|
|
13
4
|
const factory = require("../../../factory");
|
|
@@ -16,8 +7,7 @@ const factory = require("../../../factory");
|
|
|
16
7
|
*/
|
|
17
8
|
function searchOfferCatalogItems(params) {
|
|
18
9
|
// tslint:disable-next-line:max-func-body-length
|
|
19
|
-
return (repos) =>
|
|
20
|
-
var _a, _b, _c, _d;
|
|
10
|
+
return async (repos) => {
|
|
21
11
|
if (typeof params.limit !== 'number') {
|
|
22
12
|
throw new factory.errors.Argument('limit', 'must be number');
|
|
23
13
|
}
|
|
@@ -26,12 +16,12 @@ function searchOfferCatalogItems(params) {
|
|
|
26
16
|
}
|
|
27
17
|
let offerCatalogItems = [];
|
|
28
18
|
// optimize(2024-07-18~)
|
|
29
|
-
const event =
|
|
19
|
+
const event = await repos.event.projectEventFieldsById({ id: params.event.id }, ['offers.itemOffered.id']);
|
|
30
20
|
// 興行設定があれば興行のカタログを参照する
|
|
31
21
|
const eventOffers = event.offers;
|
|
32
22
|
let catalogId;
|
|
33
|
-
if (typeof
|
|
34
|
-
const eventService = (
|
|
23
|
+
if (typeof eventOffers.itemOffered?.id === 'string') {
|
|
24
|
+
const eventService = (await repos.product.projectFields({
|
|
35
25
|
limit: 1,
|
|
36
26
|
page: 1,
|
|
37
27
|
id: { $eq: eventOffers.itemOffered.id }
|
|
@@ -41,11 +31,11 @@ function searchOfferCatalogItems(params) {
|
|
|
41
31
|
if (eventService === undefined) {
|
|
42
32
|
throw new factory.errors.NotFound(factory.product.ProductType.EventService);
|
|
43
33
|
}
|
|
44
|
-
const productCatalogs =
|
|
34
|
+
const productCatalogs = eventService.hasOfferCatalog?.itemListElement;
|
|
45
35
|
/**
|
|
46
36
|
* 明示的なカタログID指定に対応(2024-10-01~)
|
|
47
37
|
*/
|
|
48
|
-
const catalogIdSpecified =
|
|
38
|
+
const catalogIdSpecified = params.options.includedInDataCatalog?.id;
|
|
49
39
|
if (typeof catalogIdSpecified === 'string') {
|
|
50
40
|
const productHasSpecifiedCatalog = Array.isArray(productCatalogs) && productCatalogs.some(({ id }) => id === catalogIdSpecified);
|
|
51
41
|
if (!productHasSpecifiedCatalog) {
|
|
@@ -56,7 +46,7 @@ function searchOfferCatalogItems(params) {
|
|
|
56
46
|
else {
|
|
57
47
|
// 指定のない場合、自動的にひとつめのカタログを選択
|
|
58
48
|
// const firstCatalogIdOfProduct = eventService.hasOfferCatalog?.id; // migrate to itemListElement(2024-09-30~)
|
|
59
|
-
const firstCatalogIdOfProduct =
|
|
49
|
+
const firstCatalogIdOfProduct = productCatalogs?.at(0)?.id;
|
|
60
50
|
if (typeof firstCatalogIdOfProduct === 'string') {
|
|
61
51
|
catalogId = firstCatalogIdOfProduct;
|
|
62
52
|
}
|
|
@@ -65,16 +55,16 @@ function searchOfferCatalogItems(params) {
|
|
|
65
55
|
if (typeof catalogId !== 'string') {
|
|
66
56
|
throw new factory.errors.NotFound('itemOffered.hasOfferCatalog');
|
|
67
57
|
}
|
|
68
|
-
const offerCatalogFirstElement =
|
|
58
|
+
const offerCatalogFirstElement = await repos.offerCatalog.findFirstItemListElementById({ id: catalogId });
|
|
69
59
|
if (offerCatalogFirstElement.typeOf === 'OfferCatalog') {
|
|
70
|
-
const catalogItemListElements =
|
|
60
|
+
const catalogItemListElements = await repos.offerCatalog.sliceItemListElementById({
|
|
71
61
|
id: catalogId,
|
|
72
62
|
limit: params.limit,
|
|
73
63
|
page: params.page
|
|
74
64
|
});
|
|
75
65
|
if (catalogItemListElements.length > 0) {
|
|
76
66
|
// サブカタログ検索
|
|
77
|
-
const searchOfferCatalogItemsResult =
|
|
67
|
+
const searchOfferCatalogItemsResult = await repos.offerCatalogItem.projectFields({
|
|
78
68
|
id: { $in: catalogItemListElements.map((element) => element.id) }
|
|
79
69
|
}, ['description', 'name', 'additionalProperty', 'relatedOffer']);
|
|
80
70
|
offerCatalogItems = catalogItemListElements.map((element) => {
|
|
@@ -82,7 +72,10 @@ function searchOfferCatalogItems(params) {
|
|
|
82
72
|
if (offerCatalogItem === undefined) {
|
|
83
73
|
throw new factory.errors.NotFound('OfferCatalog', `offerCatalogItem '${element.id}' not found`);
|
|
84
74
|
}
|
|
85
|
-
return
|
|
75
|
+
return {
|
|
76
|
+
...element,
|
|
77
|
+
...offerCatalogItem
|
|
78
|
+
};
|
|
86
79
|
});
|
|
87
80
|
}
|
|
88
81
|
}
|
|
@@ -90,5 +83,5 @@ function searchOfferCatalogItems(params) {
|
|
|
90
83
|
// Offerによるカタログの場合はひとまずempty
|
|
91
84
|
}
|
|
92
85
|
return offerCatalogItems;
|
|
93
|
-
}
|
|
86
|
+
};
|
|
94
87
|
}
|