@chevre/domain 24.0.0-alpha.3 → 24.0.0-alpha.31
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/errorHandler.js +1 -1
- package/lib/chevre/repo/accountTitle.d.ts +7 -3
- package/lib/chevre/repo/accountTransaction.js +1 -2
- package/lib/chevre/repo/action/acceptCOAOffer.d.ts +23 -0
- package/lib/chevre/repo/action/acceptCOAOffer.js +62 -0
- package/lib/chevre/repo/action/acceptPay.d.ts +37 -0
- package/lib/chevre/repo/action/acceptPay.js +87 -0
- package/lib/chevre/repo/action/actionProcess.d.ts +145 -0
- package/lib/chevre/repo/action/actionProcess.js +788 -0
- package/lib/chevre/repo/action/authorizeInvoice.d.ts +26 -0
- package/lib/chevre/repo/action/authorizeInvoice.js +49 -0
- package/lib/chevre/repo/action/authorizeMoneyTransferOffer.d.ts +40 -0
- package/lib/chevre/repo/action/authorizeMoneyTransferOffer.js +61 -0
- package/lib/chevre/repo/action/authorizeOffer.d.ts +21 -0
- package/lib/chevre/repo/action/authorizeOffer.js +85 -0
- package/lib/chevre/repo/action/authorizePaymentMethod.d.ts +36 -0
- package/lib/chevre/repo/action/authorizePaymentMethod.js +50 -0
- package/lib/chevre/repo/action/authorizeProductOffer.d.ts +26 -0
- package/lib/chevre/repo/action/authorizeProductOffer.js +52 -0
- package/lib/chevre/repo/action/checkMovieTicket.d.ts +111 -0
- package/lib/chevre/repo/action/checkMovieTicket.js +200 -0
- package/lib/chevre/repo/action/checkThing.d.ts +8 -0
- package/lib/chevre/repo/action/checkThing.js +13 -0
- package/lib/chevre/repo/action.d.ts +18 -258
- package/lib/chevre/repo/action.js +308 -1216
- package/lib/chevre/repo/aggregateAction.d.ts +102 -0
- package/lib/chevre/repo/aggregateAction.js +378 -0
- package/lib/chevre/repo/aggregateOffer.d.ts +7 -3
- package/lib/chevre/repo/assetTransaction.d.ts +46 -25
- package/lib/chevre/repo/categoryCode.d.ts +8 -3
- package/lib/chevre/repo/comment.d.ts +7 -3
- package/lib/chevre/repo/creativeWork.d.ts +8 -7
- package/lib/chevre/repo/customer.d.ts +8 -3
- package/lib/chevre/repo/event.d.ts +11 -23
- package/lib/chevre/repo/event.js +22 -23
- package/lib/chevre/repo/eventSeries.d.ts +10 -4
- package/lib/chevre/repo/identity.d.ts +12 -3
- package/lib/chevre/repo/identityProvider.d.ts +7 -18
- package/lib/chevre/repo/issuer.d.ts +8 -8
- package/lib/chevre/repo/member.d.ts +7 -3
- package/lib/chevre/repo/merchantReturnPolicy.d.ts +7 -3
- package/lib/chevre/repo/message.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/acceptedPaymentMethod.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/account.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/accountTitle.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/accountTransaction.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/accountingReport.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/action.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/actionRecipe.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/additionalProperty.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/advanceBookingRequirement.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/aggregateOffer.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/aggregateOrder.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/aggregateReservation.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/aggregation.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/assetTransaction.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/authorization.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/categoryCode.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/civicStructure.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/comments.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/creativeWork.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/customer.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/customerType.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/emailMessages.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/event.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/eventOffer.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/eventSeries.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/identity.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/identityProvider.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/issuer.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/member/global.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/member.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/message.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/movieTicketTypes.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/note.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/offerCatalog.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/offerCatalogItem.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/offerItemCondition.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/order.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/ownershipInfo.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/paymentService.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/paymentServiceChannel.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/pendingReservation.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/place.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/potentialAction.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/priceSpecification.d.ts +6 -3
- package/lib/chevre/repo/mongoose/schemas/product.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/productModel.d.ts +6 -5
- package/lib/chevre/repo/mongoose/schemas/productOffer.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/project.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/reservation.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/reserveInterface.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/role.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/schedule.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/seller.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/sellerReturnPolicy.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/service/availableHour.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/serviceOutput.d.ts +5 -4
- package/lib/chevre/repo/mongoose/schemas/setting.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/task.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/ticket.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/transaction.d.ts +8 -4
- package/lib/chevre/repo/mongoose/schemas/transaction.js +31 -0
- package/lib/chevre/repo/mongoose/schemas/transactionNumber.d.ts +3 -2
- package/lib/chevre/repo/mongoose/schemas/trip.d.ts +4 -3
- package/lib/chevre/repo/mongoose/schemas/webSite.d.ts +4 -3
- package/lib/chevre/repo/mongoose/virtuals.d.ts +3 -0
- package/lib/chevre/repo/mongoose/virtuals.js +2 -0
- package/lib/chevre/repo/movieTicketType.d.ts +2 -1
- package/lib/chevre/repo/offerCatalog.d.ts +8 -4
- package/lib/chevre/repo/order.d.ts +8 -7
- package/lib/chevre/repo/orderInTransaction.d.ts +8 -0
- package/lib/chevre/repo/orderInTransaction.js +16 -2
- package/lib/chevre/repo/orderNumber.d.ts +3 -2
- package/lib/chevre/repo/orderNumber.js +23 -28
- package/lib/chevre/repo/ownershipInfo.d.ts +8 -7
- package/lib/chevre/repo/paymentService.d.ts +0 -13
- package/lib/chevre/repo/paymentService.js +5 -5
- package/lib/chevre/repo/pendingReservation.js +0 -1
- package/lib/chevre/repo/place/hasPOS.js +3 -3
- package/lib/chevre/repo/place/movieTheater.d.ts +7 -3
- package/lib/chevre/repo/place/screeningRoom.d.ts +7 -3
- package/lib/chevre/repo/potentialAction.d.ts +7 -26
- package/lib/chevre/repo/priceSpecification.d.ts +51 -24
- package/lib/chevre/repo/priceSpecification.js +9 -13
- package/lib/chevre/repo/product.d.ts +8 -4
- package/lib/chevre/repo/productModel.d.ts +3 -1
- package/lib/chevre/repo/productModel.js +15 -11
- package/lib/chevre/repo/project.d.ts +8 -11
- package/lib/chevre/repo/reservation.d.ts +14 -13
- package/lib/chevre/repo/reserveInterface.js +4 -4
- package/lib/chevre/repo/role.d.ts +39 -3
- package/lib/chevre/repo/schedule.js +1 -1
- package/lib/chevre/repo/seller.d.ts +7 -50
- package/lib/chevre/repo/task.d.ts +7 -67
- package/lib/chevre/repo/transaction/moneyTransfer.d.ts +61 -0
- package/lib/chevre/repo/transaction/moneyTransfer.js +379 -0
- package/lib/chevre/repo/transaction/placeOrder.d.ts +140 -0
- package/lib/chevre/repo/transaction/placeOrder.js +528 -0
- package/lib/chevre/repo/transaction/returnOrder.d.ts +45 -0
- package/lib/chevre/repo/transaction/returnOrder.js +341 -0
- package/lib/chevre/repo/transaction.d.ts +105 -138
- package/lib/chevre/repo/transaction.js +726 -632
- package/lib/chevre/repository.d.ts +69 -5
- package/lib/chevre/repository.js +151 -13
- package/lib/chevre/service/aggregation/system.d.ts +10 -10
- package/lib/chevre/service/aggregation/system.js +9 -9
- package/lib/chevre/service/assetTransaction/pay/check.d.ts +5 -4
- package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.d.ts +7 -4
- package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.js +3 -3
- package/lib/chevre/service/assetTransaction/pay/start/factory.d.ts +51 -3
- package/lib/chevre/service/assetTransaction/pay/start/factory.js +58 -21
- package/lib/chevre/service/assetTransaction/pay/start/preStart/fixPaymentService.d.ts +10 -0
- package/lib/chevre/service/assetTransaction/pay/start/preStart/fixPaymentService.js +88 -0
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorize.d.ts +57 -0
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorize.js +56 -0
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.d.ts +2 -2
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.d.ts +3 -1
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.js +1 -11
- package/lib/chevre/service/assetTransaction/pay/start.d.ts +4 -0
- package/lib/chevre/service/assetTransaction/pay/start.js +8 -132
- package/lib/chevre/service/assetTransaction/reserveCOA/cancel.d.ts +19 -4
- package/lib/chevre/service/assetTransaction/reserveCOA/cancel.js +7 -1
- package/lib/chevre/service/notification/triggerWebhook.d.ts +7 -6
- package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.d.ts +0 -2
- package/lib/chevre/service/offer/event/authorize.d.ts +6 -5
- package/lib/chevre/service/offer/event/authorize.js +6 -6
- package/lib/chevre/service/offer/event/issueEventOfferTicket.d.ts +2 -2
- package/lib/chevre/service/offer/event/issueEventOfferTicket.js +1 -1
- package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.d.ts +0 -2
- package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.js +1 -0
- package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4coa.d.ts +2 -0
- package/lib/chevre/service/offer/event/voidTransaction.d.ts +6 -2
- package/lib/chevre/service/offer/event/voidTransaction.js +3 -2
- package/lib/chevre/service/offer/event/voidTransactionByActionId.d.ts +8 -3
- package/lib/chevre/service/offer/event/voidTransactionByActionId.js +4 -4
- package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.d.ts +16 -5
- package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +7 -7
- package/lib/chevre/service/offer/eventServiceByCOA/authorize.d.ts +6 -4
- package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +3 -10
- package/lib/chevre/service/offer/eventServiceByCOA/authorizeByAcceptAction.js +21 -13
- package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +19 -10
- package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.d.ts +2 -2
- package/lib/chevre/service/offer/moneyTransfer/authorize.d.ts +5 -4
- package/lib/chevre/service/offer/moneyTransfer/authorize.js +9 -6
- package/lib/chevre/service/offer/moneyTransfer/voidTransaction.d.ts +5 -4
- package/lib/chevre/service/offer/moneyTransfer/voidTransaction.js +8 -5
- package/lib/chevre/service/offer/product.d.ts +8 -6
- package/lib/chevre/service/offer/product.js +11 -11
- package/lib/chevre/service/order/confirmPayTransaction.d.ts +0 -2
- package/lib/chevre/service/order/confirmPayTransaction.js +1 -0
- package/lib/chevre/service/order/findPlaceOrderTransaction.d.ts +2 -2
- package/lib/chevre/service/order/findPlaceOrderTransaction.js +1 -1
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/isDeliverable.d.ts +16 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/isDeliverable.js +97 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.d.ts +21 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.js +86 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.d.ts +22 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.js +112 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/onReserveTransactionConfirmed.d.ts +22 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/onReserveTransactionConfirmed.js +74 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.d.ts +25 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.js +111 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/processing2inTransit.d.ts +16 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/processing2inTransit.js +74 -0
- package/lib/chevre/service/order/onAssetTransactionStatusChanged.d.ts +8 -30
- package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +37 -348
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.d.ts +6 -7
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.d.ts +6 -5
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.d.ts +7 -6
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +1 -1
- package/lib/chevre/service/order/payOrder.d.ts +2 -2
- package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.d.ts +8 -7
- package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +1 -1
- package/lib/chevre/service/order/placeOrder.d.ts +13 -12
- package/lib/chevre/service/order/returnOrder.d.ts +2 -2
- package/lib/chevre/service/order/returnOrder.js +1 -1
- package/lib/chevre/service/order/sendOrder.d.ts +6 -6
- package/lib/chevre/service/order/sendOrder.js +9 -8
- package/lib/chevre/service/order.d.ts +3 -6
- package/lib/chevre/service/order.js +3 -9
- package/lib/chevre/service/payment/any/{fixOrderAsNeeded.d.ts → authorize/fixOrderAsNeeded.d.ts} +6 -6
- package/lib/chevre/service/payment/any/{fixOrderAsNeeded.js → authorize/fixOrderAsNeeded.js} +5 -8
- package/lib/chevre/service/payment/any/authorize/fixTransactionNumber.d.ts +8 -5
- package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.d.ts +14 -10
- package/lib/chevre/service/payment/any/authorize/handlePrePublishedPaymentMethodIdOnAuthorizing.js +34 -17
- package/lib/chevre/service/payment/any/authorize.d.ts +98 -0
- package/lib/chevre/service/payment/any/authorize.js +239 -0
- package/lib/chevre/service/payment/any/findAcceptAction.d.ts +43 -0
- package/lib/chevre/service/payment/any/findAcceptAction.js +94 -0
- package/lib/chevre/service/payment/any/findAuthorizeAction.d.ts +42 -0
- package/lib/chevre/service/payment/any/findAuthorizeAction.js +83 -0
- package/lib/chevre/service/payment/any/findCheckAction.d.ts +45 -0
- package/lib/chevre/service/payment/any/findCheckAction.js +89 -0
- package/lib/chevre/service/payment/any/invalidatePaymentUrl.d.ts +29 -0
- package/lib/chevre/service/payment/any/invalidatePaymentUrl.js +187 -0
- package/lib/chevre/service/payment/any/onPayActionCompleted.d.ts +7 -3
- package/lib/chevre/service/payment/any/onPayActionCompleted.js +3 -0
- package/lib/chevre/service/payment/any/processVoidPayTransaction.d.ts +30 -0
- package/lib/chevre/service/payment/any/processVoidPayTransaction.js +125 -0
- package/lib/chevre/service/payment/any/publishPaymentUrl/fixTransactionNumberOnPublishPaymentUrl.d.ts +2 -2
- package/lib/chevre/service/payment/any/publishPaymentUrl.d.ts +66 -0
- package/lib/chevre/service/payment/any/publishPaymentUrl.js +133 -0
- package/lib/chevre/service/payment/any/voidPayTransaction.d.ts +34 -0
- package/lib/chevre/service/payment/any/voidPayTransaction.js +38 -0
- package/lib/chevre/service/payment/any.d.ts +8 -305
- package/lib/chevre/service/payment/any.js +17 -857
- package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.d.ts +8 -6
- package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard.js +3 -3
- package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.d.ts +8 -6
- package/lib/chevre/service/payment/creditCard/authorize/processAuthorizeCreditCard3ds.js +3 -3
- package/lib/chevre/service/payment/creditCard/authorize.d.ts +3 -2
- package/lib/chevre/service/payment/creditCard/authorize.js +2 -2
- package/lib/chevre/service/payment/creditCard/voidTransaction.d.ts +9 -8
- package/lib/chevre/service/payment/creditCard/voidTransaction.js +15 -7
- package/lib/chevre/service/payment/movieTicket/authorize.d.ts +2 -0
- package/lib/chevre/service/payment/movieTicket/checkMovieTicket.d.ts +3 -3
- package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +3 -3
- package/lib/chevre/service/payment/movieTicket/validation.d.ts +11 -10
- package/lib/chevre/service/payment/movieTicket/validation.js +25 -15
- package/lib/chevre/service/report.d.ts +1 -2
- package/lib/chevre/service/report.js +1 -3
- package/lib/chevre/service/task/acceptCOAOffer.js +11 -6
- package/lib/chevre/service/task/authorizePayment.js +16 -5
- package/lib/chevre/service/task/checkMovieTicket.js +3 -3
- package/lib/chevre/service/task/checkResource.js +2 -2
- package/lib/chevre/service/task/confirmPayTransaction.js +2 -2
- package/lib/chevre/service/task/deleteTransaction.js +7 -1
- package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +4 -2
- package/lib/chevre/service/task/onOrderPaymentCompleted.js +2 -2
- package/lib/chevre/service/task/pay.js +3 -1
- package/lib/chevre/service/task/payment/payByTask.d.ts +15 -12
- package/lib/chevre/service/task/payment/payByTask.js +1 -1
- package/lib/chevre/service/task/payment/voidPaymentByTask.d.ts +2 -0
- package/lib/chevre/service/task/placeOrder.js +6 -4
- package/lib/chevre/service/task/publishPaymentUrl.js +11 -5
- package/lib/chevre/service/task/returnOrder.js +4 -4
- package/lib/chevre/service/task/returnPayTransaction.js +4 -3
- package/lib/chevre/service/task/sendOrder.js +4 -4
- package/lib/chevre/service/task/voidMoneyTransferTransaction.js +11 -6
- package/lib/chevre/service/task/voidPayTransaction.js +10 -4
- package/lib/chevre/service/task/voidPayment.js +2 -0
- package/lib/chevre/service/task/voidRegisterServiceTransaction.js +7 -6
- package/lib/chevre/service/task/voidReserveTransaction.js +8 -3
- package/lib/chevre/service/transaction/deleteTransaction.d.ts +6 -0
- package/lib/chevre/service/transaction/deleteTransaction.js +56 -14
- package/lib/chevre/service/transaction/moneyTransfer.d.ts +12 -9
- package/lib/chevre/service/transaction/moneyTransfer.js +11 -11
- package/lib/chevre/service/transaction/placeOrder/confirm.d.ts +2 -2
- package/lib/chevre/service/transaction/placeOrder/confirm.js +10 -9
- package/lib/chevre/service/transaction/placeOrder/exportTasksById.d.ts +7 -6
- package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +1 -1
- package/lib/chevre/service/transaction/placeOrder/{publishOrderNumberIfNotExist.d.ts → issueOrderNumberIfNotExist.d.ts} +4 -4
- package/lib/chevre/service/transaction/placeOrder/{publishOrderNumberIfNotExist.js → issueOrderNumberIfNotExist.js} +21 -13
- package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.d.ts +2 -2
- package/lib/chevre/service/transaction/placeOrder/publishConfirmationNumberIfNotExist.js +3 -3
- package/lib/chevre/service/transaction/placeOrder/start.d.ts +3 -3
- package/lib/chevre/service/transaction/placeOrder/start.js +2 -2
- package/lib/chevre/service/transaction/placeOrder/updateAgent.d.ts +23 -0
- package/lib/chevre/service/transaction/placeOrder/updateAgent.js +126 -0
- package/lib/chevre/service/transaction/placeOrder.d.ts +2 -1
- package/lib/chevre/service/transaction/placeOrder.js +3 -1
- package/lib/chevre/service/transaction/returnOrder/preStart.d.ts +1 -1
- package/lib/chevre/service/transaction/returnOrder.d.ts +16 -14
- package/lib/chevre/service/transaction/returnOrder.js +4 -4
- package/lib/chevre/service/transaction.d.ts +9 -21
- package/lib/chevre/service/transaction.js +5 -111
- package/package.json +5 -10
- package/lib/chevre/repo/mongoose/schemas/telemetry.d.ts +0 -9
- package/lib/chevre/repo/mongoose/schemas/telemetry.js +0 -80
- package/lib/chevre/repo/telemetry.d.ts +0 -9
- package/lib/chevre/repo/telemetry.js +0 -14
- package/lib/chevre/service/report/telemetry.d.ts +0 -309
- package/lib/chevre/service/report/telemetry.js +0 -449
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
import * as factory from '../../../factory';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AuthorizeMoneyTransferOfferActionRepo } from '../../../repo/action/authorizeMoneyTransferOffer';
|
|
3
3
|
import type { AssetTransactionRepo } from '../../../repo/assetTransaction';
|
|
4
4
|
import type { OrderInTransactionRepo } from '../../../repo/orderInTransaction';
|
|
5
5
|
import type { OrderNumberRepo } from '../../../repo/orderNumber';
|
|
6
6
|
import type { ProductRepo } from '../../../repo/product';
|
|
7
7
|
import type { ProjectRepo } from '../../../repo/project';
|
|
8
|
-
import type {
|
|
8
|
+
import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
|
|
9
9
|
import type { TransactionNumberRepo } from '../../../repo/transactionNumber';
|
|
10
10
|
interface IAuthorizeRepos {
|
|
11
|
-
action
|
|
11
|
+
action?: never;
|
|
12
|
+
authorizeMoneyTransferOfferAction: AuthorizeMoneyTransferOfferActionRepo;
|
|
12
13
|
product: ProductRepo;
|
|
13
14
|
project: ProjectRepo;
|
|
14
15
|
assetTransaction: AssetTransactionRepo;
|
|
15
16
|
orderInTransaction: OrderInTransactionRepo;
|
|
16
17
|
orderNumber: OrderNumberRepo;
|
|
17
|
-
|
|
18
|
+
placeOrder: PlaceOrderRepo;
|
|
18
19
|
transactionNumber: TransactionNumberRepo;
|
|
19
20
|
}
|
|
20
21
|
type IAuthorizeOperation<T> = (repos: IAuthorizeRepos) => Promise<T>;
|
|
@@ -30,11 +30,14 @@ exports.authorize = authorize;
|
|
|
30
30
|
const moment_1 = __importDefault(require("moment"));
|
|
31
31
|
const factory = __importStar(require("../../../factory"));
|
|
32
32
|
const MoneyTransferAssetTransactionService = __importStar(require("../../assetTransaction/moneyTransfer"));
|
|
33
|
-
const
|
|
33
|
+
const issueOrderNumberIfNotExist_1 = require("../../transaction/placeOrder/issueOrderNumberIfNotExist");
|
|
34
34
|
const any_1 = require("../any");
|
|
35
35
|
function authorize(params) {
|
|
36
36
|
return async (repos) => {
|
|
37
|
-
|
|
37
|
+
if (params.purpose.typeOf !== factory.transactionType.PlaceOrder) {
|
|
38
|
+
throw new factory.errors.NotImplemented(`purpose.typeOf: ${params.purpose.typeOf} not implemented`);
|
|
39
|
+
}
|
|
40
|
+
const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
|
|
38
41
|
typeOf: params.purpose.typeOf,
|
|
39
42
|
id: params.purpose.id
|
|
40
43
|
}, ['seller', 'project', 'agent', 'typeOf']);
|
|
@@ -42,7 +45,7 @@ function authorize(params) {
|
|
|
42
45
|
throw new factory.errors.Forbidden('Transaction not yours');
|
|
43
46
|
}
|
|
44
47
|
const now = new Date();
|
|
45
|
-
const orderNumber = await (0,
|
|
48
|
+
const orderNumber = await (0, issueOrderNumberIfNotExist_1.issueOrderNumberIfNotExist)({
|
|
46
49
|
project: { id: params.project.id },
|
|
47
50
|
id: transaction.id,
|
|
48
51
|
object: { orderDate: now }
|
|
@@ -58,7 +61,7 @@ function authorize(params) {
|
|
|
58
61
|
object: params.object,
|
|
59
62
|
transactionNumber
|
|
60
63
|
});
|
|
61
|
-
const action = await repos.
|
|
64
|
+
const action = await repos.authorizeMoneyTransferOfferAction.start(actionAttributes);
|
|
62
65
|
// priceを確定する
|
|
63
66
|
let price = 0;
|
|
64
67
|
try {
|
|
@@ -83,7 +86,7 @@ function authorize(params) {
|
|
|
83
86
|
}
|
|
84
87
|
catch (error) {
|
|
85
88
|
try {
|
|
86
|
-
await repos.
|
|
89
|
+
await repos.authorizeMoneyTransferOfferAction.giveUp({ typeOf: action.typeOf, id: action.id, error });
|
|
87
90
|
}
|
|
88
91
|
catch (__) {
|
|
89
92
|
// 失敗したら仕方ない
|
|
@@ -97,7 +100,7 @@ function authorize(params) {
|
|
|
97
100
|
responseBody
|
|
98
101
|
// acceptedOffers: acceptedOffers4result // discontinue(2024-06-17~)
|
|
99
102
|
};
|
|
100
|
-
await repos.
|
|
103
|
+
await repos.authorizeMoneyTransferOfferAction.completeWithVoid({ typeOf: action.typeOf, id: action.id, result: result });
|
|
101
104
|
return { id: action.id };
|
|
102
105
|
};
|
|
103
106
|
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as factory from '../../../factory';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AuthorizeMoneyTransferOfferActionRepo } from '../../../repo/action/authorizeMoneyTransferOffer';
|
|
3
3
|
import type { AssetTransactionRepo } from '../../../repo/assetTransaction';
|
|
4
|
-
import type {
|
|
4
|
+
import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
|
|
5
5
|
export declare function voidTransaction(params: factory.task.IData<factory.taskName.VoidMoneyTransferTransaction>): (repos: {
|
|
6
|
-
action
|
|
6
|
+
action?: never;
|
|
7
|
+
authorizeMoneyTransferOfferAction: AuthorizeMoneyTransferOfferActionRepo;
|
|
7
8
|
assetTransaction: AssetTransactionRepo;
|
|
8
|
-
|
|
9
|
+
placeOrder: PlaceOrderRepo;
|
|
9
10
|
}) => Promise<void>;
|
|
@@ -28,16 +28,19 @@ const factory = __importStar(require("../../../factory"));
|
|
|
28
28
|
const MoneyTransferAssetTransactionService = __importStar(require("../../assetTransaction/moneyTransfer"));
|
|
29
29
|
function voidTransaction(params) {
|
|
30
30
|
return async (repos) => {
|
|
31
|
+
if (params.purpose.typeOf !== factory.transactionType.PlaceOrder) {
|
|
32
|
+
throw new factory.errors.NotImplemented(`purpose.typeOf: ${params.purpose.typeOf} not implemented`);
|
|
33
|
+
}
|
|
31
34
|
let transaction;
|
|
32
35
|
if (params.agent !== undefined && params.agent !== null && typeof params.agent.id === 'string') {
|
|
33
|
-
transaction = await repos.
|
|
36
|
+
transaction = await repos.placeOrder.findPlaceOrderInProgressById({
|
|
34
37
|
typeOf: params.purpose.typeOf,
|
|
35
38
|
id: params.purpose.id
|
|
36
39
|
}, ['typeOf']);
|
|
37
40
|
}
|
|
38
41
|
let authorizeActions;
|
|
39
42
|
if (typeof params.id === 'string') {
|
|
40
|
-
const authorizeAction = await repos.
|
|
43
|
+
const authorizeAction = await repos.authorizeMoneyTransferOfferAction.findById({ typeOf: factory.actionType.AuthorizeAction, id: params.id });
|
|
41
44
|
// 取引内のアクションかどうか確認
|
|
42
45
|
if (transaction !== undefined) {
|
|
43
46
|
if (authorizeAction.purpose.typeOf !== transaction.typeOf || authorizeAction.purpose.id !== transaction.id) {
|
|
@@ -47,8 +50,8 @@ function voidTransaction(params) {
|
|
|
47
50
|
authorizeActions = [authorizeAction];
|
|
48
51
|
}
|
|
49
52
|
else {
|
|
50
|
-
authorizeActions = await repos.
|
|
51
|
-
typeOf: factory.actionType.AuthorizeAction,
|
|
53
|
+
authorizeActions = await repos.authorizeMoneyTransferOfferAction.findAuthorizeMoneyTransferOfferActionsByPurpose({
|
|
54
|
+
// typeOf: factory.actionType.AuthorizeAction,
|
|
52
55
|
purpose: {
|
|
53
56
|
typeOf: params.purpose.typeOf,
|
|
54
57
|
id: params.purpose.id
|
|
@@ -58,7 +61,7 @@ function voidTransaction(params) {
|
|
|
58
61
|
.filter((a) => a.object.itemOffered?.typeOf === factory.actionType.MoneyTransfer);
|
|
59
62
|
}
|
|
60
63
|
await Promise.all(authorizeActions.map(async (action) => {
|
|
61
|
-
await repos.
|
|
64
|
+
await repos.authorizeMoneyTransferOfferAction.cancelWithVoid({ typeOf: action.typeOf, id: action.id });
|
|
62
65
|
const pendingTransactionTransactionNumber = action.object.itemOffered.object?.pendingTransaction?.transactionNumber;
|
|
63
66
|
if (typeof pendingTransactionTransactionNumber === 'string') {
|
|
64
67
|
// 取引が存在すれば中止
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as factory from '../../factory';
|
|
2
2
|
import type { AccountRepo } from '../../repo/account';
|
|
3
|
-
import type {
|
|
3
|
+
import type { AuthorizeProductOfferActionRepo } from '../../repo/action/authorizeProductOffer';
|
|
4
4
|
import type { AssetTransactionRepo } from '../../repo/assetTransaction';
|
|
5
5
|
import type { OfferRepo } from '../../repo/offer/unitPriceInCatalog';
|
|
6
6
|
import type { OfferCatalogRepo } from '../../repo/offerCatalog';
|
|
@@ -11,11 +11,12 @@ import type { ProductRepo } from '../../repo/product';
|
|
|
11
11
|
import type { ProjectRepo } from '../../repo/project';
|
|
12
12
|
import type { ServiceOutputRepo } from '../../repo/serviceOutput';
|
|
13
13
|
import type { ServiceOutputIdentifierRepo } from '../../repo/serviceOutputIdentifier';
|
|
14
|
-
import type {
|
|
14
|
+
import type { PlaceOrderRepo } from '../../repo/transaction/placeOrder';
|
|
15
15
|
import type { TransactionNumberRepo } from '../../repo/transactionNumber';
|
|
16
16
|
export interface IAuthorizeOperationRepos {
|
|
17
17
|
account: AccountRepo;
|
|
18
|
-
action
|
|
18
|
+
action?: never;
|
|
19
|
+
authorizeProductOfferAction: AuthorizeProductOfferActionRepo;
|
|
19
20
|
assetTransaction: AssetTransactionRepo;
|
|
20
21
|
offer: OfferRepo;
|
|
21
22
|
offerCatalog: OfferCatalogRepo;
|
|
@@ -26,7 +27,7 @@ export interface IAuthorizeOperationRepos {
|
|
|
26
27
|
project: ProjectRepo;
|
|
27
28
|
serviceOutput: ServiceOutputRepo;
|
|
28
29
|
serviceOutputIdentifier: ServiceOutputIdentifierRepo;
|
|
29
|
-
|
|
30
|
+
placeOrder: PlaceOrderRepo;
|
|
30
31
|
transactionNumber: TransactionNumberRepo;
|
|
31
32
|
}
|
|
32
33
|
export type IAuthorizeOperation<T> = (repos: IAuthorizeOperationRepos) => Promise<T>;
|
|
@@ -94,7 +95,8 @@ export declare function authorize(params: {
|
|
|
94
95
|
result: IAuthorizeOfferAction['result'];
|
|
95
96
|
}>;
|
|
96
97
|
export declare function voidTransaction(params: factory.task.IData<factory.taskName.VoidRegisterServiceTransaction>): (repos: {
|
|
97
|
-
action
|
|
98
|
+
action?: never;
|
|
99
|
+
authorizeProductOfferAction: AuthorizeProductOfferActionRepo;
|
|
98
100
|
assetTransaction: AssetTransactionRepo;
|
|
99
|
-
|
|
101
|
+
placeOrder: PlaceOrderRepo;
|
|
100
102
|
}) => Promise<void>;
|
|
@@ -31,7 +31,7 @@ const factory = __importStar(require("../../factory"));
|
|
|
31
31
|
const accountTransactionIdentifier_1 = require("../../factory/accountTransactionIdentifier");
|
|
32
32
|
const availableProductTypes_1 = require("../../factory/availableProductTypes");
|
|
33
33
|
const RegisterServiceTransaction = __importStar(require("../assetTransaction/registerService"));
|
|
34
|
-
const
|
|
34
|
+
const issueOrderNumberIfNotExist_1 = require("../transaction/placeOrder/issueOrderNumberIfNotExist");
|
|
35
35
|
const any_1 = require("./any");
|
|
36
36
|
const factory_1 = require("./product/factory");
|
|
37
37
|
const searchProductOffers_1 = require("./product/searchProductOffers");
|
|
@@ -99,7 +99,7 @@ function search(params) {
|
|
|
99
99
|
function authorize(params) {
|
|
100
100
|
return async (repos) => {
|
|
101
101
|
const now = new Date();
|
|
102
|
-
const transaction = await repos.
|
|
102
|
+
const transaction = await repos.placeOrder.findPlaceOrderInProgressById({
|
|
103
103
|
typeOf: factory.transactionType.PlaceOrder,
|
|
104
104
|
id: params.transaction.id
|
|
105
105
|
}, ['agent', 'project', 'seller', 'typeOf', 'expires']);
|
|
@@ -117,7 +117,7 @@ function authorize(params) {
|
|
|
117
117
|
})(repos);
|
|
118
118
|
}
|
|
119
119
|
// ポイント特典の識別子に利用するため注文番号を先に発行
|
|
120
|
-
const orderNumber = await (0,
|
|
120
|
+
const orderNumber = await (0, issueOrderNumberIfNotExist_1.issueOrderNumberIfNotExist)({
|
|
121
121
|
project: { id: transaction.project.id },
|
|
122
122
|
id: transaction.id,
|
|
123
123
|
object: { orderDate: new Date() }
|
|
@@ -142,7 +142,7 @@ function authorize(params) {
|
|
|
142
142
|
transaction: transaction,
|
|
143
143
|
transactionNumber: transactionNumber
|
|
144
144
|
});
|
|
145
|
-
const action = await repos.
|
|
145
|
+
const action = await repos.authorizeProductOfferAction.start(actionAttributes);
|
|
146
146
|
try {
|
|
147
147
|
// 会員の場合のみ排他ロック
|
|
148
148
|
// if (params.agent.typeOf === factory.personType.Person) {
|
|
@@ -168,14 +168,14 @@ function authorize(params) {
|
|
|
168
168
|
}
|
|
169
169
|
catch (error) {
|
|
170
170
|
try {
|
|
171
|
-
await repos.
|
|
171
|
+
await repos.authorizeProductOfferAction.giveUp({ typeOf: action.typeOf, id: action.id, error });
|
|
172
172
|
}
|
|
173
173
|
catch (__) {
|
|
174
174
|
// no op
|
|
175
175
|
}
|
|
176
176
|
throw error;
|
|
177
177
|
}
|
|
178
|
-
await repos.
|
|
178
|
+
await repos.authorizeProductOfferAction.completeWithVoid({ typeOf: action.typeOf, id: action.id, result: result });
|
|
179
179
|
return { id: action.id, result };
|
|
180
180
|
};
|
|
181
181
|
}
|
|
@@ -214,7 +214,7 @@ function fixProductAndOffers(params) {
|
|
|
214
214
|
}
|
|
215
215
|
function voidTransaction(params) {
|
|
216
216
|
return async (repos) => {
|
|
217
|
-
const transaction = await repos.
|
|
217
|
+
const transaction = await repos.placeOrder.findPlaceOrderById({
|
|
218
218
|
typeOf: params.purpose.typeOf,
|
|
219
219
|
id: params.purpose.id
|
|
220
220
|
}, ['agent', 'status', 'typeOf']);
|
|
@@ -230,15 +230,15 @@ function voidTransaction(params) {
|
|
|
230
230
|
}
|
|
231
231
|
let authorizeActions;
|
|
232
232
|
if (typeof params.id === 'string') {
|
|
233
|
-
const action = await repos.
|
|
233
|
+
const action = await repos.authorizeProductOfferAction.findById({ typeOf: factory.actionType.AuthorizeAction, id: params.id });
|
|
234
234
|
if (action.purpose.typeOf !== transaction.typeOf || action.purpose.id !== transaction.id) {
|
|
235
235
|
throw new factory.errors.Argument('Transaction', 'Action not found in the transaction');
|
|
236
236
|
}
|
|
237
237
|
authorizeActions = [action];
|
|
238
238
|
}
|
|
239
239
|
else {
|
|
240
|
-
authorizeActions = await repos.
|
|
241
|
-
typeOf: factory.actionType.AuthorizeAction,
|
|
240
|
+
authorizeActions = await repos.authorizeProductOfferAction.findAuthorizeProductOfferActionsByPurpose({
|
|
241
|
+
// typeOf: factory.actionType.AuthorizeAction,
|
|
242
242
|
purpose: {
|
|
243
243
|
typeOf: params.purpose.typeOf,
|
|
244
244
|
id: params.purpose.id
|
|
@@ -260,7 +260,7 @@ function voidTransaction(params) {
|
|
|
260
260
|
// purpose: params.purpose
|
|
261
261
|
// })(repos);
|
|
262
262
|
}
|
|
263
|
-
await repos.
|
|
263
|
+
await repos.authorizeProductOfferAction.cancelWithVoid({ typeOf: action.typeOf, id: action.id });
|
|
264
264
|
await processVoidRegisterServiceTransaction({
|
|
265
265
|
action,
|
|
266
266
|
project: params.project
|
|
@@ -7,7 +7,6 @@ import type { EventRepo } from '../../repo/event';
|
|
|
7
7
|
import type { OrderRepo } from '../../repo/order';
|
|
8
8
|
import type { ProjectRepo } from '../../repo/project';
|
|
9
9
|
import type { TaskRepo } from '../../repo/task';
|
|
10
|
-
import type { TransactionRepo } from '../../repo/transaction';
|
|
11
10
|
declare function confirmPayTransaction(data: factory.task.IData<factory.taskName.ConfirmPayTransaction> & {
|
|
12
11
|
project: {
|
|
13
12
|
id: string;
|
|
@@ -22,6 +21,5 @@ declare function confirmPayTransaction(data: factory.task.IData<factory.taskName
|
|
|
22
21
|
event: EventRepo;
|
|
23
22
|
project: ProjectRepo;
|
|
24
23
|
task: TaskRepo;
|
|
25
|
-
transaction: TransactionRepo;
|
|
26
24
|
}) => Promise<void>;
|
|
27
25
|
export { confirmPayTransaction };
|
|
@@ -25,6 +25,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.confirmPayTransaction = confirmPayTransaction;
|
|
27
27
|
const factory = __importStar(require("../../factory"));
|
|
28
|
+
// import type { TransactionRepo } from '../../repo/transaction';
|
|
28
29
|
const PayTransactionService = __importStar(require("../assetTransaction/pay"));
|
|
29
30
|
function confirmPayTransaction(data, options) {
|
|
30
31
|
return async (repos) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PlaceOrderRepo } from '../../repo/transaction/placeOrder';
|
|
2
2
|
import * as factory from '../../factory';
|
|
3
3
|
type ITransaction = Pick<factory.transaction.placeOrder.ITransaction, 'id' | 'potentialActions' | 'project' | 'typeOf'>;
|
|
4
4
|
export declare function findPlaceOrderTransaction(params: {
|
|
@@ -8,6 +8,6 @@ export declare function findPlaceOrderTransaction(params: {
|
|
|
8
8
|
confirmationNumber: string;
|
|
9
9
|
orderNumber: string;
|
|
10
10
|
}): (repos: {
|
|
11
|
-
|
|
11
|
+
placeOrder: PlaceOrderRepo;
|
|
12
12
|
}) => Promise<ITransaction>;
|
|
13
13
|
export {};
|
|
@@ -27,7 +27,7 @@ exports.findPlaceOrderTransaction = findPlaceOrderTransaction;
|
|
|
27
27
|
const factory = __importStar(require("../../factory"));
|
|
28
28
|
function findPlaceOrderTransaction(params) {
|
|
29
29
|
return async (repos) => {
|
|
30
|
-
const placeOrderTransactions = await repos.
|
|
30
|
+
const placeOrderTransactions = await repos.placeOrder.findPlaceOrderTransactions({
|
|
31
31
|
limit: 1,
|
|
32
32
|
page: 1,
|
|
33
33
|
project: { id: { $eq: params.project.id } },
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { AcceptedOfferRepo } from '../../../repo/acceptedOffer';
|
|
2
|
+
import type { AssetTransactionRepo } from '../../../repo/assetTransaction';
|
|
3
|
+
import type { OrderRepo } from '../../../repo/order';
|
|
4
|
+
import * as factory from '../../../factory';
|
|
5
|
+
declare function isDeliverable(params: {
|
|
6
|
+
project: {
|
|
7
|
+
id: string;
|
|
8
|
+
};
|
|
9
|
+
orderNumber: string;
|
|
10
|
+
assetTransactionType: factory.assetTransactionType.Reserve | factory.assetTransactionType.MoneyTransfer | factory.assetTransactionType.RegisterService;
|
|
11
|
+
}): (repos: {
|
|
12
|
+
acceptedOffer: AcceptedOfferRepo;
|
|
13
|
+
assetTransaction: AssetTransactionRepo;
|
|
14
|
+
order: OrderRepo;
|
|
15
|
+
}) => Promise<boolean>;
|
|
16
|
+
export { isDeliverable };
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.isDeliverable = isDeliverable;
|
|
30
|
+
const debug_1 = __importDefault(require("debug"));
|
|
31
|
+
const factory = __importStar(require("../../../factory"));
|
|
32
|
+
const debug = (0, debug_1.default)('chevre-domain:service:order');
|
|
33
|
+
function isDeliverable(params) {
|
|
34
|
+
return async (repos) => {
|
|
35
|
+
let allReserveTransactionConfirmed = false;
|
|
36
|
+
let allMoneyTransferTransactionConfirmed = false;
|
|
37
|
+
let allRegisterServiceTransactionConfirmed = false;
|
|
38
|
+
if (params.assetTransactionType === factory.assetTransactionType.Reserve) {
|
|
39
|
+
allMoneyTransferTransactionConfirmed = true;
|
|
40
|
+
allRegisterServiceTransactionConfirmed = true;
|
|
41
|
+
// 注文のreservationNumberを取得
|
|
42
|
+
const reservationNumbers = await repos.acceptedOffer.distinctValues({ orderNumber: { $in: [params.orderNumber] } }, 'acceptedOffers.itemOffered.reservationNumber');
|
|
43
|
+
if (reservationNumbers.length > 0) {
|
|
44
|
+
const referencedReserveTransactions = await repos.assetTransaction.search({
|
|
45
|
+
project: { id: { $eq: params.project.id } },
|
|
46
|
+
typeOf: factory.assetTransactionType.Reserve,
|
|
47
|
+
transactionNumber: { $in: reservationNumbers }
|
|
48
|
+
}, ['status']);
|
|
49
|
+
allReserveTransactionConfirmed =
|
|
50
|
+
referencedReserveTransactions.length === reservationNumbers.length
|
|
51
|
+
&& referencedReserveTransactions.every(({ status }) => status === factory.transactionStatusType.Confirmed);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
allReserveTransactionConfirmed = true;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
else if (params.assetTransactionType === factory.assetTransactionType.MoneyTransfer) {
|
|
58
|
+
allReserveTransactionConfirmed = true;
|
|
59
|
+
allRegisterServiceTransactionConfirmed = true;
|
|
60
|
+
// 注文のMoneyTransferTransaction.transactionNumberを取得
|
|
61
|
+
const moneyTransferTransactionNumbers = await repos.acceptedOffer.distinctValues({ orderNumber: { $in: [params.orderNumber] } }, 'acceptedOffers.serialNumber');
|
|
62
|
+
if (moneyTransferTransactionNumbers.length > 0) {
|
|
63
|
+
debug('is deliverable?...', params.orderNumber, 'moneyTransferTransactionNumbers:', moneyTransferTransactionNumbers);
|
|
64
|
+
const referencedMoneyTransferTransactions = await repos.assetTransaction.search({
|
|
65
|
+
project: { id: { $eq: params.project.id } },
|
|
66
|
+
typeOf: factory.assetTransactionType.MoneyTransfer,
|
|
67
|
+
transactionNumber: { $in: moneyTransferTransactionNumbers }
|
|
68
|
+
}, ['status']);
|
|
69
|
+
allMoneyTransferTransactionConfirmed =
|
|
70
|
+
referencedMoneyTransferTransactions.length === moneyTransferTransactionNumbers.length
|
|
71
|
+
&& referencedMoneyTransferTransactions.every(({ status }) => status === factory.transactionStatusType.Confirmed);
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
allMoneyTransferTransactionConfirmed = true;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
else if (params.assetTransactionType === factory.assetTransactionType.RegisterService) {
|
|
78
|
+
allReserveTransactionConfirmed = true;
|
|
79
|
+
allMoneyTransferTransactionConfirmed = true;
|
|
80
|
+
const registerServiceTransactionNumbers = await repos.acceptedOffer.distinctValues({ orderNumber: { $in: [params.orderNumber] } }, 'acceptedOffers.serialNumber');
|
|
81
|
+
if (registerServiceTransactionNumbers.length > 0) {
|
|
82
|
+
const referencedRegisterServiceTransactions = await repos.assetTransaction.search({
|
|
83
|
+
project: { id: { $eq: params.project.id } },
|
|
84
|
+
typeOf: factory.assetTransactionType.RegisterService,
|
|
85
|
+
transactionNumber: { $in: registerServiceTransactionNumbers }
|
|
86
|
+
}, ['status']);
|
|
87
|
+
allRegisterServiceTransactionConfirmed =
|
|
88
|
+
referencedRegisterServiceTransactions.length === registerServiceTransactionNumbers.length
|
|
89
|
+
&& referencedRegisterServiceTransactions.every(({ status }) => status === factory.transactionStatusType.Confirmed);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
allRegisterServiceTransactionConfirmed = true;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return allReserveTransactionConfirmed && allMoneyTransferTransactionConfirmed && allRegisterServiceTransactionConfirmed;
|
|
96
|
+
};
|
|
97
|
+
}
|
package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionCanceled.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { AcceptedOfferRepo } from '../../../repo/acceptedOffer';
|
|
2
|
+
import type { AssetTransactionRepo } from '../../../repo/assetTransaction';
|
|
3
|
+
import type { OrderRepo } from '../../../repo/order';
|
|
4
|
+
import type { SettingRepo } from '../../../repo/setting';
|
|
5
|
+
import type { TaskRepo } from '../../../repo/task';
|
|
6
|
+
import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
|
|
7
|
+
import * as factory from '../../../factory';
|
|
8
|
+
interface IOnPayTransactionCanceledRepos {
|
|
9
|
+
acceptedOffer: AcceptedOfferRepo;
|
|
10
|
+
assetTransaction: AssetTransactionRepo;
|
|
11
|
+
order: OrderRepo;
|
|
12
|
+
setting: SettingRepo;
|
|
13
|
+
task: TaskRepo;
|
|
14
|
+
placeOrder: PlaceOrderRepo;
|
|
15
|
+
}
|
|
16
|
+
declare function onPayTransactionCanceled(params: factory.task.onAssetTransactionStatusChanged.IData & {
|
|
17
|
+
object: factory.task.onAssetTransactionStatusChanged.IObjectAsPayTransaction & {
|
|
18
|
+
status: factory.transactionStatusType.Canceled | factory.transactionStatusType.Expired;
|
|
19
|
+
};
|
|
20
|
+
}): (repos: IOnPayTransactionCanceledRepos) => Promise<void>;
|
|
21
|
+
export { IOnPayTransactionCanceledRepos, onPayTransactionCanceled, };
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.onPayTransactionCanceled = onPayTransactionCanceled;
|
|
27
|
+
const findPlaceOrderTransaction_1 = require("../findPlaceOrderTransaction");
|
|
28
|
+
const onOrderStatusChanged_1 = require("../onOrderStatusChanged");
|
|
29
|
+
const factory = __importStar(require("../../../factory"));
|
|
30
|
+
function onPayTransactionCanceled(params) {
|
|
31
|
+
return async (repos
|
|
32
|
+
// settings: Settings
|
|
33
|
+
) => {
|
|
34
|
+
if (typeof params.useOnOrderStatusChanged !== 'boolean') {
|
|
35
|
+
throw new factory.errors.Argument('useOnOrderStatusChanged', 'must be boolean');
|
|
36
|
+
}
|
|
37
|
+
// 注文が存在すればキャンセル(2023-08-30~)
|
|
38
|
+
await cancelOrderIfExist({
|
|
39
|
+
project: { id: params.project.id },
|
|
40
|
+
paymentMethodId: params.object.transactionNumber,
|
|
41
|
+
useOnOrderStatusChanged: params.useOnOrderStatusChanged
|
|
42
|
+
})(repos);
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function cancelOrderIfExist(params) {
|
|
46
|
+
return async (repos) => {
|
|
47
|
+
if (params.paymentMethodId.length === 0) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
// 注文のpaymentMethodIdを取得
|
|
51
|
+
const ordersByPaymentMethodId = await repos.order.projectFields({
|
|
52
|
+
limit: 1,
|
|
53
|
+
page: 1,
|
|
54
|
+
paymentMethods: {
|
|
55
|
+
paymentMethodIds: [params.paymentMethodId]
|
|
56
|
+
},
|
|
57
|
+
project: { id: { $eq: params.project.id } }
|
|
58
|
+
}, { inclusion: ['confirmationNumber', 'orderNumber'] });
|
|
59
|
+
const orderByPaymentMethodId = ordersByPaymentMethodId.shift();
|
|
60
|
+
if (orderByPaymentMethodId !== undefined) {
|
|
61
|
+
const placeOrderTransaction = await (0, findPlaceOrderTransaction_1.findPlaceOrderTransaction)({
|
|
62
|
+
project: { id: params.project.id },
|
|
63
|
+
confirmationNumber: orderByPaymentMethodId.confirmationNumber,
|
|
64
|
+
orderNumber: orderByPaymentMethodId.orderNumber
|
|
65
|
+
})(repos);
|
|
66
|
+
const order = await repos.order.changeStatus({
|
|
67
|
+
project: { id: params.project.id },
|
|
68
|
+
orderNumber: orderByPaymentMethodId.orderNumber,
|
|
69
|
+
orderStatus: factory.orderStatus.OrderCancelled,
|
|
70
|
+
previousOrderStatus: factory.orderStatus.OrderPaymentDue
|
|
71
|
+
});
|
|
72
|
+
if (params.useOnOrderStatusChanged) {
|
|
73
|
+
await (0, onOrderStatusChanged_1.onOrderCancelled)({
|
|
74
|
+
order: {
|
|
75
|
+
orderDate: order.orderDate,
|
|
76
|
+
orderNumber: order.orderNumber,
|
|
77
|
+
orderStatus: factory.orderStatus.OrderCancelled // 強制的にOrderCancelledとして処理する
|
|
78
|
+
},
|
|
79
|
+
placeOrderTransaction
|
|
80
|
+
})({
|
|
81
|
+
task: repos.task
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
}
|
package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.d.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { AcceptedOfferRepo } from '../../../repo/acceptedOffer';
|
|
2
|
+
import type { AssetTransactionRepo } from '../../../repo/assetTransaction';
|
|
3
|
+
import type { OrderRepo } from '../../../repo/order';
|
|
4
|
+
import type { SettingRepo } from '../../../repo/setting';
|
|
5
|
+
import type { TaskRepo } from '../../../repo/task';
|
|
6
|
+
import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
|
|
7
|
+
import * as factory from '../../../factory';
|
|
8
|
+
import { Settings } from '../../../settings';
|
|
9
|
+
interface IOnPayTransactionConfirmedRepos {
|
|
10
|
+
acceptedOffer: AcceptedOfferRepo;
|
|
11
|
+
assetTransaction: AssetTransactionRepo;
|
|
12
|
+
order: OrderRepo;
|
|
13
|
+
setting: SettingRepo;
|
|
14
|
+
task: TaskRepo;
|
|
15
|
+
placeOrder: PlaceOrderRepo;
|
|
16
|
+
}
|
|
17
|
+
declare function onPayTransactionConfirmed(params: factory.task.onAssetTransactionStatusChanged.IData & {
|
|
18
|
+
object: factory.task.onAssetTransactionStatusChanged.IObjectAsPayTransaction & {
|
|
19
|
+
status: factory.transactionStatusType.Confirmed;
|
|
20
|
+
};
|
|
21
|
+
}): (repos: IOnPayTransactionConfirmedRepos, settings: Settings) => Promise<void>;
|
|
22
|
+
export { IOnPayTransactionConfirmedRepos, onPayTransactionConfirmed };
|