@chevre/domain 23.2.0-alpha.61 → 23.2.0-alpha.63
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 -59
- package/lib/chevre/eventEmitter/assetTransaction.js +0 -1
- package/lib/chevre/eventEmitter/task.js +0 -1
- package/lib/chevre/eventEmitter/transaction.js +0 -1
- package/lib/chevre/factory/event.js +69 -42
- package/lib/chevre/factory/transactionNumber.js +2 -2
- package/lib/chevre/index.js +15 -30
- package/lib/chevre/repo/acceptedOffer.js +177 -197
- package/lib/chevre/repo/acceptedPaymentMethod.js +131 -144
- package/lib/chevre/repo/account.js +194 -238
- package/lib/chevre/repo/accountTitle.js +9 -21
- package/lib/chevre/repo/accountTransaction.js +186 -193
- package/lib/chevre/repo/accountingReport.js +88 -107
- package/lib/chevre/repo/action.js +849 -883
- package/lib/chevre/repo/additionalProperty.js +64 -92
- package/lib/chevre/repo/advanceBookingRequirement.js +69 -91
- package/lib/chevre/repo/aggregateOffer.js +392 -430
- 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 +692 -729
- package/lib/chevre/repo/authorization.js +115 -134
- package/lib/chevre/repo/categoryCode.js +114 -147
- package/lib/chevre/repo/comment.js +73 -82
- package/lib/chevre/repo/concurrentLock.js +17 -29
- package/lib/chevre/repo/confirmationNumber.js +19 -35
- package/lib/chevre/repo/creativeWork.js +152 -180
- package/lib/chevre/repo/credentials.js +39 -51
- package/lib/chevre/repo/customer.js +64 -88
- package/lib/chevre/repo/customerType.js +52 -62
- package/lib/chevre/repo/emailMessage.js +51 -80
- package/lib/chevre/repo/event.js +640 -684
- package/lib/chevre/repo/eventOffer.js +122 -125
- package/lib/chevre/repo/eventSellerMakesOffer.js +64 -76
- package/lib/chevre/repo/eventSeries.js +207 -244
- package/lib/chevre/repo/identity.js +94 -107
- package/lib/chevre/repo/identityProvider.js +72 -96
- package/lib/chevre/repo/issuer.js +102 -135
- package/lib/chevre/repo/member.js +238 -259
- package/lib/chevre/repo/memberProgram.js +157 -177
- package/lib/chevre/repo/merchantReturnPolicy.js +61 -94
- package/lib/chevre/repo/message.js +122 -135
- package/lib/chevre/repo/mongoose/onIndexCreated.js +0 -1
- 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 +1 -1
- 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 -2
- 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 +67 -94
- package/lib/chevre/repo/note.js +143 -147
- package/lib/chevre/repo/noteAboutOrder.js +112 -113
- package/lib/chevre/repo/offer/unitPriceInCatalog.js +330 -314
- package/lib/chevre/repo/offerCatalog.js +302 -334
- package/lib/chevre/repo/offerCatalogItem.js +289 -317
- package/lib/chevre/repo/offerItemCondition.js +60 -85
- package/lib/chevre/repo/order.js +559 -607
- package/lib/chevre/repo/orderInTransaction.js +113 -136
- package/lib/chevre/repo/orderNumber.js +95 -112
- package/lib/chevre/repo/ownershipInfo.js +212 -240
- package/lib/chevre/repo/passport.js +93 -102
- package/lib/chevre/repo/paymentMethod/creditCard.js +151 -169
- package/lib/chevre/repo/paymentService.js +179 -200
- package/lib/chevre/repo/paymentServiceChannel.js +76 -100
- package/lib/chevre/repo/paymentServiceProvider.js +186 -201
- package/lib/chevre/repo/pendingReservation.js +272 -305
- package/lib/chevre/repo/permit.js +47 -42
- package/lib/chevre/repo/person.js +217 -256
- package/lib/chevre/repo/place/busStop.js +76 -106
- 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 +185 -220
- package/lib/chevre/repo/place/screeningRoom.js +339 -325
- package/lib/chevre/repo/place/seat.js +538 -481
- package/lib/chevre/repo/place/section.js +328 -296
- package/lib/chevre/repo/potentialAction.js +67 -87
- package/lib/chevre/repo/priceSpecification.js +102 -146
- package/lib/chevre/repo/product.js +203 -239
- package/lib/chevre/repo/productHasOfferCatalog.js +39 -50
- package/lib/chevre/repo/productModel.js +94 -127
- 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 -57
- package/lib/chevre/repo/reservation.js +369 -398
- package/lib/chevre/repo/reserveInterface.js +31 -42
- package/lib/chevre/repo/role.js +93 -112
- package/lib/chevre/repo/schedule.js +25 -36
- package/lib/chevre/repo/seller.js +114 -147
- package/lib/chevre/repo/sellerMakesOffer.js +95 -110
- package/lib/chevre/repo/sellerPaymentAccepted.js +92 -109
- package/lib/chevre/repo/sellerReturnPolicy.js +74 -97
- package/lib/chevre/repo/service/availableHour.js +27 -38
- package/lib/chevre/repo/serviceOutput.js +54 -67
- package/lib/chevre/repo/serviceOutputIdentifier.js +46 -58
- package/lib/chevre/repo/setting/jwt.js +40 -50
- package/lib/chevre/repo/setting.js +48 -48
- package/lib/chevre/repo/stockHolder.js +179 -199
- package/lib/chevre/repo/task.js +610 -619
- package/lib/chevre/repo/telemetry.js +1 -0
- package/lib/chevre/repo/ticket.js +52 -65
- package/lib/chevre/repo/transaction.js +754 -815
- package/lib/chevre/repo/transactionNumber.js +67 -80
- package/lib/chevre/repo/transactionNumberCounter.js +68 -79
- package/lib/chevre/repo/transactionProcess.js +36 -47
- package/lib/chevre/repo/trip.js +144 -164
- package/lib/chevre/repo/webSite.js +90 -106
- package/lib/chevre/repository.js +455 -647
- package/lib/chevre/service/account.js +9 -21
- package/lib/chevre/service/accountTransaction/deposit.js +16 -17
- package/lib/chevre/service/accountTransaction/transfer.js +18 -22
- package/lib/chevre/service/accountTransaction/withdraw.js +16 -17
- package/lib/chevre/service/accountTransaction.js +4 -16
- 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 -14
- 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 -24
- package/lib/chevre/service/assetTransaction/cancelReservation/startAndConfirm.js +17 -15
- package/lib/chevre/service/assetTransaction/cancelReservation.js +7 -18
- 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.js +6 -16
- package/lib/chevre/service/assetTransaction/moneyTransfer/potentialActions.js +13 -25
- package/lib/chevre/service/assetTransaction/moneyTransfer.js +101 -90
- package/lib/chevre/service/assetTransaction/pay/cancel.js +3 -12
- package/lib/chevre/service/assetTransaction/pay/check.js +4 -14
- package/lib/chevre/service/assetTransaction/pay/confirm.js +18 -21
- package/lib/chevre/service/assetTransaction/pay/exportTasksById.js +4 -14
- package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +33 -34
- package/lib/chevre/service/assetTransaction/pay/searchGMOTrade.js +7 -17
- package/lib/chevre/service/assetTransaction/pay/start/account/validation.js +6 -16
- package/lib/chevre/service/assetTransaction/pay/start/factory.js +64 -37
- package/lib/chevre/service/assetTransaction/pay/start/preStart/validateAcceptedPaymentMethodIfNeeded.js +7 -19
- package/lib/chevre/service/assetTransaction/pay/start/preStart/validateSeller.js +6 -16
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeAccount.js +7 -17
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.js +9 -15
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.js +3 -12
- package/lib/chevre/service/assetTransaction/pay/start.js +29 -35
- 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 -41
- package/lib/chevre/service/assetTransaction/registerService/factory.js +65 -28
- package/lib/chevre/service/assetTransaction/registerService/potentialActions.js +50 -43
- package/lib/chevre/service/assetTransaction/registerService.js +45 -56
- package/lib/chevre/service/assetTransaction/reserve/cancel.js +5 -14
- package/lib/chevre/service/assetTransaction/reserve/confirm/factory.js +15 -4
- package/lib/chevre/service/assetTransaction/reserve/confirm.js +21 -26
- package/lib/chevre/service/assetTransaction/reserve/exportTasksById.js +3 -13
- package/lib/chevre/service/assetTransaction/reserve/start/createSubReservations.js +99 -83
- package/lib/chevre/service/assetTransaction/reserve/start/factory/createPointAward.js +17 -12
- package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.js +108 -72
- 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 -108
- 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 -56
- package/lib/chevre/service/assetTransaction/reserve/validateStartRequest/verifyTicketTokenAsNeeded.js +7 -19
- 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 +48 -52
- package/lib/chevre/service/event/processUpdateMovieTheater.js +21 -26
- package/lib/chevre/service/event/saveScreeningEventSeries.js +56 -41
- package/lib/chevre/service/event/saveScreeningEvents.js +14 -29
- package/lib/chevre/service/event.js +34 -30
- package/lib/chevre/service/iam.js +8 -17
- package/lib/chevre/service/moneyTransfer.js +128 -112
- package/lib/chevre/service/notification/factory.js +11 -10
- package/lib/chevre/service/notification/notifyAbortedTasksByEmail.js +11 -15
- package/lib/chevre/service/notification/notifyByEmail.js +7 -19
- package/lib/chevre/service/notification/sendEmailMessage.js +23 -26
- package/lib/chevre/service/notification/triggerWebhook.js +58 -56
- package/lib/chevre/service/offer/any.js +6 -15
- package/lib/chevre/service/offer/event/authorize/factory.js +139 -63
- package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre/requestedProgramMembershipUsed2permit.js +8 -19
- package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.js +43 -27
- package/lib/chevre/service/offer/event/authorize.js +114 -71
- package/lib/chevre/service/offer/event/checkAvailability.js +5 -15
- package/lib/chevre/service/offer/event/importFromCOA/factory.js +9 -3
- 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 -41
- package/lib/chevre/service/offer/event/searchOfferAppliesToMovieTicket.js +11 -22
- package/lib/chevre/service/offer/event/searchOfferCatalogItemAvailability.js +13 -26
- package/lib/chevre/service/offer/event/searchOfferCatalogItems.js +15 -23
- package/lib/chevre/service/offer/event/searchOffersByIds.js +24 -39
- 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 -41
- package/lib/chevre/service/offer/event/voidTransactionByActionId.js +14 -20
- package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer/authorize.js +52 -42
- 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 -26
- package/lib/chevre/service/offer/eventServiceByCOA/authorize/validateAcceptedOffers.js +67 -62
- package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +16 -27
- package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +8 -18
- package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +42 -43
- package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.js +22 -25
- package/lib/chevre/service/offer/factory.js +18 -8
- 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 -65
- package/lib/chevre/service/offer/product/factory.js +54 -32
- package/lib/chevre/service/offer/product/searchProductOffers.js +30 -24
- package/lib/chevre/service/offer/product.js +106 -82
- package/lib/chevre/service/offer.js +48 -45
- 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 -36
- package/lib/chevre/service/order/findPlaceOrderTransaction.js +3 -12
- package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +64 -70
- 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.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 -14
- 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.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 -20
- 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 -23
- package/lib/chevre/service/order/placeOrderWithoutTransaction.js +10 -18
- package/lib/chevre/service/order/returnOrder.js +27 -30
- package/lib/chevre/service/order/sendOrder.js +37 -37
- package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.js +19 -25
- package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +24 -39
- package/lib/chevre/service/payment/any/factory.js +106 -50
- 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 -21
- package/lib/chevre/service/payment/any/person2username.js +32 -45
- package/lib/chevre/service/payment/any/publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl.js +8 -18
- package/lib/chevre/service/payment/any/verifyTicketTokenAsNeeded.js +5 -17
- package/lib/chevre/service/payment/any.js +181 -142
- package/lib/chevre/service/payment/creditCard/authorize/handleAuthorizeError.js +2 -2
- package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +44 -25
- 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 -51
- package/lib/chevre/service/payment/creditCard/searchGMOTrade.js +33 -45
- package/lib/chevre/service/payment/creditCard/voidTransaction.js +15 -26
- 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 -24
- package/lib/chevre/service/payment/movieTicket/authorize.js +35 -30
- 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 -60
- package/lib/chevre/service/payment/movieTicket/validation.js +41 -37
- package/lib/chevre/service/payment/movieTicket/voidTransaction.js +8 -18
- package/lib/chevre/service/payment/paymentCard.js +87 -104
- package/lib/chevre/service/permit.js +36 -35
- package/lib/chevre/service/product.js +23 -28
- 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 -70
- package/lib/chevre/service/reserve/cancelReservation.js +92 -93
- package/lib/chevre/service/reserve/checkInReservation.js +24 -29
- package/lib/chevre/service/reserve/confirmReservation.js +33 -39
- 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 -25
- package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +38 -30
- package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +45 -37
- package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +37 -33
- package/lib/chevre/service/reserve/potentialActions/onReservationsCreated.js +17 -23
- package/lib/chevre/service/reserve/searchByOrder.js +10 -20
- package/lib/chevre/service/reserve/useReservation.js +47 -34
- package/lib/chevre/service/reserve/verifyToken4reservation.js +7 -14
- package/lib/chevre/service/reserveCOA/cancelReservation.js +7 -17
- package/lib/chevre/service/reserveCOA/factory.js +5 -1
- package/lib/chevre/service/task/acceptCOAOffer.js +20 -25
- 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 -45
- package/lib/chevre/service/task/createAccountingReport.js +14 -20
- package/lib/chevre/service/task/deletePerson.js +48 -60
- 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 -19
- 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 -24
- package/lib/chevre/service/task/onResourceDeleted.js +17 -27
- 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 -158
- 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 -49
- 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 -45
- 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 -26
- 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 -22
- package/lib/chevre/service/transaction/deleteTransaction.js +104 -88
- package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.js +15 -9
- 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 -98
- 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 -6
- package/lib/chevre/service/transaction/placeOrder/confirm/validation/validatePrice.js +2 -3
- package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +30 -47
- package/lib/chevre/service/transaction/placeOrder/confirm.js +75 -59
- package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +31 -15
- 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 -60
- package/lib/chevre/service/transaction/placeOrder/start.js +14 -18
- package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +13 -7
- package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +176 -190
- package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPointAward.js +75 -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 -104
- package/lib/chevre/service/transaction/returnOrder/preStart/getReturnPolicyByProject.js +60 -80
- package/lib/chevre/service/transaction/returnOrder/preStart.js +42 -47
- package/lib/chevre/service/transaction/returnOrder.js +32 -37
- 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 -18
- package/lib/chevre/service.js +85 -131
- package/lib/chevre/settings/aggregation.js +4 -0
- package/lib/chevre/settings.js +7 -1
- package/lib/index.js +0 -1
- package/package.json +6 -11
- package/example/src/chevre/addEventBySchedule.ts +0 -46
- 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
|
@@ -1,24 +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
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
-
var t = {};
|
|
13
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
-
t[p] = s[p];
|
|
15
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
-
t[p[i]] = s[p[i]];
|
|
19
|
-
}
|
|
20
|
-
return t;
|
|
21
|
-
};
|
|
22
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
3
|
exports.getReturnPolicyByProject = getReturnPolicyByProject;
|
|
24
4
|
const http_status_1 = require("http-status");
|
|
@@ -29,10 +9,9 @@ function createOrder4returnPolicy(params) {
|
|
|
29
9
|
orderNumber: params.order.orderNumber,
|
|
30
10
|
price: params.order.price,
|
|
31
11
|
acceptedOffers: params.order.acceptedOffers.map((o) => {
|
|
32
|
-
var _a;
|
|
33
12
|
if (o.itemOffered.typeOf === factory.reservationType.EventReservation) {
|
|
34
13
|
const reservation = o.itemOffered;
|
|
35
|
-
const priceComponent =
|
|
14
|
+
const priceComponent = o.priceSpecification?.priceComponent;
|
|
36
15
|
return {
|
|
37
16
|
itemOffered: {
|
|
38
17
|
additionalProperty: reservation.additionalProperty,
|
|
@@ -49,7 +28,7 @@ function createOrder4returnPolicy(params) {
|
|
|
49
28
|
priceSpecification: {
|
|
50
29
|
priceComponent: (Array.isArray(priceComponent))
|
|
51
30
|
? priceComponent.map((component) => {
|
|
52
|
-
const { accounting, name, priceCurrency, valueAddedTaxIncluded
|
|
31
|
+
const { accounting, name, priceCurrency, valueAddedTaxIncluded, ...postingComponent } = component;
|
|
53
32
|
return postingComponent;
|
|
54
33
|
})
|
|
55
34
|
: []
|
|
@@ -68,65 +47,66 @@ const TIMEOUT = 5000;
|
|
|
68
47
|
/**
|
|
69
48
|
* プロジェクトのカスタム返品ポリシーをリモートから取得する
|
|
70
49
|
*/
|
|
71
|
-
function getReturnPolicyByProject(params) {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
50
|
+
async function getReturnPolicyByProject(params) {
|
|
51
|
+
// implement with fetch(2024-01-20~)
|
|
52
|
+
try {
|
|
53
|
+
const { identifier, sameAs } = params;
|
|
54
|
+
const res = await fetch(sameAs, {
|
|
55
|
+
method: 'POST',
|
|
56
|
+
headers: {
|
|
57
|
+
'Content-Type': 'application/json'
|
|
58
|
+
},
|
|
59
|
+
body: JSON.stringify({
|
|
60
|
+
order: createOrder4returnPolicy({ order: params.order })
|
|
61
|
+
}),
|
|
62
|
+
// body data type must match "Content-Type" header
|
|
63
|
+
signal: AbortSignal.timeout(TIMEOUT)
|
|
64
|
+
});
|
|
65
|
+
let body;
|
|
75
66
|
try {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
switch (res.status) {
|
|
97
|
-
case http_status_1.OK:
|
|
98
|
-
case http_status_1.CREATED:
|
|
99
|
-
case http_status_1.ACCEPTED:
|
|
100
|
-
case http_status_1.NO_CONTENT:
|
|
101
|
-
const restockingFeeValue = (_a = body === null || body === void 0 ? void 0 : body.restockingFee) === null || _a === void 0 ? void 0 : _a.value;
|
|
102
|
-
if (typeof restockingFeeValue !== 'number') {
|
|
103
|
-
throw new factory.errors.Internal('invalid return policy');
|
|
104
|
-
}
|
|
105
|
-
else {
|
|
106
|
-
const itemCondition = body === null || body === void 0 ? void 0 : body.itemCondition;
|
|
107
|
-
if (itemCondition !== undefined) {
|
|
108
|
-
if (itemCondition !== factory.offerItemCondition.OfferItemCondition.NewCondition) {
|
|
109
|
-
throw new factory.errors.Argument('', `unknown itemCondition: ${itemCondition}`);
|
|
110
|
-
}
|
|
67
|
+
body = await res.json();
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
// no op
|
|
71
|
+
}
|
|
72
|
+
let returnPolicy;
|
|
73
|
+
switch (res.status) {
|
|
74
|
+
case http_status_1.OK:
|
|
75
|
+
case http_status_1.CREATED:
|
|
76
|
+
case http_status_1.ACCEPTED:
|
|
77
|
+
case http_status_1.NO_CONTENT:
|
|
78
|
+
const restockingFeeValue = body?.restockingFee?.value;
|
|
79
|
+
if (typeof restockingFeeValue !== 'number') {
|
|
80
|
+
throw new factory.errors.Internal('invalid return policy');
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
const itemCondition = body?.itemCondition;
|
|
84
|
+
if (itemCondition !== undefined) {
|
|
85
|
+
if (itemCondition !== factory.offerItemCondition.OfferItemCondition.NewCondition) {
|
|
86
|
+
throw new factory.errors.Argument('', `unknown itemCondition: ${itemCondition}`);
|
|
111
87
|
}
|
|
112
|
-
returnPolicy = Object.assign({ typeOf: 'MerchantReturnPolicy', restockingFee: {
|
|
113
|
-
currency: factory.priceCurrency.JPY,
|
|
114
|
-
typeOf: 'MonetaryAmount',
|
|
115
|
-
value: restockingFeeValue
|
|
116
|
-
}, identifier }, (typeof itemCondition === 'string') ? { itemCondition } : undefined // support itemCondition(2025-05-17~)
|
|
117
|
-
);
|
|
118
88
|
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
89
|
+
returnPolicy = {
|
|
90
|
+
typeOf: 'MerchantReturnPolicy',
|
|
91
|
+
restockingFee: {
|
|
92
|
+
currency: factory.priceCurrency.JPY,
|
|
93
|
+
typeOf: 'MonetaryAmount',
|
|
94
|
+
value: restockingFeeValue
|
|
95
|
+
},
|
|
96
|
+
identifier, // keep identifier(2024-06-26~)
|
|
97
|
+
...(typeof itemCondition === 'string') ? { itemCondition } : undefined // support itemCondition(2025-05-17~)
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
break;
|
|
101
|
+
case http_status_1.NOT_FOUND:
|
|
102
|
+
throw new factory.errors.Argument('', `custom return policy returned statusCode: ${res.status}`);
|
|
103
|
+
// break;
|
|
104
|
+
default:
|
|
105
|
+
throw new factory.errors.Internal(`ProjectReturnPolicy unavailable. statusCode: ${res.status} body: ${body}`);
|
|
130
106
|
}
|
|
131
|
-
|
|
107
|
+
return returnPolicy;
|
|
108
|
+
}
|
|
109
|
+
catch (err) {
|
|
110
|
+
throw err;
|
|
111
|
+
}
|
|
132
112
|
}
|
|
@@ -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.preStart = preStart;
|
|
13
4
|
const createDebug = require("debug");
|
|
@@ -18,12 +9,11 @@ const debug = createDebug('chevre-domain:service');
|
|
|
18
9
|
* 返品取引開始前処理
|
|
19
10
|
*/
|
|
20
11
|
function preStart(params) {
|
|
21
|
-
|
|
22
|
-
return (repos) => __awaiter(this, void 0, void 0, function* () {
|
|
12
|
+
return async (repos) => {
|
|
23
13
|
const now = new Date();
|
|
24
|
-
const { acceptedOffers, eventIds, offerIds, orders } =
|
|
14
|
+
const { acceptedOffers, eventIds, offerIds, orders } = await fixOrders(params)(repos);
|
|
25
15
|
// sellerはorderから自動取得
|
|
26
|
-
const sellers =
|
|
16
|
+
const sellers = await repos.seller.projectFields({
|
|
27
17
|
limit: 1,
|
|
28
18
|
page: 1,
|
|
29
19
|
id: { $eq: String(orders[0].seller.id) }
|
|
@@ -32,17 +22,17 @@ function preStart(params) {
|
|
|
32
22
|
if (seller === undefined) {
|
|
33
23
|
throw new factory.errors.NotFound(factory.organizationType.Corporation);
|
|
34
24
|
}
|
|
35
|
-
|
|
25
|
+
await validateOrder({ orders })();
|
|
36
26
|
let offers = [];
|
|
37
27
|
if (offerIds.length > 0) {
|
|
38
|
-
offers =
|
|
28
|
+
offers = await repos.offer.search({
|
|
39
29
|
id: { $in: offerIds }
|
|
40
30
|
});
|
|
41
31
|
}
|
|
42
32
|
// イベント開始日時取得
|
|
43
33
|
let events = [];
|
|
44
34
|
if (eventIds.length > 0) {
|
|
45
|
-
events =
|
|
35
|
+
events = await repos.event.projectEventFields({
|
|
46
36
|
id: { $in: eventIds },
|
|
47
37
|
typeOf: factory.eventType.ScreeningEvent
|
|
48
38
|
}, ['startDate']);
|
|
@@ -52,7 +42,7 @@ function preStart(params) {
|
|
|
52
42
|
const sellerReturnPolicyIdentifiers = seller.hasMerchantReturnPolicy.map(({ identifier }) => identifier);
|
|
53
43
|
// support sellerReturnPolicyRepo(2025-01-19~)
|
|
54
44
|
if (sellerReturnPolicyIdentifiers.length > 0) {
|
|
55
|
-
returnPolicies =
|
|
45
|
+
returnPolicies = await repos.sellerReturnPolicy.projectFields({
|
|
56
46
|
project: { id: { $eq: seller.project.id } },
|
|
57
47
|
identifier: { $in: sellerReturnPolicyIdentifiers }
|
|
58
48
|
}, ['applicablePaymentMethod', 'identifier', 'itemCondition', 'merchantReturnDays', 'restockingFee', 'typeOf']);
|
|
@@ -62,29 +52,35 @@ function preStart(params) {
|
|
|
62
52
|
// アイテムコンディション取得
|
|
63
53
|
let offerItemConditions = [];
|
|
64
54
|
const itemConditionIds = returnPolicies
|
|
65
|
-
.filter((returnPolicy) =>
|
|
66
|
-
.map((returnPolicy) =>
|
|
55
|
+
.filter((returnPolicy) => typeof returnPolicy.itemCondition?.id === 'string')
|
|
56
|
+
.map((returnPolicy) => String(returnPolicy.itemCondition?.id));
|
|
67
57
|
if (itemConditionIds.length > 0) {
|
|
68
|
-
offerItemConditions =
|
|
58
|
+
offerItemConditions = await repos.offerItemCondition.projectFields({
|
|
69
59
|
id: { $in: itemConditionIds }
|
|
70
60
|
}, ['id', 'identifier', 'itemOffered', 'typeOf']);
|
|
71
61
|
}
|
|
72
|
-
const policiesByOffer =
|
|
73
|
-
const { usedReservationExists } =
|
|
74
|
-
const { hasMerchantReturnPolicy } =
|
|
62
|
+
const policiesByOffer = await searchPoliciesByOffer({ offers })(repos);
|
|
63
|
+
const { usedReservationExists } = await checkUsedReservationExists({ orders })(repos);
|
|
64
|
+
const { hasMerchantReturnPolicy } = await repos.project.findById({
|
|
75
65
|
id: seller.project.id,
|
|
76
66
|
inclusion: ['hasMerchantReturnPolicy']
|
|
77
67
|
});
|
|
78
|
-
const appliedReturnPolicy =
|
|
68
|
+
const appliedReturnPolicy = await (0, findApplicableReturnPolicy_1.findApplicableReturnPolicy)({
|
|
69
|
+
acceptedOffers,
|
|
79
70
|
events,
|
|
80
71
|
offerItemConditions,
|
|
81
|
-
orders,
|
|
72
|
+
orders,
|
|
73
|
+
returningDate: now,
|
|
74
|
+
reason: params.object.reason,
|
|
75
|
+
returnPolicies,
|
|
82
76
|
offers,
|
|
83
77
|
policiesByOffer,
|
|
84
|
-
usedReservationExists
|
|
78
|
+
usedReservationExists,
|
|
79
|
+
...(hasMerchantReturnPolicy !== undefined) ? { returnPolicySettingsByProject: hasMerchantReturnPolicy } : undefined
|
|
80
|
+
});
|
|
85
81
|
validateAppliedReturnPolicy({ merchantReturnPolicy: appliedReturnPolicy });
|
|
86
82
|
// アイテム検証
|
|
87
|
-
|
|
83
|
+
await validateItems({ orders, reason: params.object.reason })({ order: repos.order, reservation: repos.reservation });
|
|
88
84
|
const transactionObject = {
|
|
89
85
|
order: orders.map(({ confirmationNumber, orderNumber }) => ({ confirmationNumber, orderNumber })),
|
|
90
86
|
returnPolicy: appliedReturnPolicy,
|
|
@@ -100,10 +96,10 @@ function preStart(params) {
|
|
|
100
96
|
throw new factory.errors.ArgumentNull('expiresInSeconds');
|
|
101
97
|
}
|
|
102
98
|
return { transactionObject, seller, expiresInSeconds };
|
|
103
|
-
}
|
|
99
|
+
};
|
|
104
100
|
}
|
|
105
101
|
function fixOrders(params) {
|
|
106
|
-
return (repos) =>
|
|
102
|
+
return async (repos) => {
|
|
107
103
|
if (!Array.isArray(params.object.order)) {
|
|
108
104
|
params.object.order = [params.object.order];
|
|
109
105
|
}
|
|
@@ -112,7 +108,7 @@ function fixOrders(params) {
|
|
|
112
108
|
throw new factory.errors.Argument('object.order', 'number of orders must be 1');
|
|
113
109
|
}
|
|
114
110
|
// 注文数を1に限定であれば、findByConfirmationNumberに変更できる(2022-04-28~)
|
|
115
|
-
const orders =
|
|
111
|
+
const orders = await repos.order.projectFields({
|
|
116
112
|
limit: 1,
|
|
117
113
|
page: 1,
|
|
118
114
|
project: { id: { $eq: params.project.id } },
|
|
@@ -136,45 +132,45 @@ function fixOrders(params) {
|
|
|
136
132
|
if (orders.length !== params.object.order.length) {
|
|
137
133
|
throw new factory.errors.NotFound('Order');
|
|
138
134
|
}
|
|
139
|
-
const offerIds =
|
|
135
|
+
const offerIds = await repos.acceptedOffer.distinctValues({
|
|
140
136
|
orderNumber: { $in: [params.object.order[0].orderNumber] }
|
|
141
137
|
}, 'acceptedOffers.id');
|
|
142
|
-
const eventIds =
|
|
138
|
+
const eventIds = await repos.acceptedOffer.distinctValues({
|
|
143
139
|
orderNumber: { $in: [params.object.order[0].orderNumber] }
|
|
144
140
|
}, 'acceptedOffers.itemOffered.reservationFor.id');
|
|
145
141
|
// const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumbers({
|
|
146
142
|
// orderNumber: { $in: [params.object.order[0].orderNumber] }
|
|
147
143
|
// });
|
|
148
|
-
const acceptedOffers =
|
|
144
|
+
const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
|
|
149
145
|
orderNumber: { $eq: params.object.order[0].orderNumber },
|
|
150
146
|
project: { id: { $eq: params.project.id } }
|
|
151
147
|
});
|
|
152
148
|
return { acceptedOffers, eventIds, offerIds, orders };
|
|
153
|
-
}
|
|
149
|
+
};
|
|
154
150
|
}
|
|
155
151
|
function validateOrder(__) {
|
|
156
|
-
return () =>
|
|
152
|
+
return async () => {
|
|
157
153
|
// returnOrderタスクの処理の中でステータス整合性を担保しているので検証不要(2024-01-10~)
|
|
158
154
|
// 注文ステータスが配送済の場合のみ受け付け
|
|
159
155
|
// const allOrdersDelivered = params.orders.every((o) => o.orderStatus === factory.orderStatus.OrderDelivered);
|
|
160
156
|
// if (!allOrdersDelivered) {
|
|
161
157
|
// throw new factory.errors.Argument('Order Number', 'Invalid Order Status');
|
|
162
158
|
// }
|
|
163
|
-
}
|
|
159
|
+
};
|
|
164
160
|
}
|
|
165
161
|
function checkUsedReservationExists(params) {
|
|
166
|
-
return (repos) =>
|
|
162
|
+
return async (repos) => {
|
|
167
163
|
let usedReservationExists = false;
|
|
168
164
|
// 注文に含まれる予約の状態検証
|
|
169
165
|
// const reservationNumbers = await repos.acceptedOffer.searchReservationNumbersByOrderNumbers({
|
|
170
166
|
// orderNumber: { $in: params.orders.map((order) => order.orderNumber) }
|
|
171
167
|
// });
|
|
172
|
-
const reservationNumbers =
|
|
168
|
+
const reservationNumbers = await repos.acceptedOffer.distinctValues({
|
|
173
169
|
orderNumber: { $in: params.orders.map((order) => order.orderNumber) }
|
|
174
170
|
}, 'acceptedOffers.itemOffered.reservationNumber');
|
|
175
171
|
if (reservationNumbers.length > 0) {
|
|
176
172
|
// 使用済の予約がひとつでもあれば不可
|
|
177
|
-
const existingUsedReservations =
|
|
173
|
+
const existingUsedReservations = await repos.reservation.projectFields({
|
|
178
174
|
limit: 1,
|
|
179
175
|
page: 1,
|
|
180
176
|
typeOf: factory.reservationType.EventReservation,
|
|
@@ -186,10 +182,10 @@ function checkUsedReservationExists(params) {
|
|
|
186
182
|
}
|
|
187
183
|
}
|
|
188
184
|
return { usedReservationExists };
|
|
189
|
-
}
|
|
185
|
+
};
|
|
190
186
|
}
|
|
191
187
|
function validateItems(params) {
|
|
192
|
-
return (__) =>
|
|
188
|
+
return async (__) => {
|
|
193
189
|
if (params.reason === factory.transaction.returnOrder.Reason.Seller) {
|
|
194
190
|
// 販売者都合の場合、特に検証しない
|
|
195
191
|
return;
|
|
@@ -212,10 +208,10 @@ function validateItems(params) {
|
|
|
212
208
|
// throw new factory.errors.Argument('orderNumber', 'some reservations already used');
|
|
213
209
|
// }
|
|
214
210
|
// }
|
|
215
|
-
}
|
|
211
|
+
};
|
|
216
212
|
}
|
|
217
213
|
function searchPoliciesByOffer(params) {
|
|
218
|
-
return (repos) =>
|
|
214
|
+
return async (repos) => {
|
|
219
215
|
let merchantReturnPolicyIds = [];
|
|
220
216
|
params.offers.forEach((offer) => {
|
|
221
217
|
if (Array.isArray(offer.hasMerchantReturnPolicy) && offer.hasMerchantReturnPolicy.length > 0) {
|
|
@@ -225,7 +221,7 @@ function searchPoliciesByOffer(params) {
|
|
|
225
221
|
merchantReturnPolicyIds = [...new Set(merchantReturnPolicyIds)];
|
|
226
222
|
let policiesByOffer = [];
|
|
227
223
|
if (merchantReturnPolicyIds.length > 0) {
|
|
228
|
-
policiesByOffer =
|
|
224
|
+
policiesByOffer = await repos.merchantReturnPolicy.search({
|
|
229
225
|
id: { $in: merchantReturnPolicyIds }
|
|
230
226
|
});
|
|
231
227
|
}
|
|
@@ -233,10 +229,9 @@ function searchPoliciesByOffer(params) {
|
|
|
233
229
|
throw new factory.errors.NotFound('MerchantReturnPolicy with offers');
|
|
234
230
|
}
|
|
235
231
|
return policiesByOffer;
|
|
236
|
-
}
|
|
232
|
+
};
|
|
237
233
|
}
|
|
238
234
|
function validateAppliedReturnPolicy(params) {
|
|
239
|
-
var _a;
|
|
240
235
|
const appliedReturnPolicy = params.merchantReturnPolicy;
|
|
241
236
|
switch (appliedReturnPolicy.returnFees) {
|
|
242
237
|
case factory.merchantReturnPolicy.ReturnFeesEnumeration.RestockingFees:
|
|
@@ -245,7 +240,7 @@ function validateAppliedReturnPolicy(params) {
|
|
|
245
240
|
throw new factory.errors.NotImplemented('restockingFee in type of number not implemented');
|
|
246
241
|
}
|
|
247
242
|
else {
|
|
248
|
-
const returnFeeByPolicy =
|
|
243
|
+
const returnFeeByPolicy = appliedReturnPolicy.restockingFee?.value;
|
|
249
244
|
if (typeof returnFeeByPolicy !== 'number') {
|
|
250
245
|
throw new factory.errors.NotFound('appliedReturnPolicy.restockingFee.value');
|
|
251
246
|
}
|
|
@@ -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.preStart = void 0;
|
|
13
4
|
exports.start = start;
|
|
@@ -27,8 +18,8 @@ const errorHandler_1 = require("../../errorHandler");
|
|
|
27
18
|
* 返品取引開始
|
|
28
19
|
*/
|
|
29
20
|
function start(params) {
|
|
30
|
-
return (repos) =>
|
|
31
|
-
const { transactionObject, expiresInSeconds, seller } =
|
|
21
|
+
return async (repos) => {
|
|
22
|
+
const { transactionObject, expiresInSeconds, seller } = await (0, preStart_1.preStart)(params)(repos);
|
|
32
23
|
const returnOrderAttributes = {
|
|
33
24
|
project: params.project,
|
|
34
25
|
typeOf: factory.transactionType.ReturnOrder,
|
|
@@ -43,12 +34,11 @@ function start(params) {
|
|
|
43
34
|
};
|
|
44
35
|
let returnOrderTransaction;
|
|
45
36
|
try {
|
|
46
|
-
returnOrderTransaction =
|
|
37
|
+
returnOrderTransaction = await repos.transaction.start(returnOrderAttributes);
|
|
47
38
|
}
|
|
48
39
|
catch (error) {
|
|
49
|
-
if (
|
|
40
|
+
if (await (0, errorHandler_1.isMongoError)(error)) {
|
|
50
41
|
// 同一取引に対して返品取引を作成しようとすると、MongoDBでE11000 duplicate key errorが発生する
|
|
51
|
-
// tslint:disable-next-line:no-single-line-block-comment
|
|
52
42
|
/* istanbul ignore else */
|
|
53
43
|
if (error.code === errorHandler_1.MongoErrorCode.DuplicateKey) {
|
|
54
44
|
throw new factory.errors.Argument('orderNumber', 'Already returned');
|
|
@@ -57,10 +47,10 @@ function start(params) {
|
|
|
57
47
|
throw error;
|
|
58
48
|
}
|
|
59
49
|
return returnOrderTransaction;
|
|
60
|
-
}
|
|
50
|
+
};
|
|
61
51
|
}
|
|
62
52
|
function saveMessagesIfNeeded(params) {
|
|
63
|
-
return (repos) =>
|
|
53
|
+
return async (repos) => {
|
|
64
54
|
const { project, order, emailMessages, seller } = params;
|
|
65
55
|
if (emailMessages.length > 0) {
|
|
66
56
|
const { orderNumber } = order;
|
|
@@ -75,7 +65,7 @@ function saveMessagesIfNeeded(params) {
|
|
|
75
65
|
// })
|
|
76
66
|
// );
|
|
77
67
|
for (const { identifier, name, about, text, toRecipient, sender } of emailMessages) {
|
|
78
|
-
|
|
68
|
+
await repos.message.upsertOneByIdentifier({
|
|
79
69
|
identifier, name, about, text, toRecipient, sender,
|
|
80
70
|
project: { id: project.id, typeOf: factory.organizationType.Project },
|
|
81
71
|
provider: { id: seller.id, typeOf: factory.organizationType.Corporation },
|
|
@@ -83,17 +73,16 @@ function saveMessagesIfNeeded(params) {
|
|
|
83
73
|
});
|
|
84
74
|
}
|
|
85
75
|
}
|
|
86
|
-
}
|
|
76
|
+
};
|
|
87
77
|
}
|
|
88
78
|
/**
|
|
89
79
|
* 取引確定
|
|
90
80
|
*/
|
|
91
81
|
function confirm(params) {
|
|
92
|
-
return (repos
|
|
82
|
+
return async (repos
|
|
93
83
|
// settings: Settings
|
|
94
|
-
) =>
|
|
95
|
-
|
|
96
|
-
const transaction = yield repos.transaction.projectFieldsById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'agent', 'object', 'result']);
|
|
84
|
+
) => {
|
|
85
|
+
const transaction = await repos.transaction.projectFieldsById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'agent', 'object', 'result']);
|
|
97
86
|
if (transaction.status === factory.transactionStatusType.Confirmed) {
|
|
98
87
|
// すでに確定済の場合
|
|
99
88
|
return transaction.result;
|
|
@@ -104,14 +93,14 @@ function confirm(params) {
|
|
|
104
93
|
else if (transaction.status === factory.transactionStatusType.Canceled) {
|
|
105
94
|
throw new factory.errors.Argument('transaction', 'Transaction already canceled');
|
|
106
95
|
}
|
|
107
|
-
if (typeof
|
|
96
|
+
if (typeof params.agent?.id === 'string' && transaction.agent.id !== params.agent.id) {
|
|
108
97
|
throw new factory.errors.Forbidden('Transaction not yours');
|
|
109
98
|
}
|
|
110
99
|
// ひとまず同時返品可能な注文数を1に限定(2022-04-28~)
|
|
111
100
|
if (transaction.object.order.length !== 1) {
|
|
112
101
|
throw new factory.errors.Argument('object.order', 'number of orders must be 1');
|
|
113
102
|
}
|
|
114
|
-
const returningOrders =
|
|
103
|
+
const returningOrders = await repos.order.projectFields({
|
|
115
104
|
limit: 1,
|
|
116
105
|
page: 1,
|
|
117
106
|
project: { id: { $eq: transaction.project.id } },
|
|
@@ -126,7 +115,7 @@ function confirm(params) {
|
|
|
126
115
|
// デフォルトEメールメッセージを検索
|
|
127
116
|
let emailMessageOnOrderReturned;
|
|
128
117
|
if (repos.emailMessage !== undefined) {
|
|
129
|
-
const searchEmailMessagesResult =
|
|
118
|
+
const searchEmailMessagesResult = await repos.emailMessage.search({
|
|
130
119
|
limit: 1,
|
|
131
120
|
page: 1,
|
|
132
121
|
project: { id: { $eq: transaction.project.id } },
|
|
@@ -134,27 +123,33 @@ function confirm(params) {
|
|
|
134
123
|
});
|
|
135
124
|
emailMessageOnOrderReturned = searchEmailMessagesResult.shift();
|
|
136
125
|
}
|
|
137
|
-
const setting =
|
|
138
|
-
if (typeof
|
|
126
|
+
const setting = await repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['defaultSenderEmail']);
|
|
127
|
+
if (typeof setting?.defaultSenderEmail !== 'string') {
|
|
139
128
|
throw new factory.errors.NotFound('setting.defaultSenderEmail');
|
|
140
129
|
}
|
|
141
130
|
const result = {};
|
|
142
|
-
const { emailMessages, potentialActions } =
|
|
131
|
+
const { emailMessages, potentialActions } = await (0, potentialActions_1.createPotentialActions)({
|
|
132
|
+
dateReturned: params.object.order.dateReturned,
|
|
133
|
+
orders: returningOrders,
|
|
134
|
+
transaction: transaction,
|
|
135
|
+
...(params.potentialActions !== undefined) ? { potentialActions: params.potentialActions } : undefined,
|
|
136
|
+
...(emailMessageOnOrderReturned !== undefined) ? { emailMessageOnOrderReturned } : undefined
|
|
137
|
+
},
|
|
143
138
|
// settings
|
|
144
139
|
setting);
|
|
145
140
|
// save messages(2024-06-27~)
|
|
146
|
-
|
|
141
|
+
await saveMessagesIfNeeded({
|
|
147
142
|
project: { id: transaction.project.id },
|
|
148
143
|
order: { orderNumber: returningOrders[0].orderNumber }, seller: { id: returningOrders[0].seller.id }, emailMessages
|
|
149
144
|
})(repos);
|
|
150
145
|
// ステータス変更
|
|
151
|
-
|
|
146
|
+
await repos.transaction.confirm({
|
|
152
147
|
typeOf: transaction.typeOf,
|
|
153
148
|
id: transaction.id,
|
|
154
149
|
result, potentialActions
|
|
155
150
|
});
|
|
156
151
|
return result;
|
|
157
|
-
}
|
|
152
|
+
};
|
|
158
153
|
}
|
|
159
154
|
/**
|
|
160
155
|
* 取引のタスクを出力します
|
|
@@ -162,10 +157,10 @@ function confirm(params) {
|
|
|
162
157
|
* この関数では、取引のタスクエクスポートステータスは見ません
|
|
163
158
|
*/
|
|
164
159
|
function exportTasksById(params) {
|
|
165
|
-
return (repos
|
|
160
|
+
return async (repos
|
|
166
161
|
// settings: Settings
|
|
167
|
-
) =>
|
|
168
|
-
const transaction =
|
|
162
|
+
) => {
|
|
163
|
+
const transaction = await repos.transaction.projectFieldsById({ typeOf: factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'endDate', 'startDate', 'object', 'potentialActions']);
|
|
169
164
|
// タスク実行日時バッファの指定があれば調整
|
|
170
165
|
let taskRunsAt = new Date();
|
|
171
166
|
if (typeof params.runsTasksAfterInSeconds === 'number') {
|
|
@@ -174,13 +169,13 @@ function exportTasksById(params) {
|
|
|
174
169
|
.toDate();
|
|
175
170
|
}
|
|
176
171
|
// search settings
|
|
177
|
-
const setting =
|
|
172
|
+
const setting = await repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['storage']);
|
|
178
173
|
const taskAttributes = (0, factory_1.createTasks)({
|
|
179
174
|
transaction,
|
|
180
175
|
runsAt: taskRunsAt
|
|
181
176
|
}, setting
|
|
182
177
|
// settings
|
|
183
178
|
);
|
|
184
|
-
|
|
185
|
-
}
|
|
179
|
+
await repos.task.saveMany(taskAttributes, { emitImmediately: true });
|
|
180
|
+
};
|
|
186
181
|
}
|