@chevre/domain 23.2.0-alpha.61 → 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 +2 -0
- 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 +20 -32
- 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.js +646 -669
- package/lib/chevre/repo/eventOffer.js +122 -125
- package/lib/chevre/repo/eventSellerMakesOffer.js +64 -76
- package/lib/chevre/repo/eventSeries.js +208 -231
- 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 +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 -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.js +99 -112
- 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.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.js +6 -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.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 -13
- package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +33 -32
- 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 -36
- package/lib/chevre/service/assetTransaction/pay/start/preStart/validateAcceptedPaymentMethodIfNeeded.js +7 -17
- 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 -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.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 -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.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 +6 -7
- 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,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.ReservationRepo = void 0;
|
|
13
4
|
const reservation_1 = require("./mongoose/schemas/reservation");
|
|
@@ -17,21 +8,22 @@ const settings_1 = require("../settings");
|
|
|
17
8
|
* 予約リポジトリ
|
|
18
9
|
*/
|
|
19
10
|
class ReservationRepo {
|
|
11
|
+
// private化(2022-06-08~)
|
|
12
|
+
reservationModel;
|
|
20
13
|
constructor(connection) {
|
|
21
14
|
this.reservationModel = connection.model(reservation_1.modelName, (0, reservation_1.createSchema)());
|
|
22
15
|
}
|
|
23
16
|
// tslint:disable-next-line:cyclomatic-complexity max-func-body-length
|
|
24
17
|
static CREATE_MONGO_CONDITIONS(params) {
|
|
25
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21;
|
|
26
18
|
// MongoDB検索条件
|
|
27
19
|
const andConditions = [
|
|
28
20
|
{ typeOf: { $eq: params.typeOf } }
|
|
29
21
|
];
|
|
30
|
-
const projectIdEq =
|
|
22
|
+
const projectIdEq = params.project?.id?.$eq;
|
|
31
23
|
if (typeof projectIdEq === 'string') {
|
|
32
24
|
andConditions.push({ 'project.id': { $eq: projectIdEq } });
|
|
33
25
|
}
|
|
34
|
-
const providerIdEq =
|
|
26
|
+
const providerIdEq = params.provider?.id?.$eq;
|
|
35
27
|
if (typeof providerIdEq === 'string') {
|
|
36
28
|
andConditions.push({ 'provider.id': { $eq: providerIdEq } });
|
|
37
29
|
}
|
|
@@ -152,24 +144,28 @@ class ReservationRepo {
|
|
|
152
144
|
}
|
|
153
145
|
});
|
|
154
146
|
}
|
|
155
|
-
const additionalTicketTextRegex =
|
|
147
|
+
const additionalTicketTextRegex = params.additionalTicketText?.$regex;
|
|
156
148
|
if (typeof additionalTicketTextRegex === 'string' && additionalTicketTextRegex.length > 0) {
|
|
157
|
-
const additionalTicketTextOptions =
|
|
149
|
+
const additionalTicketTextOptions = params.additionalTicketText?.$options;
|
|
158
150
|
andConditions.push({
|
|
159
|
-
additionalTicketText:
|
|
151
|
+
additionalTicketText: {
|
|
152
|
+
$exists: true,
|
|
153
|
+
$regex: new RegExp(additionalTicketTextRegex),
|
|
154
|
+
...(typeof additionalTicketTextOptions === 'string') ? { $options: additionalTicketTextOptions } : undefined
|
|
155
|
+
}
|
|
160
156
|
});
|
|
161
157
|
}
|
|
162
158
|
}
|
|
163
159
|
}
|
|
164
|
-
const reservationStatusEq =
|
|
160
|
+
const reservationStatusEq = params.reservationStatus?.$eq;
|
|
165
161
|
if (typeof reservationStatusEq === 'string') {
|
|
166
162
|
andConditions.push({ reservationStatus: { $eq: reservationStatusEq } });
|
|
167
163
|
}
|
|
168
|
-
const reservationStatusNe =
|
|
164
|
+
const reservationStatusNe = params.reservationStatus?.$ne;
|
|
169
165
|
if (typeof reservationStatusNe === 'string') {
|
|
170
166
|
andConditions.push({ reservationStatus: { $ne: reservationStatusNe } });
|
|
171
167
|
}
|
|
172
|
-
const reservationStatusIn =
|
|
168
|
+
const reservationStatusIn = params.reservationStatus?.$in;
|
|
173
169
|
if (Array.isArray(reservationStatusIn)) {
|
|
174
170
|
andConditions.push({ reservationStatus: { $in: reservationStatusIn } });
|
|
175
171
|
}
|
|
@@ -214,7 +210,7 @@ class ReservationRepo {
|
|
|
214
210
|
}
|
|
215
211
|
switch (params.typeOf) {
|
|
216
212
|
case factory.reservationType.BusReservation:
|
|
217
|
-
const reservationForTypeOfEq =
|
|
213
|
+
const reservationForTypeOfEq = params.reservationFor?.typeOf;
|
|
218
214
|
if (typeof reservationForTypeOfEq === 'string') {
|
|
219
215
|
andConditions.push({
|
|
220
216
|
'reservationFor.typeOf': {
|
|
@@ -223,7 +219,7 @@ class ReservationRepo {
|
|
|
223
219
|
}
|
|
224
220
|
});
|
|
225
221
|
}
|
|
226
|
-
const reservationForIdEq =
|
|
222
|
+
const reservationForIdEq = params.reservationFor?.id?.$eq;
|
|
227
223
|
if (typeof reservationForIdEq === 'string') {
|
|
228
224
|
andConditions.push({
|
|
229
225
|
'reservationFor.id': {
|
|
@@ -232,7 +228,7 @@ class ReservationRepo {
|
|
|
232
228
|
}
|
|
233
229
|
});
|
|
234
230
|
}
|
|
235
|
-
const reservationForIdIn =
|
|
231
|
+
const reservationForIdIn = params.reservationFor?.id?.$in;
|
|
236
232
|
if (Array.isArray(reservationForIdIn)) {
|
|
237
233
|
andConditions.push({
|
|
238
234
|
'reservationFor.id': {
|
|
@@ -243,7 +239,7 @@ class ReservationRepo {
|
|
|
243
239
|
}
|
|
244
240
|
break;
|
|
245
241
|
case factory.reservationType.EventReservation:
|
|
246
|
-
if (typeof
|
|
242
|
+
if (typeof params.reservationFor?.id === 'string') {
|
|
247
243
|
andConditions.push({
|
|
248
244
|
'reservationFor.id': {
|
|
249
245
|
$exists: true,
|
|
@@ -252,7 +248,7 @@ class ReservationRepo {
|
|
|
252
248
|
});
|
|
253
249
|
}
|
|
254
250
|
else {
|
|
255
|
-
const reservationForIdEq4eventReservation =
|
|
251
|
+
const reservationForIdEq4eventReservation = params.reservationFor?.id?.$eq;
|
|
256
252
|
if (typeof reservationForIdEq4eventReservation === 'string') {
|
|
257
253
|
andConditions.push({
|
|
258
254
|
'reservationFor.id': {
|
|
@@ -506,7 +502,7 @@ class ReservationRepo {
|
|
|
506
502
|
}
|
|
507
503
|
// tslint:disable-next-line:no-single-line-block-comment
|
|
508
504
|
/* istanbul ignore else */
|
|
509
|
-
const ticketedSeatSeatingTypeIn =
|
|
505
|
+
const ticketedSeatSeatingTypeIn = params.reservedTicket.ticketedSeat?.seatingType?.$in;
|
|
510
506
|
if (Array.isArray(ticketedSeatSeatingTypeIn)) {
|
|
511
507
|
andConditions.push({
|
|
512
508
|
'reservedTicket.ticketedSeat.seatingType': {
|
|
@@ -517,7 +513,7 @@ class ReservationRepo {
|
|
|
517
513
|
}
|
|
518
514
|
}
|
|
519
515
|
}
|
|
520
|
-
const brokerIdRegex =
|
|
516
|
+
const brokerIdRegex = params.broker?.id;
|
|
521
517
|
if (typeof brokerIdRegex === 'string' && brokerIdRegex.length > 0) {
|
|
522
518
|
andConditions.push({
|
|
523
519
|
'broker.id': {
|
|
@@ -526,7 +522,7 @@ class ReservationRepo {
|
|
|
526
522
|
}
|
|
527
523
|
});
|
|
528
524
|
}
|
|
529
|
-
const brokerIdentifierAll =
|
|
525
|
+
const brokerIdentifierAll = params.broker?.identifier?.$all;
|
|
530
526
|
if (Array.isArray(brokerIdentifierAll)) {
|
|
531
527
|
andConditions.push({
|
|
532
528
|
'broker.identifier': {
|
|
@@ -535,7 +531,7 @@ class ReservationRepo {
|
|
|
535
531
|
}
|
|
536
532
|
});
|
|
537
533
|
}
|
|
538
|
-
const brokerIdentifierIn =
|
|
534
|
+
const brokerIdentifierIn = params.broker?.identifier?.$in;
|
|
539
535
|
if (Array.isArray(brokerIdentifierIn)) {
|
|
540
536
|
andConditions.push({
|
|
541
537
|
'broker.identifier': {
|
|
@@ -544,7 +540,7 @@ class ReservationRepo {
|
|
|
544
540
|
}
|
|
545
541
|
});
|
|
546
542
|
}
|
|
547
|
-
const brokerIdentifierNin =
|
|
543
|
+
const brokerIdentifierNin = params.broker?.identifier?.$nin;
|
|
548
544
|
if (Array.isArray(brokerIdentifierNin)) {
|
|
549
545
|
andConditions.push({
|
|
550
546
|
'broker.identifier': {
|
|
@@ -552,7 +548,7 @@ class ReservationRepo {
|
|
|
552
548
|
}
|
|
553
549
|
});
|
|
554
550
|
}
|
|
555
|
-
const brokerIdentifierElemMatch =
|
|
551
|
+
const brokerIdentifierElemMatch = params.broker?.identifier?.$elemMatch;
|
|
556
552
|
if (brokerIdentifierElemMatch !== undefined && brokerIdentifierElemMatch !== null) {
|
|
557
553
|
andConditions.push({
|
|
558
554
|
'broker.identifier': {
|
|
@@ -587,11 +583,15 @@ class ReservationRepo {
|
|
|
587
583
|
}
|
|
588
584
|
}
|
|
589
585
|
else {
|
|
590
|
-
const emailRegex =
|
|
586
|
+
const emailRegex = params.underName.email?.$regex;
|
|
591
587
|
if (typeof emailRegex === 'string' && emailRegex.length > 0) {
|
|
592
|
-
const emailOptions =
|
|
588
|
+
const emailOptions = params.underName.email?.$options;
|
|
593
589
|
andConditions.push({
|
|
594
|
-
'underName.email':
|
|
590
|
+
'underName.email': {
|
|
591
|
+
$exists: true,
|
|
592
|
+
$regex: new RegExp(emailRegex),
|
|
593
|
+
...(typeof emailOptions === 'string') ? { $options: emailOptions } : undefined
|
|
594
|
+
}
|
|
595
595
|
});
|
|
596
596
|
}
|
|
597
597
|
}
|
|
@@ -608,11 +608,15 @@ class ReservationRepo {
|
|
|
608
608
|
}
|
|
609
609
|
}
|
|
610
610
|
else {
|
|
611
|
-
const underNameNameRegex =
|
|
611
|
+
const underNameNameRegex = params.underName.name?.$regex;
|
|
612
612
|
if (typeof underNameNameRegex === 'string' && underNameNameRegex.length > 0) {
|
|
613
|
-
const underNameNameOptions =
|
|
613
|
+
const underNameNameOptions = params.underName.name?.$options;
|
|
614
614
|
andConditions.push({
|
|
615
|
-
'underName.name':
|
|
615
|
+
'underName.name': {
|
|
616
|
+
$exists: true,
|
|
617
|
+
$regex: new RegExp(underNameNameRegex),
|
|
618
|
+
...(typeof underNameNameOptions === 'string') ? { $options: underNameNameOptions } : undefined
|
|
619
|
+
}
|
|
616
620
|
});
|
|
617
621
|
}
|
|
618
622
|
}
|
|
@@ -639,11 +643,15 @@ class ReservationRepo {
|
|
|
639
643
|
}
|
|
640
644
|
}
|
|
641
645
|
else {
|
|
642
|
-
const givenNameRegex =
|
|
646
|
+
const givenNameRegex = params.underName.givenName?.$regex;
|
|
643
647
|
if (typeof givenNameRegex === 'string' && givenNameRegex.length > 0) {
|
|
644
|
-
const givenNameOptions =
|
|
648
|
+
const givenNameOptions = params.underName.givenName?.$options;
|
|
645
649
|
andConditions.push({
|
|
646
|
-
'underName.givenName':
|
|
650
|
+
'underName.givenName': {
|
|
651
|
+
$exists: true,
|
|
652
|
+
$regex: new RegExp(givenNameRegex),
|
|
653
|
+
...(typeof givenNameOptions === 'string') ? { $options: givenNameOptions } : undefined
|
|
654
|
+
}
|
|
647
655
|
});
|
|
648
656
|
}
|
|
649
657
|
}
|
|
@@ -660,11 +668,15 @@ class ReservationRepo {
|
|
|
660
668
|
}
|
|
661
669
|
}
|
|
662
670
|
else {
|
|
663
|
-
const familyNameRegex =
|
|
671
|
+
const familyNameRegex = params.underName.familyName?.$regex;
|
|
664
672
|
if (typeof familyNameRegex === 'string' && familyNameRegex.length > 0) {
|
|
665
|
-
const familyNameOptions =
|
|
673
|
+
const familyNameOptions = params.underName.familyName?.$options;
|
|
666
674
|
andConditions.push({
|
|
667
|
-
'underName.familyName':
|
|
675
|
+
'underName.familyName': {
|
|
676
|
+
$exists: true,
|
|
677
|
+
$regex: new RegExp(familyNameRegex),
|
|
678
|
+
...(typeof familyNameOptions === 'string') ? { $options: familyNameOptions } : undefined
|
|
679
|
+
}
|
|
668
680
|
});
|
|
669
681
|
}
|
|
670
682
|
}
|
|
@@ -763,7 +775,7 @@ class ReservationRepo {
|
|
|
763
775
|
});
|
|
764
776
|
}
|
|
765
777
|
}
|
|
766
|
-
const programMembershipUsedIdentifierEq =
|
|
778
|
+
const programMembershipUsedIdentifierEq = params.programMembershipUsed?.identifier?.$eq;
|
|
767
779
|
if (typeof programMembershipUsedIdentifierEq === 'string') {
|
|
768
780
|
andConditions.push({
|
|
769
781
|
'programMembershipUsed.identifier': {
|
|
@@ -772,7 +784,7 @@ class ReservationRepo {
|
|
|
772
784
|
}
|
|
773
785
|
});
|
|
774
786
|
}
|
|
775
|
-
const programMembershipUsedIssuedThroughServiceTypeCodeValueEq =
|
|
787
|
+
const programMembershipUsedIssuedThroughServiceTypeCodeValueEq = params.programMembershipUsed?.issuedThrough?.serviceType?.codeValue?.$eq;
|
|
776
788
|
if (typeof programMembershipUsedIssuedThroughServiceTypeCodeValueEq === 'string') {
|
|
777
789
|
andConditions.push({
|
|
778
790
|
'programMembershipUsed.issuedThrough.serviceType.codeValue': {
|
|
@@ -781,7 +793,7 @@ class ReservationRepo {
|
|
|
781
793
|
}
|
|
782
794
|
});
|
|
783
795
|
}
|
|
784
|
-
const appliesToMovieTicketIdentifierEq =
|
|
796
|
+
const appliesToMovieTicketIdentifierEq = params.price?.priceComponent?.appliesToMovieTicket?.identifier?.$eq;
|
|
785
797
|
if (typeof appliesToMovieTicketIdentifierEq === 'string') {
|
|
786
798
|
andConditions.push({
|
|
787
799
|
'price.priceComponent.appliesToMovieTicket.identifier': {
|
|
@@ -795,361 +807,374 @@ class ReservationRepo {
|
|
|
795
807
|
/**
|
|
796
808
|
* 汎用予約カウント
|
|
797
809
|
*/
|
|
798
|
-
count(params) {
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
.exec();
|
|
804
|
-
});
|
|
810
|
+
async count(params) {
|
|
811
|
+
const conditions = ReservationRepo.CREATE_MONGO_CONDITIONS(params);
|
|
812
|
+
return this.reservationModel.countDocuments((conditions.length > 0) ? { $and: conditions } : {})
|
|
813
|
+
.setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
|
|
814
|
+
.exec();
|
|
805
815
|
}
|
|
806
816
|
/**
|
|
807
817
|
* 予約検索
|
|
808
818
|
* migrate from search(2024-08-08~)
|
|
809
819
|
*/
|
|
810
|
-
projectFields(params, inclusion) {
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
if (value === 1 && field !== '_id' && field !== 'id') {
|
|
823
|
-
projection[field] = 1;
|
|
824
|
-
}
|
|
820
|
+
async projectFields(params, inclusion) {
|
|
821
|
+
const conditions = ReservationRepo.CREATE_MONGO_CONDITIONS(params);
|
|
822
|
+
let projection = {};
|
|
823
|
+
if (inclusion !== undefined && inclusion !== null) {
|
|
824
|
+
projection = {
|
|
825
|
+
_id: 0, // hide _id(2024-08-08~)
|
|
826
|
+
id: { $toString: '$_id' }
|
|
827
|
+
};
|
|
828
|
+
for (const [field, value] of Object.entries(inclusion)) {
|
|
829
|
+
// 厳密に1を指定されたフィールドのみprojectionに追加
|
|
830
|
+
if (value === 1 && field !== '_id' && field !== 'id') {
|
|
831
|
+
projection[field] = 1;
|
|
825
832
|
}
|
|
826
833
|
}
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
}
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
}
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
834
|
+
}
|
|
835
|
+
else {
|
|
836
|
+
projection = {
|
|
837
|
+
_id: 0, // hide _id(2024-08-08~)
|
|
838
|
+
id: { $toString: '$_id' },
|
|
839
|
+
project: 1,
|
|
840
|
+
provider: 1,
|
|
841
|
+
typeOf: 1,
|
|
842
|
+
additionalTicketText: 1,
|
|
843
|
+
bookingTime: 1,
|
|
844
|
+
broker: 1,
|
|
845
|
+
modifiedTime: 1,
|
|
846
|
+
numSeats: 1,
|
|
847
|
+
previousReservationStatus: 1,
|
|
848
|
+
price: 1,
|
|
849
|
+
priceCurrency: 1,
|
|
850
|
+
programMembershipUsed: 1,
|
|
851
|
+
reservationFor: 1,
|
|
852
|
+
reservationNumber: 1,
|
|
853
|
+
reservationStatus: 1,
|
|
854
|
+
reservedTicket: 1,
|
|
855
|
+
subReservation: 1,
|
|
856
|
+
underName: 1,
|
|
857
|
+
checkedIn: 1,
|
|
858
|
+
attended: 1,
|
|
859
|
+
additionalProperty: 1,
|
|
860
|
+
issuedThrough: 1
|
|
861
|
+
};
|
|
862
|
+
}
|
|
863
|
+
const query = this.reservationModel.find((conditions.length > 0) ? { $and: conditions } : {}, projection);
|
|
864
|
+
if (typeof params.limit === 'number' && params.limit > 0) {
|
|
865
|
+
const page = (typeof params.page === 'number' && params.page > 0) ? params.page : 1;
|
|
866
|
+
query.limit(params.limit)
|
|
867
|
+
.skip(params.limit * (page - 1));
|
|
868
|
+
}
|
|
869
|
+
// tslint:disable-next-line:no-single-line-block-comment
|
|
870
|
+
/* istanbul ignore else */
|
|
871
|
+
if (params.sort?.bookingTime !== undefined) {
|
|
872
|
+
query.sort({ bookingTime: params.sort.bookingTime });
|
|
873
|
+
}
|
|
874
|
+
return query.setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
|
|
875
|
+
.lean()
|
|
876
|
+
.exec();
|
|
870
877
|
}
|
|
871
|
-
projectFieldsById(params) {
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
return doc;
|
|
896
|
-
});
|
|
878
|
+
async projectFieldsById(params) {
|
|
879
|
+
let projection = {};
|
|
880
|
+
if (Array.isArray(params.inclusion) && params.inclusion.length > 0) {
|
|
881
|
+
projection = {
|
|
882
|
+
_id: 0, // hide _id(2024-08-08~)
|
|
883
|
+
id: { $toString: '$_id' }
|
|
884
|
+
};
|
|
885
|
+
params.inclusion.forEach((field) => {
|
|
886
|
+
if (String(field) !== '_id' && field !== 'id') {
|
|
887
|
+
projection[field] = 1;
|
|
888
|
+
}
|
|
889
|
+
});
|
|
890
|
+
}
|
|
891
|
+
else {
|
|
892
|
+
// discontinue(2024-08-08~)
|
|
893
|
+
throw new factory.errors.ArgumentNull('inclusion', 'inclusion must be specified');
|
|
894
|
+
}
|
|
895
|
+
const doc = await this.reservationModel.findById(params.id, projection)
|
|
896
|
+
.lean() // 2024-08-08~
|
|
897
|
+
.exec();
|
|
898
|
+
if (doc === null) {
|
|
899
|
+
throw new factory.errors.NotFound(this.reservationModel.modelName);
|
|
900
|
+
}
|
|
901
|
+
return doc;
|
|
897
902
|
}
|
|
898
|
-
confirmManyIfNotExist(params) {
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
903
|
+
async confirmManyIfNotExist(params) {
|
|
904
|
+
const modifiedTime = new Date();
|
|
905
|
+
const bulkWriteOps = [];
|
|
906
|
+
if (Array.isArray(params.subReservation)) {
|
|
907
|
+
params.subReservation.forEach((subReservation) => {
|
|
908
|
+
let setOnInsert;
|
|
909
|
+
switch (subReservation.typeOf) {
|
|
910
|
+
case factory.reservationType.BusReservation:
|
|
911
|
+
setOnInsert = {
|
|
912
|
+
...subReservation,
|
|
913
|
+
_id: subReservation.id,
|
|
914
|
+
bookingTime: params.bookingTime,
|
|
915
|
+
checkedIn: false,
|
|
916
|
+
attended: false,
|
|
917
|
+
issuedThrough: params.issuedThrough,
|
|
918
|
+
project: { id: params.project.id, typeOf: factory.organizationType.Project },
|
|
919
|
+
reservationFor: params.reservationFor,
|
|
920
|
+
reservationNumber: params.reservationNumber,
|
|
921
|
+
reservationStatus: factory.reservationStatusType.ReservationConfirmed,
|
|
922
|
+
modifiedTime,
|
|
923
|
+
// providerを追加(2023-07-19~)
|
|
924
|
+
provider: params.provider,
|
|
925
|
+
...(params.underName !== undefined) ? { underName: params.underName } : undefined,
|
|
926
|
+
...(typeof params.broker?.typeOf === 'string') ? { broker: params.broker } : undefined
|
|
927
|
+
};
|
|
928
|
+
break;
|
|
929
|
+
case factory.reservationType.EventReservation:
|
|
930
|
+
setOnInsert = {
|
|
931
|
+
...subReservation,
|
|
932
|
+
_id: subReservation.id,
|
|
933
|
+
bookingTime: params.bookingTime,
|
|
934
|
+
checkedIn: false,
|
|
935
|
+
attended: false,
|
|
936
|
+
issuedThrough: params.issuedThrough,
|
|
937
|
+
project: { id: params.project.id, typeOf: factory.organizationType.Project },
|
|
938
|
+
reservationFor: params.reservationFor,
|
|
939
|
+
reservationNumber: params.reservationNumber,
|
|
940
|
+
reservationStatus: factory.reservationStatusType.ReservationConfirmed,
|
|
941
|
+
modifiedTime,
|
|
942
|
+
// providerを追加(2023-07-19~)
|
|
943
|
+
provider: params.provider,
|
|
944
|
+
...(params.underName !== undefined) ? { underName: params.underName } : undefined,
|
|
945
|
+
...(typeof params.broker?.typeOf === 'string') ? { broker: params.broker } : undefined
|
|
946
|
+
};
|
|
947
|
+
break;
|
|
948
|
+
default:
|
|
949
|
+
throw new factory.errors.NotImplemented(`${subReservation.typeOf} not implemented`);
|
|
950
|
+
}
|
|
951
|
+
bulkWriteOps.push({
|
|
952
|
+
updateOne: {
|
|
953
|
+
filter: { _id: { $eq: subReservation.id } },
|
|
954
|
+
update: {
|
|
955
|
+
$setOnInsert: setOnInsert
|
|
956
|
+
},
|
|
957
|
+
upsert: true
|
|
919
958
|
}
|
|
920
|
-
bulkWriteOps.push({
|
|
921
|
-
updateOne: {
|
|
922
|
-
filter: { _id: { $eq: subReservation.id } },
|
|
923
|
-
update: {
|
|
924
|
-
$setOnInsert: setOnInsert
|
|
925
|
-
},
|
|
926
|
-
upsert: true
|
|
927
|
-
}
|
|
928
|
-
});
|
|
929
959
|
});
|
|
930
|
-
}
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
}
|
|
934
|
-
}
|
|
960
|
+
});
|
|
961
|
+
}
|
|
962
|
+
if (bulkWriteOps.length > 0) {
|
|
963
|
+
return this.reservationModel.bulkWrite(bulkWriteOps, { ordered: false });
|
|
964
|
+
}
|
|
935
965
|
}
|
|
936
966
|
/**
|
|
937
967
|
* 予約取消
|
|
938
968
|
*/
|
|
939
|
-
cancelById(params) {
|
|
940
|
-
|
|
941
|
-
|
|
969
|
+
async cancelById(params) {
|
|
970
|
+
const conditions = {
|
|
971
|
+
_id: { $eq: String(params.id) },
|
|
972
|
+
// 変更前ステータスの指定があれば条件に追加
|
|
973
|
+
...(typeof params.previousReservationStatus === 'string')
|
|
942
974
|
? { reservationStatus: { $eq: params.previousReservationStatus } }
|
|
943
|
-
: undefined
|
|
944
|
-
|
|
945
|
-
|
|
975
|
+
: undefined
|
|
976
|
+
};
|
|
977
|
+
const update = {
|
|
978
|
+
$set: {
|
|
979
|
+
reservationStatus: factory.reservationStatusType.ReservationCancelled,
|
|
980
|
+
modifiedTime: params.modifiedTime,
|
|
981
|
+
...(typeof params.previousReservationStatus === 'string')
|
|
946
982
|
? { previousReservationStatus: params.previousReservationStatus }
|
|
947
|
-
: undefined
|
|
948
|
-
};
|
|
949
|
-
const doc = yield this.reservationModel.findOneAndUpdate(conditions, update, { new: true, projection: { _id: 1 } })
|
|
950
|
-
.lean() // 2024-08-07~
|
|
951
|
-
// .select({ __v: 0, createdAt: 0, updatedAt: 0 })
|
|
952
|
-
.exec();
|
|
953
|
-
// NotFoundであれば状態確認
|
|
954
|
-
if (doc === null) {
|
|
955
|
-
const { reservationStatus } = yield this.projectFieldsById({ id: String(params.id), inclusion: ['reservationStatus'] });
|
|
956
|
-
if (reservationStatus === factory.reservationStatusType.ReservationCancelled) {
|
|
957
|
-
// すでに取消済の場合
|
|
958
|
-
return;
|
|
959
|
-
// return reservation;
|
|
960
|
-
}
|
|
961
|
-
else {
|
|
962
|
-
throw new factory.errors.Argument('id', `Reservation ${params.id} already changed -> ${reservationStatus}`);
|
|
963
|
-
}
|
|
983
|
+
: undefined
|
|
964
984
|
}
|
|
965
|
-
}
|
|
985
|
+
};
|
|
986
|
+
const doc = await this.reservationModel.findOneAndUpdate(conditions, update, { new: true, projection: { _id: 1 } })
|
|
987
|
+
.lean() // 2024-08-07~
|
|
988
|
+
// .select({ __v: 0, createdAt: 0, updatedAt: 0 })
|
|
989
|
+
.exec();
|
|
990
|
+
// NotFoundであれば状態確認
|
|
991
|
+
if (doc === null) {
|
|
992
|
+
const { reservationStatus } = await this.projectFieldsById({ id: String(params.id), inclusion: ['reservationStatus'] });
|
|
993
|
+
if (reservationStatus === factory.reservationStatusType.ReservationCancelled) {
|
|
994
|
+
// すでに取消済の場合
|
|
995
|
+
return;
|
|
996
|
+
// return reservation;
|
|
997
|
+
}
|
|
998
|
+
else {
|
|
999
|
+
throw new factory.errors.Argument('id', `Reservation ${params.id} already changed -> ${reservationStatus}`);
|
|
1000
|
+
}
|
|
1001
|
+
}
|
|
966
1002
|
}
|
|
967
1003
|
/**
|
|
968
1004
|
* 予約取消
|
|
969
1005
|
*/
|
|
970
|
-
cancelByReservationNumber(params) {
|
|
971
|
-
|
|
972
|
-
|
|
1006
|
+
async cancelByReservationNumber(params) {
|
|
1007
|
+
const conditions = {
|
|
1008
|
+
reservationNumber: { $eq: String(params.reservationNumber) },
|
|
1009
|
+
// 変更前ステータスの指定があれば条件に追加
|
|
1010
|
+
...(typeof params.previousReservationStatus === 'string')
|
|
973
1011
|
? { reservationStatus: { $eq: params.previousReservationStatus } }
|
|
974
|
-
: undefined
|
|
975
|
-
|
|
976
|
-
|
|
1012
|
+
: undefined
|
|
1013
|
+
};
|
|
1014
|
+
const update = {
|
|
1015
|
+
$set: {
|
|
1016
|
+
reservationStatus: factory.reservationStatusType.ReservationCancelled,
|
|
1017
|
+
modifiedTime: params.modifiedTime,
|
|
1018
|
+
...(typeof params.previousReservationStatus === 'string')
|
|
977
1019
|
? { previousReservationStatus: params.previousReservationStatus }
|
|
978
|
-
: undefined
|
|
979
|
-
}
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
1020
|
+
: undefined
|
|
1021
|
+
}
|
|
1022
|
+
};
|
|
1023
|
+
return this.reservationModel.updateMany(conditions, update)
|
|
1024
|
+
.exec();
|
|
983
1025
|
}
|
|
984
1026
|
/**
|
|
985
1027
|
* 発券する
|
|
986
1028
|
*/
|
|
987
|
-
checkInIfNot(params) {
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
1029
|
+
async checkInIfNot(params) {
|
|
1030
|
+
const { now } = params;
|
|
1031
|
+
if (!(now instanceof Date)) {
|
|
1032
|
+
throw new factory.errors.Argument('now', 'must be Date');
|
|
1033
|
+
}
|
|
1034
|
+
const conditions = [];
|
|
1035
|
+
if (typeof params.id === 'string') {
|
|
1036
|
+
if (params.id.length > 0) {
|
|
1037
|
+
conditions.push({ _id: { $eq: params.id } });
|
|
993
1038
|
}
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
}
|
|
1039
|
+
}
|
|
1040
|
+
else {
|
|
1041
|
+
const idIn = params.id?.$in;
|
|
1042
|
+
if (Array.isArray(idIn)) {
|
|
1043
|
+
conditions.push({ _id: { $in: idIn } });
|
|
999
1044
|
}
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
}
|
|
1045
|
+
}
|
|
1046
|
+
if (typeof params.reservationNumber === 'string') {
|
|
1047
|
+
if (params.reservationNumber.length > 0) {
|
|
1048
|
+
conditions.push({ reservationNumber: { $eq: params.reservationNumber } });
|
|
1005
1049
|
}
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1050
|
+
}
|
|
1051
|
+
else {
|
|
1052
|
+
const reservationNumberIn = params.reservationNumber?.$in;
|
|
1053
|
+
if (Array.isArray(reservationNumberIn)) {
|
|
1054
|
+
conditions.push({ reservationNumber: { $in: reservationNumberIn } });
|
|
1010
1055
|
}
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1056
|
+
}
|
|
1057
|
+
// 無条件で実行されないように
|
|
1058
|
+
if (conditions.length > 0) {
|
|
1059
|
+
// false->trueのみ(2023-01-31~)
|
|
1060
|
+
conditions.push({ checkedIn: { $eq: false } });
|
|
1061
|
+
return this.reservationModel.updateMany({ $and: conditions }, {
|
|
1062
|
+
$set: {
|
|
1063
|
+
checkedIn: true,
|
|
1064
|
+
modifiedTime: now,
|
|
1065
|
+
'reservedTicket.dateIssued': now // set reservedTicket.dateIssued(2024-12-03~)
|
|
1015
1066
|
}
|
|
1016
|
-
}
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
$set: {
|
|
1023
|
-
checkedIn: true,
|
|
1024
|
-
modifiedTime: now,
|
|
1025
|
-
'reservedTicket.dateIssued': now // set reservedTicket.dateIssued(2024-12-03~)
|
|
1026
|
-
}
|
|
1027
|
-
})
|
|
1028
|
-
.exec();
|
|
1029
|
-
}
|
|
1030
|
-
else {
|
|
1031
|
-
return;
|
|
1032
|
-
}
|
|
1033
|
-
});
|
|
1067
|
+
})
|
|
1068
|
+
.exec();
|
|
1069
|
+
}
|
|
1070
|
+
else {
|
|
1071
|
+
return;
|
|
1072
|
+
}
|
|
1034
1073
|
}
|
|
1035
1074
|
/**
|
|
1036
1075
|
* 入場する
|
|
1037
1076
|
*/
|
|
1038
|
-
attendIfNotAttended(params) {
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
'reservedTicket.dateUsed': params.now
|
|
1048
|
-
}
|
|
1049
|
-
}, {
|
|
1050
|
-
new: true,
|
|
1051
|
-
projection: {
|
|
1052
|
-
_id: 0,
|
|
1053
|
-
id: { $toString: '$_id' },
|
|
1054
|
-
typeOf: 1,
|
|
1055
|
-
project: 1,
|
|
1056
|
-
modifiedTime: 1,
|
|
1057
|
-
'reservedTicket.dateUsed': 1,
|
|
1058
|
-
'reservationFor.id': 1,
|
|
1059
|
-
'reservationFor.typeOf': 1
|
|
1060
|
-
}
|
|
1061
|
-
})
|
|
1062
|
-
.lean() // 2024-08-08~
|
|
1063
|
-
// .select({ __v: 0, createdAt: 0, updatedAt: 0 })
|
|
1064
|
-
.exec();
|
|
1065
|
-
if (doc === null) {
|
|
1066
|
-
return this.projectFieldsById({
|
|
1067
|
-
id: params.id,
|
|
1068
|
-
inclusion: [
|
|
1069
|
-
'typeOf', 'project', 'modifiedTime', 'reservedTicket.dateUsed', 'reservationFor.id', 'reservationFor.typeOf'
|
|
1070
|
-
] // inclusion(2024-08-08~)
|
|
1071
|
-
});
|
|
1072
|
-
// throw new factory.errors.NotFound(this.reservationModel.modelName);
|
|
1077
|
+
async attendIfNotAttended(params) {
|
|
1078
|
+
const doc = await this.reservationModel.findOneAndUpdate({
|
|
1079
|
+
_id: { $eq: params.id },
|
|
1080
|
+
attended: { $eq: false }
|
|
1081
|
+
}, {
|
|
1082
|
+
$set: {
|
|
1083
|
+
attended: true,
|
|
1084
|
+
modifiedTime: params.now,
|
|
1085
|
+
'reservedTicket.dateUsed': params.now
|
|
1073
1086
|
}
|
|
1074
|
-
|
|
1075
|
-
|
|
1087
|
+
}, {
|
|
1088
|
+
new: true,
|
|
1089
|
+
projection: {
|
|
1090
|
+
_id: 0,
|
|
1091
|
+
id: { $toString: '$_id' },
|
|
1092
|
+
typeOf: 1,
|
|
1093
|
+
project: 1,
|
|
1094
|
+
modifiedTime: 1,
|
|
1095
|
+
'reservedTicket.dateUsed': 1,
|
|
1096
|
+
'reservationFor.id': 1,
|
|
1097
|
+
'reservationFor.typeOf': 1
|
|
1098
|
+
}
|
|
1099
|
+
})
|
|
1100
|
+
.lean() // 2024-08-08~
|
|
1101
|
+
// .select({ __v: 0, createdAt: 0, updatedAt: 0 })
|
|
1102
|
+
.exec();
|
|
1103
|
+
if (doc === null) {
|
|
1104
|
+
return this.projectFieldsById({
|
|
1105
|
+
id: params.id,
|
|
1106
|
+
inclusion: [
|
|
1107
|
+
'typeOf', 'project', 'modifiedTime', 'reservedTicket.dateUsed', 'reservationFor.id', 'reservationFor.typeOf'
|
|
1108
|
+
] // inclusion(2024-08-08~)
|
|
1109
|
+
});
|
|
1110
|
+
// throw new factory.errors.NotFound(this.reservationModel.modelName);
|
|
1111
|
+
}
|
|
1112
|
+
return doc;
|
|
1076
1113
|
}
|
|
1077
1114
|
/**
|
|
1078
1115
|
* 予約部分更新
|
|
1079
1116
|
*/
|
|
1080
|
-
updatePartiallyById(params) {
|
|
1081
|
-
return
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
}
|
|
1089
|
-
});
|
|
1117
|
+
async updatePartiallyById(params) {
|
|
1118
|
+
return this.reservationModel.findOneAndUpdate({ _id: { $eq: params.id } }, params.update, { new: true })
|
|
1119
|
+
.select({ _id: 1 })
|
|
1120
|
+
.exec()
|
|
1121
|
+
.then((doc) => {
|
|
1122
|
+
if (doc === null) {
|
|
1123
|
+
throw new factory.errors.ArgumentNull(this.reservationModel.modelName);
|
|
1124
|
+
}
|
|
1090
1125
|
});
|
|
1091
1126
|
}
|
|
1092
|
-
deleteByIds(params) {
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
.exec();
|
|
1099
|
-
});
|
|
1127
|
+
async deleteByIds(params) {
|
|
1128
|
+
await this.reservationModel.deleteMany({
|
|
1129
|
+
'project.id': { $eq: params.project.id },
|
|
1130
|
+
_id: { $in: params.ids }
|
|
1131
|
+
})
|
|
1132
|
+
.exec();
|
|
1100
1133
|
}
|
|
1101
|
-
deleteByReservationNumbers(params) {
|
|
1102
|
-
return
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
};
|
|
1116
|
-
});
|
|
1134
|
+
async deleteByReservationNumbers(params) {
|
|
1135
|
+
return this.reservationModel.deleteMany({
|
|
1136
|
+
'project.id': { $eq: params.project.id },
|
|
1137
|
+
reservationNumber: { $in: params.reservationNumbers }
|
|
1138
|
+
})
|
|
1139
|
+
.exec()
|
|
1140
|
+
.then((result) => {
|
|
1141
|
+
return {
|
|
1142
|
+
// n: result?.n,
|
|
1143
|
+
// opTime: result.opTime,
|
|
1144
|
+
// ok: result?.ok,
|
|
1145
|
+
// operationTime,
|
|
1146
|
+
deletedCount: result?.deletedCount
|
|
1147
|
+
};
|
|
1117
1148
|
});
|
|
1118
1149
|
}
|
|
1119
|
-
deleteByProject(params) {
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
.exec();
|
|
1125
|
-
});
|
|
1150
|
+
async deleteByProject(params) {
|
|
1151
|
+
await this.reservationModel.deleteMany({
|
|
1152
|
+
'project.id': { $eq: params.project.id }
|
|
1153
|
+
})
|
|
1154
|
+
.exec();
|
|
1126
1155
|
}
|
|
1127
|
-
searchIdsByReservationNumber(params) {
|
|
1128
|
-
return
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
.then((docs) => docs.map(({ id }) => id));
|
|
1141
|
-
});
|
|
1156
|
+
async searchIdsByReservationNumber(params) {
|
|
1157
|
+
return this.reservationModel.find({
|
|
1158
|
+
reservationNumber: {
|
|
1159
|
+
$in: params.reservationNumber.$in
|
|
1160
|
+
}
|
|
1161
|
+
}, {
|
|
1162
|
+
_id: 0,
|
|
1163
|
+
id: { $toString: '$_id' }
|
|
1164
|
+
})
|
|
1165
|
+
.lean()
|
|
1166
|
+
.setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
|
|
1167
|
+
.exec()
|
|
1168
|
+
.then((docs) => docs.map(({ id }) => id));
|
|
1142
1169
|
}
|
|
1143
1170
|
getCursor(conditions, projection) {
|
|
1144
1171
|
return this.reservationModel.find(conditions, projection)
|
|
1145
1172
|
.sort({ bookingTime: factory.sortType.Descending })
|
|
1146
1173
|
.cursor();
|
|
1147
1174
|
}
|
|
1148
|
-
unsetUnnecessaryFields(params) {
|
|
1149
|
-
return
|
|
1150
|
-
|
|
1151
|
-
.exec();
|
|
1152
|
-
});
|
|
1175
|
+
async unsetUnnecessaryFields(params) {
|
|
1176
|
+
return this.reservationModel.updateMany(params.filter, { $unset: params.$unset }, { timestamps: false })
|
|
1177
|
+
.exec();
|
|
1153
1178
|
}
|
|
1154
1179
|
}
|
|
1155
1180
|
exports.ReservationRepo = ReservationRepo;
|