@chevre/domain 24.1.0-alpha.6 → 24.1.0-alpha.61
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/emailMessageBuilder.d.ts +1 -1
- package/lib/chevre/emailMessageBuilder.js +4 -12
- package/lib/chevre/factory/transaction/placeOrder.d.ts +2 -10
- package/lib/chevre/factory/transaction/placeOrder.js +1 -0
- package/lib/chevre/index.d.ts +1 -2
- package/lib/chevre/index.js +1 -3
- package/lib/chevre/repo/acceptedOffer.d.ts +25 -27
- package/lib/chevre/repo/acceptedOffer.js +102 -67
- package/lib/chevre/repo/acceptedOfferInReserve.d.ts +34 -0
- package/lib/chevre/repo/acceptedOfferInReserve.js +86 -0
- package/lib/chevre/repo/accountingReport.js +2 -30
- package/lib/chevre/repo/action/actionProcess.d.ts +1 -1
- package/lib/chevre/repo/assetTransaction/reserve.d.ts +1 -2
- package/lib/chevre/repo/assetTransaction/reserve.js +4 -50
- package/lib/chevre/repo/event.js +12 -8
- package/lib/chevre/repo/factory/acceptedOffer/reserveTransaction2itemOffered.d.ts +9 -0
- package/lib/chevre/repo/factory/acceptedOffer/reserveTransaction2itemOffered.js +76 -0
- package/lib/chevre/repo/factory/reservation/createMongoConditions.d.ts +1 -1
- package/lib/chevre/repo/factory/reservation/createMongoConditions.js +171 -362
- package/lib/chevre/repo/mongoose/schemas/accountingReport.js +42 -42
- package/lib/chevre/repo/mongoose/schemas/order.js +134 -131
- package/lib/chevre/repo/mongoose/schemas/reservation.d.ts +3 -1
- package/lib/chevre/repo/mongoose/schemas/reservation.js +96 -147
- package/lib/chevre/repo/mongoose/schemas/setting.d.ts +84 -0
- package/lib/chevre/repo/mongoose/schemas/setting.js +2 -1
- package/lib/chevre/repo/order.d.ts +3 -83
- package/lib/chevre/repo/order.js +16 -376
- package/lib/chevre/repo/orderInTransaction.d.ts +58 -7
- package/lib/chevre/repo/orderInTransaction.js +58 -4
- package/lib/chevre/repo/place/hasPOS.js +2 -1
- package/lib/chevre/repo/reservation.d.ts +20 -7
- package/lib/chevre/repo/reservation.js +16 -12
- package/lib/chevre/repo/role.d.ts +1 -15
- package/lib/chevre/repo/role.js +7 -14
- package/lib/chevre/repo/setting/integration.d.ts +27 -0
- package/lib/chevre/repo/setting/integration.js +102 -0
- package/lib/chevre/repo/transaction/placeOrder.d.ts +3 -0
- package/lib/chevre/repo/transaction/placeOrder.js +1 -1
- package/lib/chevre/repo/transaction.d.ts +6 -6
- package/lib/chevre/repository.d.ts +5 -0
- package/lib/chevre/repository.js +11 -0
- package/lib/chevre/service/aggregation/event/aggregateOffers.js +6 -1
- package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +0 -1
- package/lib/chevre/service/assetTransaction/cancelReservation/factory.js +14 -11
- package/lib/chevre/service/assetTransaction/cancelReservation/start.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/cancelReservation/start.js +1 -1
- package/lib/chevre/service/assetTransaction/pay/check.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/pay/publishPaymentUrl.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/pay/searchGMOTrade.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorize.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeCreditCard.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/pay/start/processAuthorizeMovieTicket.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/pay/start.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/reserve/cancel.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/reserve/confirm.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/reserve/start/createSubReservations.js +2 -2
- package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.d.ts +1 -8
- package/lib/chevre/service/assetTransaction/reserve/start/factory/createReservation.js +20 -32
- package/lib/chevre/service/assetTransaction/reserve/start/factory/price.d.ts +1 -1
- package/lib/chevre/service/assetTransaction/reserve/start.d.ts +1 -1
- package/lib/chevre/service/delivery/factory.d.ts +6 -1
- package/lib/chevre/service/delivery/factory.js +1 -1
- package/lib/chevre/service/delivery/reservation/factory.d.ts +1 -3
- package/lib/chevre/service/delivery/reservation/factory.js +0 -17
- package/lib/chevre/service/notification/notifyAbortedTasksByEmail.d.ts +2 -4
- package/lib/chevre/service/notification/notifyAbortedTasksByEmail.js +3 -3
- package/lib/chevre/service/notification/notifyByEmail.d.ts +3 -3
- package/lib/chevre/service/notification/notifyByEmail.js +7 -12
- package/lib/chevre/service/notification/sendEmailMessage.d.ts +2 -3
- package/lib/chevre/service/notification/sendEmailMessage.js +5 -4
- package/lib/chevre/service/offer/any.d.ts +7 -2
- package/lib/chevre/service/offer/event/authorize/factory.d.ts +6 -3
- package/lib/chevre/service/offer/event/authorize/factory.js +17 -18
- package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.d.ts +1 -1
- package/lib/chevre/service/offer/event/authorize.d.ts +2 -2
- package/lib/chevre/service/offer/event/authorize.js +55 -107
- package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.d.ts +1 -1
- package/lib/chevre/service/offer/event/voidTransaction.d.ts +1 -1
- package/lib/chevre/service/offer/event/voidTransactionByActionId.d.ts +1 -1
- package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.d.ts +1 -3
- package/lib/chevre/service/order/createAccountingReportIfNotExist.d.ts +1 -1
- package/lib/chevre/service/order/createAccountingReportIfNotExist.js +15 -15
- package/lib/chevre/service/order/deleteOrder.d.ts +1 -1
- package/lib/chevre/service/order/deleteOrder.js +19 -46
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.d.ts +1 -1
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/onReserveTransactionConfirmed.d.ts +1 -1
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.d.ts +1 -1
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/paymentDue2Processing.js +9 -11
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/processing2inTransit.d.ts +1 -1
- package/lib/chevre/service/order/onAssetTransactionStatusChanged.d.ts +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered.js +0 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +6 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially.js +0 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.d.ts +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.d.ts +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.js +2 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned.js +0 -1
- package/lib/chevre/service/order/onOrderUpdated.js +0 -1
- package/lib/chevre/service/order/payOrder.d.ts +1 -1
- package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.d.ts +1 -1
- package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +4 -1
- package/lib/chevre/service/order/placeOrder/factory/orderedItem.d.ts +1 -1
- package/lib/chevre/service/order/placeOrder/factory/orderedItem.js +0 -5
- package/lib/chevre/service/order/placeOrder/factory.d.ts +1 -1
- package/lib/chevre/service/order/placeOrder/factory.js +33 -22
- package/lib/chevre/service/order/placeOrder.d.ts +3 -2
- package/lib/chevre/service/order/placeOrder.js +0 -9
- package/lib/chevre/service/order/returnOrder.js +0 -1
- package/lib/chevre/service/order/sendOrder.js +1 -7
- package/lib/chevre/service/payment/any/authorize.d.ts +1 -1
- package/lib/chevre/service/payment/any/factory.js +7 -6
- package/lib/chevre/service/payment/any/person2username.js +0 -1
- package/lib/chevre/service/payment/any/publishPaymentUrl.d.ts +1 -1
- package/lib/chevre/service/payment/creditCard/authorize.d.ts +1 -1
- package/lib/chevre/service/payment/creditCard/authorize.js +4 -3
- package/lib/chevre/service/payment/creditCard/payCreditCard.d.ts +1 -1
- package/lib/chevre/service/payment/creditCard/payCreditCard.js +1 -1
- package/lib/chevre/service/payment/creditCard/refundCreditCard.d.ts +1 -1
- package/lib/chevre/service/payment/creditCard/refundCreditCard.js +1 -1
- package/lib/chevre/service/payment/creditCard/searchGMOTrade.d.ts +1 -1
- package/lib/chevre/service/payment/creditCard/searchGMOTrade.js +1 -1
- package/lib/chevre/service/payment/creditCard/voidTransaction.d.ts +1 -1
- package/lib/chevre/service/payment/creditCard/voidTransaction.js +1 -1
- package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.d.ts +8 -1
- package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.js +1 -1
- package/lib/chevre/service/payment/movieTicket/authorize.d.ts +1 -1
- package/lib/chevre/service/payment/movieTicket/checkMovieTicket.d.ts +1 -1
- package/lib/chevre/service/payment/movieTicket/payMovieTicket.d.ts +1 -1
- package/lib/chevre/service/payment/movieTicket/payMovieTicket.js +1 -1
- package/lib/chevre/service/payment/movieTicket/processPurchaseNumberAuth.d.ts +1 -1
- package/lib/chevre/service/payment/movieTicket/processPurchaseNumberAuth.js +1 -1
- package/lib/chevre/service/payment/movieTicket/refundMovieTicket.d.ts +1 -1
- package/lib/chevre/service/payment/movieTicket/refundMovieTicket.js +2 -2
- package/lib/chevre/service/payment/movieTicket/voidTransaction.d.ts +1 -1
- package/lib/chevre/service/reserve/confirmReservation.js +7 -7
- package/lib/chevre/service/reserve/factory.js +2 -1
- package/lib/chevre/service/reserve/findByCode.d.ts +1 -1
- package/lib/chevre/service/reserve/findByCode.js +1 -1
- package/lib/chevre/service/reserve/findReservations.d.ts +14 -6
- package/lib/chevre/service/reserve/findReservations.js +26 -36
- package/lib/chevre/service/reserve/potentialActions/onPendingReservationCanceled.js +0 -1
- package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +0 -1
- package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.d.ts +4 -3
- package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +1 -10
- package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +0 -1
- package/lib/chevre/service/reserve/potentialActions/onReservationsCreated.js +0 -1
- package/lib/chevre/service/reserve/searchByOrder.js +7 -3
- package/lib/chevre/service/task/acceptCOAOffer.js +6 -3
- package/lib/chevre/service/task/authorizePayment.js +4 -2
- package/lib/chevre/service/task/cancelPendingReservation.js +4 -2
- package/lib/chevre/service/task/checkMovieTicket.js +4 -2
- package/lib/chevre/service/task/confirmReserveTransaction.d.ts +1 -1
- package/lib/chevre/service/task/confirmReserveTransaction.js +5 -3
- package/lib/chevre/service/task/createAccountingReport.js +4 -8
- package/lib/chevre/service/task/importEventCapacitiesFromCOA.js +4 -2
- package/lib/chevre/service/task/importEventsFromCOA.js +4 -2
- package/lib/chevre/service/task/importOffersFromCOA.js +4 -2
- package/lib/chevre/service/task/invalidatePaymentUrl.js +3 -1
- package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +3 -1
- package/lib/chevre/service/task/onOrderPaymentCompleted.js +3 -1
- package/lib/chevre/service/task/onResourceUpdated/onHasPOSUpdated.js +0 -1
- package/lib/chevre/service/task/pay.js +4 -2
- package/lib/chevre/service/task/payment/invalidatePaymentUrlByTask.d.ts +1 -1
- package/lib/chevre/service/task/payment/payByTask.d.ts +1 -1
- package/lib/chevre/service/task/payment/payByTask.js +6 -7
- package/lib/chevre/service/task/payment/refundByTask.d.ts +1 -1
- package/lib/chevre/service/task/payment/voidPaymentByTask.d.ts +1 -1
- package/lib/chevre/service/task/placeOrder.js +3 -1
- package/lib/chevre/service/task/publishPaymentUrl.js +3 -1
- package/lib/chevre/service/task/refund.js +4 -2
- package/lib/chevre/service/task/returnReserveTransaction.js +4 -2
- package/lib/chevre/service/task/sendEmailMessage.js +5 -3
- package/lib/chevre/service/task/syncResourcesFromCOA.js +4 -2
- package/lib/chevre/service/task/voidPayment.js +4 -2
- package/lib/chevre/service/task/voidReserveTransaction.js +4 -2
- package/lib/chevre/service/task.d.ts +0 -7
- package/lib/chevre/service/transaction/deleteTransaction.js +13 -7
- package/lib/chevre/service/transaction/placeOrder/confirm/factory/result.d.ts +0 -1
- package/lib/chevre/service/transaction/placeOrder/confirm/factory/result.js +7 -17
- package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions/sendEmailMessage.d.ts +7 -1
- package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions/sendEmailMessage.js +0 -1
- package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions.d.ts +7 -1
- package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions.js +0 -1
- package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateInvoiceReferencesOrder.d.ts +1 -1
- package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateMovieTicket.d.ts +1 -1
- package/lib/chevre/service/transaction/placeOrder/confirm/validation.d.ts +5 -4
- package/lib/chevre/service/transaction/placeOrder/confirm.d.ts +5 -1
- package/lib/chevre/service/transaction/placeOrder/confirm.js +43 -48
- package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +0 -1
- package/lib/chevre/service/transaction/placeOrder/start/factory.d.ts +11 -2
- package/lib/chevre/service/transaction/placeOrder/start/factory.js +12 -10
- package/lib/chevre/service/transaction/placeOrder/start/validateStartRequest.d.ts +1 -2
- package/lib/chevre/service/transaction/placeOrder/start/validateStartRequest.js +5 -16
- package/lib/chevre/service/transaction/placeOrder/start.d.ts +3 -4
- package/lib/chevre/service/transaction/placeOrder/start.js +2 -2
- package/lib/chevre/service/transaction/placeOrder/updateAgent.js +0 -1
- package/lib/chevre/service/transaction/placeOrder.d.ts +2 -2
- package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +0 -1
- package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.d.ts +1 -1
- package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +0 -1
- package/lib/chevre/service/transaction/returnOrder/potentialActions/sendEmailMessage.d.ts +1 -1
- package/lib/chevre/service/transaction/returnOrder/potentialActions.d.ts +1 -1
- package/lib/chevre/service/transaction/returnOrder/potentialActions.js +0 -1
- package/lib/chevre/service/transaction/returnOrder/preStart.js +1 -4
- package/lib/chevre/service/transaction/returnOrder.js +1 -1
- package/lib/chevre/service/validation/validateOrder.js +4 -79
- package/lib/chevre/settings.d.ts +0 -55
- package/lib/chevre/settings.js +1 -29
- package/lib/chevre/taskSettings.d.ts +0 -22
- package/lib/chevre/taskSettings.js +1 -7
- package/package.json +2 -2
- package/lib/chevre/credentials/customSearch.d.ts +0 -13
- package/lib/chevre/credentials/customSearch.js +0 -16
- package/lib/chevre/credentials/lineNotify.d.ts +0 -17
- package/lib/chevre/credentials/lineNotify.js +0 -20
- package/lib/chevre/credentials/sendGrid.d.ts +0 -24
- package/lib/chevre/credentials/sendGrid.js +0 -18
- package/lib/chevre/credentials.d.ts +0 -20
- package/lib/chevre/credentials.js +0 -42
|
@@ -8,7 +8,6 @@ const debug_1 = __importDefault(require("debug"));
|
|
|
8
8
|
const moment_1 = __importDefault(require("moment"));
|
|
9
9
|
const errorHandler_1 = require("../../../errorHandler");
|
|
10
10
|
const factory_1 = require("../../../factory");
|
|
11
|
-
// import { Settings } from '../../../settings';
|
|
12
11
|
const factory_2 = require("../../order/placeOrder/factory");
|
|
13
12
|
const orderedItem_1 = require("../../order/placeOrder/factory/orderedItem");
|
|
14
13
|
const result_1 = require("./confirm/factory/result");
|
|
@@ -30,9 +29,16 @@ function processTransactionNotInProgress(transaction) {
|
|
|
30
29
|
// if (resultCustomer === undefined) {
|
|
31
30
|
// throw new factory.errors.Internal('resultCustomer undefined'); // impossible process
|
|
32
31
|
// }
|
|
32
|
+
const { confirmationNumber, orderNumber } = transaction.object;
|
|
33
|
+
// Confirmedの取引であればobjectには必ず存在するはず
|
|
34
|
+
if (typeof confirmationNumber !== 'string' || typeof orderNumber !== 'string'
|
|
35
|
+
|| confirmationNumber === '' || orderNumber === '') {
|
|
36
|
+
throw new factory_1.factory.errors.Internal('confirmationNumber, orderNumber undefined unexpectedly');
|
|
37
|
+
}
|
|
33
38
|
// すでに確定済の場合
|
|
34
39
|
return {
|
|
35
40
|
...transaction.result,
|
|
41
|
+
order: { confirmationNumber, orderNumber },
|
|
36
42
|
customer: resultCustomer
|
|
37
43
|
};
|
|
38
44
|
}
|
|
@@ -99,7 +105,10 @@ function confirm(params, options) {
|
|
|
99
105
|
// authorizeProductOfferActions,
|
|
100
106
|
serialNumbers } = dissolveAuthorizeActions(completedAuthorizeActions);
|
|
101
107
|
// orderInTransactionから検索する(2024-03-04~)
|
|
102
|
-
const acceptedOffers = (await repos.orderInTransaction.
|
|
108
|
+
const acceptedOffers = (await repos.orderInTransaction.findAcceptedOffersWithPriceByOrderNumber({
|
|
109
|
+
orderNumber,
|
|
110
|
+
project: { id: transaction.project.id }
|
|
111
|
+
}))
|
|
103
112
|
.filter(({ serialNumber }) => typeof serialNumber === 'string' && serialNumbers.includes(serialNumber));
|
|
104
113
|
// authorizePaymentActionsからpayTransactionsを参照(2024-06-20~)
|
|
105
114
|
let payTransactions = [];
|
|
@@ -116,7 +125,7 @@ function confirm(params, options) {
|
|
|
116
125
|
// let customer: factory.order.ICustomer = createCustomer({ transaction });
|
|
117
126
|
const customer = await repos.orderInTransaction.findCustomerByOrderNumber({ orderNumber: { $eq: orderNumber } });
|
|
118
127
|
const seller = (0, factory_2.createSeller)({ transaction });
|
|
119
|
-
const { paymentMethods, result, eventId, reservationIds } = createResult({
|
|
128
|
+
const { paymentMethods, placingOrder, result, eventId, reservationIds } = createResult({
|
|
120
129
|
...params,
|
|
121
130
|
orderNumber, transaction,
|
|
122
131
|
acceptPayActions,
|
|
@@ -142,7 +151,7 @@ function confirm(params, options) {
|
|
|
142
151
|
throw new factory_1.factory.errors.NotFound('setting.defaultSenderEmail');
|
|
143
152
|
}
|
|
144
153
|
const { emailMessages, potentialActions } = await (0, potentialActions_1.createPotentialActions)({
|
|
145
|
-
order:
|
|
154
|
+
order: placingOrder, // createEmailMessageでのorder.acceptedOffersへの依存性を排除したのでこちらでよいはず(2024-02-21~)
|
|
146
155
|
customer,
|
|
147
156
|
seller,
|
|
148
157
|
paymentMethods,
|
|
@@ -163,6 +172,7 @@ function confirm(params, options) {
|
|
|
163
172
|
await repos.placeOrder.confirmPlaceOrder({
|
|
164
173
|
typeOf: transaction.typeOf,
|
|
165
174
|
id: transaction.id,
|
|
175
|
+
object: { orderDate: params.result.order.orderDate },
|
|
166
176
|
result: result,
|
|
167
177
|
potentialActions: potentialActions
|
|
168
178
|
});
|
|
@@ -175,9 +185,12 @@ function confirm(params, options) {
|
|
|
175
185
|
}
|
|
176
186
|
throw error;
|
|
177
187
|
}
|
|
178
|
-
const { order } = result;
|
|
188
|
+
// const { order } = result;
|
|
179
189
|
return {
|
|
180
|
-
order
|
|
190
|
+
order: {
|
|
191
|
+
confirmationNumber: placingOrder.confirmationNumber,
|
|
192
|
+
orderNumber: placingOrder.orderNumber
|
|
193
|
+
},
|
|
181
194
|
customer,
|
|
182
195
|
...(typeof code === 'string') ? { code } : undefined,
|
|
183
196
|
...(typeof eventId === 'string') ? { eventId } : undefined,
|
|
@@ -288,7 +301,7 @@ function createResult(params, options) {
|
|
|
288
301
|
const itemOfferedTypeOf = acceptedOffer.itemOffered.typeOf;
|
|
289
302
|
switch (itemOfferedTypeOf) {
|
|
290
303
|
case factory_1.factory.reservationType.EventReservation:
|
|
291
|
-
eventReservationAcceptedOffers.push(acceptedOffer);
|
|
304
|
+
eventReservationAcceptedOffers.push((acceptedOffer));
|
|
292
305
|
break;
|
|
293
306
|
// case factory.permit.PermitType.Permit:
|
|
294
307
|
// productAcceptedOffers.push((acceptedOffer as factory.order.IAcceptedOffer<factory.order.IPermit>));
|
|
@@ -303,18 +316,7 @@ function createResult(params, options) {
|
|
|
303
316
|
eventReservationAcceptedOffers, params.payTransactions, params.customer);
|
|
304
317
|
const { paymentMethods, price } = (0, factory_2.createPaymentMethods)({ authorizePaymentActions: params.authorizePaymentActions });
|
|
305
318
|
const orderedItem = (0, orderedItem_1.acceptedOffers2orderedItem)({
|
|
306
|
-
eventReservationAcceptedOffers
|
|
307
|
-
// productAcceptedOffers,
|
|
308
|
-
// moneyTransferAcceptedOffers
|
|
309
|
-
});
|
|
310
|
-
// 注文作成
|
|
311
|
-
const orderAsResult = (0, result_1.createOrderAsResult)({
|
|
312
|
-
orderNumber: params.orderNumber,
|
|
313
|
-
orderDate: params.result.order.orderDate,
|
|
314
|
-
orderStatus: factory_1.factory.orderStatus.OrderPaymentDue, // 注文作成時のステータスとなる
|
|
315
|
-
// orderedItem,
|
|
316
|
-
// paymentMethods,
|
|
317
|
-
price
|
|
319
|
+
eventReservationAcceptedOffers
|
|
318
320
|
});
|
|
319
321
|
(0, validation_1.validateEventOffers)({
|
|
320
322
|
order: { price },
|
|
@@ -333,18 +335,27 @@ function createResult(params, options) {
|
|
|
333
335
|
});
|
|
334
336
|
(0, validation_1.validatePaymentMethods)({ order: { paymentMethods } }, options);
|
|
335
337
|
// 確認番号を発行
|
|
336
|
-
const { confirmationNumber
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
338
|
+
const { confirmationNumber } = createConfirmationNumber({ transaction });
|
|
339
|
+
// 注文作成
|
|
340
|
+
const orderAsResult = (0, result_1.createOrderAsResult)({
|
|
341
|
+
orderNumber: params.orderNumber,
|
|
342
|
+
orderDate: params.result.order.orderDate,
|
|
343
|
+
price
|
|
340
344
|
});
|
|
341
345
|
orderAsResult.confirmationNumber = confirmationNumber;
|
|
342
|
-
orderAsResult.identifier = identifier;
|
|
343
|
-
orderAsResult.url = url;
|
|
346
|
+
// orderAsResult.identifier = identifier; // discontinue(2026-06-11~)
|
|
347
|
+
// orderAsResult.url = url; // discontinue(2026-06-11~)
|
|
348
|
+
const placingOrder = {
|
|
349
|
+
...orderAsResult,
|
|
350
|
+
confirmationNumber,
|
|
351
|
+
typeOf: factory_1.factory.order.OrderType.Order,
|
|
352
|
+
price,
|
|
353
|
+
priceCurrency: factory_1.factory.priceCurrency.JPY,
|
|
354
|
+
orderStatus: factory_1.factory.orderStatus.OrderPaymentDue
|
|
355
|
+
};
|
|
344
356
|
const authorizeActions = [
|
|
345
357
|
...params.authorizePaymentActions.map(({ id }) => ({ id })),
|
|
346
358
|
...params.authorizeEventServiceOfferActions.map(({ id }) => ({ id })),
|
|
347
|
-
// ...params.authorizeProductOfferActions.map(({ id }) => ({ id }))
|
|
348
359
|
];
|
|
349
360
|
let eventId;
|
|
350
361
|
let reservationIds;
|
|
@@ -356,14 +367,12 @@ function createResult(params, options) {
|
|
|
356
367
|
}
|
|
357
368
|
return {
|
|
358
369
|
paymentMethods,
|
|
370
|
+
placingOrder,
|
|
359
371
|
result: {
|
|
360
|
-
order: orderAsResult,
|
|
361
372
|
authorizeActions, // 追加(2024-01-17~)
|
|
362
373
|
numAcceptedOffers: params.acceptedOffers.length, // 追加(2024-01-17~)
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
// },
|
|
366
|
-
...(typeof params.code === 'string') ? { code: params.code } : undefined
|
|
374
|
+
...(typeof params.code === 'string') ? { code: params.code } : undefined,
|
|
375
|
+
...((!options.disableResultOrder) && { order: orderAsResult }) // support disableResultOrder(2026-06-15~)
|
|
367
376
|
},
|
|
368
377
|
...(typeof eventId === 'string') ? { eventId } : undefined,
|
|
369
378
|
...(Array.isArray(reservationIds)) ? { reservationIds } : undefined
|
|
@@ -441,26 +450,12 @@ function searchAuthorizeActions(params) {
|
|
|
441
450
|
}
|
|
442
451
|
function createConfirmationNumber(params) {
|
|
443
452
|
const confirmationNumber = params.transaction.object.confirmationNumber;
|
|
444
|
-
let url = '';
|
|
445
453
|
// 取引に確認番号が保管されていなければ、確認番号を発行
|
|
446
454
|
if (typeof confirmationNumber !== 'string') {
|
|
447
455
|
// 事前に発行済なはずなので、ありえないフロー
|
|
448
456
|
throw new factory_1.factory.errors.Internal('object.confirmationNumber undefined');
|
|
449
457
|
}
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
url = params.result.order.url;
|
|
454
|
-
}
|
|
455
|
-
else /* istanbul ignore next */ if (typeof params.result.order.url === 'function') {
|
|
456
|
-
/* istanbul ignore next */
|
|
457
|
-
url = params.result.order.url(params.order);
|
|
458
|
-
}
|
|
459
|
-
// 識別子の指定があれば上書き
|
|
460
|
-
const identifier = [
|
|
461
|
-
...(Array.isArray(params.result.order.identifier)) ? params.result.order.identifier : [],
|
|
462
|
-
// 取引に指定があれば追加
|
|
463
|
-
...(Array.isArray(params.transaction.object.identifier)) ? params.transaction.object.identifier : []
|
|
464
|
-
];
|
|
465
|
-
return { confirmationNumber, url, identifier };
|
|
458
|
+
return {
|
|
459
|
+
confirmationNumber,
|
|
460
|
+
};
|
|
466
461
|
}
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.exportTasksById = exportTasksById;
|
|
7
7
|
const moment_1 = __importDefault(require("moment"));
|
|
8
8
|
const factory_1 = require("../../../factory");
|
|
9
|
-
// import { Settings } from '../../../settings';
|
|
10
9
|
const factory_2 = require("./exportTasks/factory");
|
|
11
10
|
/**
|
|
12
11
|
* 取引のタスクを出力します
|
|
@@ -6,5 +6,14 @@ type IVerifiedPassport = factory.waiter.passport.IPassport & {
|
|
|
6
6
|
*/
|
|
7
7
|
identifier: string;
|
|
8
8
|
};
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
type IStartPlaceOrderParams = factory.transaction.placeOrder.IStartParamsWithoutDetail & {
|
|
10
|
+
object: factory.transaction.placeOrder.IStartParamsWithoutDetail['object'] & {
|
|
11
|
+
/**
|
|
12
|
+
* api経由で取引が開始されれば必ず存在するはず
|
|
13
|
+
*/
|
|
14
|
+
clientUser: factory.transaction.placeOrder.IClientUserBeforeStart;
|
|
15
|
+
};
|
|
16
|
+
broker?: factory.order.IBroker;
|
|
17
|
+
};
|
|
18
|
+
declare function createStartParams(params: IStartPlaceOrderParams, expiresInSeconds: number, passport: IVerifiedPassport | undefined, seller: Pick<factory.seller.ISeller, 'id' | 'name' | 'typeOf' | 'project' | 'additionalProperty'>, customerType?: string): factory.transaction.placeOrder.IStartParams;
|
|
19
|
+
export { AGENT_IDENTIFIER_NAME_PASSPORT, createStartParams, IStartPlaceOrderParams };
|
|
@@ -5,20 +5,22 @@ exports.createStartParams = createStartParams;
|
|
|
5
5
|
const factory_1 = require("../../../../factory");
|
|
6
6
|
const AGENT_IDENTIFIER_NAME_PASSPORT = 'passport';
|
|
7
7
|
exports.AGENT_IDENTIFIER_NAME_PASSPORT = AGENT_IDENTIFIER_NAME_PASSPORT;
|
|
8
|
-
function createStartParams(params, expiresInSeconds, passport, seller,
|
|
9
|
-
|
|
8
|
+
function createStartParams(params, expiresInSeconds, passport, seller,
|
|
9
|
+
// broker?: factory.order.IBroker,
|
|
10
|
+
customerType) {
|
|
11
|
+
const { broker } = params;
|
|
12
|
+
// let clientUser: Omit<factory.clientUser.IClientUser, 'scope' | 'scopes'> | undefined;
|
|
10
13
|
let instrument;
|
|
11
14
|
if (typeof params.object.clientUser?.client_id === 'string') {
|
|
12
|
-
const {
|
|
13
|
-
|
|
15
|
+
const { client_id } = params.object.clientUser;
|
|
16
|
+
// const { sub, token_use, iss, exp, iat, version, jti, client_id, username, aud, typ } = params.object.clientUser;
|
|
17
|
+
// clientUser = { sub, token_use, iss, exp, iat, version, jti, client_id, username, aud, typ };
|
|
14
18
|
instrument = { id: client_id, typeOf: factory_1.factory.creativeWorkType.WebApplication };
|
|
15
19
|
}
|
|
16
20
|
const transactionObject = {
|
|
17
|
-
// discontinue
|
|
18
|
-
// ...(typeof
|
|
19
|
-
...(typeof
|
|
20
|
-
...(typeof clientUser?.client_id === 'string') ? { clientUser } : undefined,
|
|
21
|
-
...(typeof params.object?.name === 'string') ? { name: params.object?.name } : undefined,
|
|
21
|
+
// ...(typeof passport?.scope === 'string') ? { passport } : undefined, // discontinue(2026-06-10~)
|
|
22
|
+
// ...(typeof clientUser?.client_id === 'string') ? { clientUser } : undefined, // discontinue(2026-06-10~)
|
|
23
|
+
// ...(typeof params.object?.name === 'string') ? { name: params.object?.name } : undefined, // discontinue(2026-06-11~)
|
|
22
24
|
...(typeof broker?.typeOf === 'string') ? { broker: broker } : undefined,
|
|
23
25
|
...(typeof params.object.customer?.typeOf === 'string') ? { customer: params.object.customer } : undefined,
|
|
24
26
|
...(typeof customerType === 'string') ? { customerType } : undefined
|
|
@@ -36,7 +38,7 @@ function createStartParams(params, expiresInSeconds, passport, seller, broker, c
|
|
|
36
38
|
];
|
|
37
39
|
const agent = {
|
|
38
40
|
...params.agent,
|
|
39
|
-
...(memeberOfPayload !== undefined) ? { memeberOfPayload } : undefined,
|
|
41
|
+
// ...(memeberOfPayload !== undefined) ? { memeberOfPayload } : undefined, // discontinue(2026-06-10~)
|
|
40
42
|
identifier: agentIdentifier
|
|
41
43
|
};
|
|
42
44
|
return {
|
|
@@ -12,7 +12,7 @@ declare function validateStartRequest(params: {
|
|
|
12
12
|
seller: {
|
|
13
13
|
id: string;
|
|
14
14
|
};
|
|
15
|
-
clientUser?:
|
|
15
|
+
clientUser?: factory.transaction.placeOrder.IClientUserBeforeStart;
|
|
16
16
|
/**
|
|
17
17
|
* passportによって決定するカスタマータイプ
|
|
18
18
|
*/
|
|
@@ -31,6 +31,5 @@ declare function validateStartRequest(params: {
|
|
|
31
31
|
}) => Promise<{
|
|
32
32
|
seller: ISeller;
|
|
33
33
|
sellerMakesOffer: factory.seller.IMakesOffer;
|
|
34
|
-
memeberOfPayload?: factory.transaction.placeOrder.IMemberOfPayload;
|
|
35
34
|
}>;
|
|
36
35
|
export { validateStartRequest };
|
|
@@ -104,8 +104,8 @@ function validateStartRequest(params) {
|
|
|
104
104
|
if (iamMember === undefined) {
|
|
105
105
|
throw new factory_1.factory.errors.NotFound(factory_1.factory.role.RoleType.OrganizationRole);
|
|
106
106
|
}
|
|
107
|
-
// メンバーシップトークン検証(2024-01-31~)
|
|
108
|
-
let memeberOfPayload;
|
|
107
|
+
// // メンバーシップトークン検証(2024-01-31~)
|
|
108
|
+
// let memeberOfPayload: factory.transaction.placeOrder.IMemberOfPayload | undefined;
|
|
109
109
|
// 適用メンバーシップについてはproject.makesOfferを参照(2025-01-13~)
|
|
110
110
|
const validMemberProgramIdentifier = projectMakesOffer.validForMemberTier?.isTierOf.identifier;
|
|
111
111
|
if (typeof validMemberProgramIdentifier === 'string') {
|
|
@@ -126,29 +126,18 @@ function validateStartRequest(params) {
|
|
|
126
126
|
if (typeof issuer.tokenSecret !== 'string' || issuer.tokenSecret === '') {
|
|
127
127
|
throw new factory_1.factory.errors.NotFound('issuer.tokenSecret');
|
|
128
128
|
}
|
|
129
|
-
memeberOfPayload =
|
|
129
|
+
// memeberOfPayload =
|
|
130
|
+
await verifyMembershipToken({
|
|
130
131
|
secret: issuer.tokenSecret,
|
|
131
132
|
// issuer: issuer.identifier,
|
|
132
133
|
issuer: issuer.url, // identifier -> url(2025-05-11~)
|
|
133
134
|
...(typeof params.memberOfToken === 'string') ? { token: params.memberOfToken } : undefined
|
|
134
135
|
});
|
|
135
136
|
}
|
|
136
|
-
// discontinue(2025-01-14~)
|
|
137
|
-
// if (Array.isArray(iamMember.member.member)) {
|
|
138
|
-
// const verifySecret = iamMember.member.member[0]?.memberOf?.secret; // ひとまず1種類のメンバーシップのみ対応
|
|
139
|
-
// const verifyIssuer = iamMember.member.member[0]?.memberOf?.issuer; // ひとまず1種類のメンバーシップのみ対応
|
|
140
|
-
// if (typeof verifySecret === 'string') {
|
|
141
|
-
// memeberOfPayload = await verifyMembershipToken({
|
|
142
|
-
// secret: verifySecret,
|
|
143
|
-
// ...(typeof params.memberOfToken === 'string') ? { token: params.memberOfToken } : undefined,
|
|
144
|
-
// ...(typeof verifyIssuer === 'string') ? { issuer: verifyIssuer } : undefined
|
|
145
|
-
// });
|
|
146
|
-
// }
|
|
147
|
-
// }
|
|
148
137
|
return {
|
|
149
138
|
sellerMakesOffer,
|
|
150
139
|
seller,
|
|
151
|
-
...(memeberOfPayload !== undefined) ? { memeberOfPayload } : undefined
|
|
140
|
+
// ...(memeberOfPayload !== undefined) ? { memeberOfPayload } : undefined
|
|
152
141
|
};
|
|
153
142
|
};
|
|
154
143
|
}
|
|
@@ -5,7 +5,7 @@ import type { PassportRepo } from '../../../repo/passport';
|
|
|
5
5
|
import type { ProjectMakesOfferRepo } from '../../../repo/projectMakesOffer';
|
|
6
6
|
import type { SellerRepo } from '../../../repo/seller';
|
|
7
7
|
import type { IStartedPlaceOrder, PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
|
|
8
|
-
import {
|
|
8
|
+
import { IStartPlaceOrderParams } from './start/factory';
|
|
9
9
|
interface IStartOperationRepos {
|
|
10
10
|
issuer: IssuerRepo;
|
|
11
11
|
member: MemberRepo;
|
|
@@ -16,12 +16,11 @@ interface IStartOperationRepos {
|
|
|
16
16
|
placeOrder: PlaceOrderRepo;
|
|
17
17
|
}
|
|
18
18
|
type IStartOperation<T> = (repos: IStartOperationRepos) => Promise<T>;
|
|
19
|
-
type IStartParams = PlaceOrderFactory.IStartParams;
|
|
20
19
|
interface IStartOptions {
|
|
21
20
|
lockPassport: boolean;
|
|
22
21
|
}
|
|
23
22
|
/**
|
|
24
23
|
* 取引開始
|
|
25
24
|
*/
|
|
26
|
-
declare function start(params:
|
|
27
|
-
export { start };
|
|
25
|
+
declare function start(params: IStartPlaceOrderParams, options: IStartOptions): IStartOperation<IStartedPlaceOrder>;
|
|
26
|
+
export { start, IStartPlaceOrderParams };
|
|
@@ -10,7 +10,7 @@ const validateStartRequest_1 = require("./start/validateStartRequest");
|
|
|
10
10
|
function start(params, options) {
|
|
11
11
|
return async (repos) => {
|
|
12
12
|
const { passport, customerType } = await repos.passport.validatePassportTokenIfExist(params);
|
|
13
|
-
const {
|
|
13
|
+
const { sellerMakesOffer, seller } = await (0, validateStartRequest_1.validateStartRequest)({
|
|
14
14
|
project: { id: params.project.id },
|
|
15
15
|
seller: { id: params.seller.id },
|
|
16
16
|
...(typeof passport?.scope === 'string') ? { customerType } : undefined,
|
|
@@ -22,7 +22,7 @@ function start(params, options) {
|
|
|
22
22
|
throw new factory_1.factory.errors.NotFound('eligibleTransactionDuration.maxValue');
|
|
23
23
|
}
|
|
24
24
|
// 取引ファクトリーで新しい進行中取引オブジェクトを作成
|
|
25
|
-
const startParams = (0, factory_2.createStartParams)(params, expiresInSeconds, passport, seller,
|
|
25
|
+
const startParams = (0, factory_2.createStartParams)(params, expiresInSeconds, passport, seller, customerType);
|
|
26
26
|
let transaction;
|
|
27
27
|
// lock passport(2024-07-05~)
|
|
28
28
|
if (options.lockPassport && passport !== undefined) {
|
|
@@ -4,7 +4,6 @@ exports.updateAgent = updateAgent;
|
|
|
4
4
|
const google_libphonenumber_1 = require("google-libphonenumber");
|
|
5
5
|
const factory_1 = require("../../../factory");
|
|
6
6
|
const issueOrderNumberIfNotExist_1 = require("./issueOrderNumberIfNotExist");
|
|
7
|
-
// import { Settings } from '../settings';
|
|
8
7
|
// export type ITransactionOperation<T> = (repos: { transaction: TransactionRepo }) => Promise<T>;
|
|
9
8
|
function fixCustomer(params) {
|
|
10
9
|
return async (repos) => {
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
import { POINT_AWARD_IDENTIFIER_NAME } from '../../factory/order';
|
|
5
5
|
import { confirm } from './placeOrder/confirm';
|
|
6
6
|
import { exportTasksById } from './placeOrder/exportTasksById';
|
|
7
|
-
import { start } from './placeOrder/start';
|
|
7
|
+
import { start, IStartPlaceOrderParams } from './placeOrder/start';
|
|
8
8
|
import { updateAgent } from './placeOrder/updateAgent';
|
|
9
|
-
export { confirm, POINT_AWARD_IDENTIFIER_NAME, start, exportTasksById, updateAgent };
|
|
9
|
+
export { confirm, POINT_AWARD_IDENTIFIER_NAME, start, IStartPlaceOrderParams, exportTasksById, updateAgent };
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.createTasks = createTasks;
|
|
7
7
|
const moment_1 = __importDefault(require("moment"));
|
|
8
8
|
const factory_1 = require("../../../../factory");
|
|
9
|
-
// import { Settings } from '../../../../settings';
|
|
10
9
|
/**
|
|
11
10
|
* 取引のタスクを作成する
|
|
12
11
|
*/
|
package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { factory } from '../../../../factory';
|
|
2
2
|
import type { ISetting } from '../../../../repo/setting';
|
|
3
3
|
export declare function createReturnPaymentMethodActions(params: {
|
|
4
|
-
order: Pick<factory.order.IOrder, 'confirmationNumber' | '
|
|
4
|
+
order: Pick<factory.order.IOrder, 'confirmationNumber' | 'customer' | 'orderDate' | 'orderNumber' | 'orderStatus' | 'orderedItem' | 'paymentMethods' | 'price' | 'priceCurrency' | 'seller' | 'typeOf'>;
|
|
5
5
|
returnOrderActionParams?: factory.transaction.returnOrder.IReturnOrderActionParams;
|
|
6
6
|
transaction: Pick<factory.transaction.returnOrder.ITransaction, 'object'>;
|
|
7
7
|
}, setting: Pick<ISetting, 'defaultSenderEmail'>): Promise<{
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createReturnPaymentMethodActions = createReturnPaymentMethodActions;
|
|
4
4
|
const emailMessageBuilder_1 = require("../../../../emailMessageBuilder");
|
|
5
5
|
const factory_1 = require("../../../../factory");
|
|
6
|
-
// import { Settings } from '../../../../settings';
|
|
7
6
|
async function createReturnInvoicePotentialActions(params,
|
|
8
7
|
// settings: Settings
|
|
9
8
|
setting) {
|
|
@@ -2,7 +2,7 @@ import { factory } from '../../../../factory';
|
|
|
2
2
|
import type { ISetting } from '../../../../repo/setting';
|
|
3
3
|
type IPotentialSendEmailMessageAction = factory.action.transfer.returnAction.order.IPotentialSendEmailMessageAction;
|
|
4
4
|
export declare function createSendEmailMessaegActionsOnReturn(params: {
|
|
5
|
-
order: Pick<factory.order.IOrder, 'confirmationNumber' | '
|
|
5
|
+
order: Pick<factory.order.IOrder, 'confirmationNumber' | 'customer' | 'orderDate' | 'orderNumber' | 'orderStatus' | 'orderedItem' | 'paymentMethods' | 'price' | 'priceCurrency' | 'seller' | 'typeOf'>;
|
|
6
6
|
returnOrderActionParams?: factory.transaction.returnOrder.IReturnOrderActionParams;
|
|
7
7
|
emailMessageOnOrderReturned?: factory.creativeWork.message.email.ICreativeWork;
|
|
8
8
|
}, setting: Pick<ISetting, 'defaultSenderEmail'>): Promise<{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { factory } from '../../../factory';
|
|
2
2
|
import type { ISetting } from '../../../repo/setting';
|
|
3
|
-
type IReturningOrder4potentialActions = Pick<factory.order.IOrder, 'confirmationNumber' | 'customer' | '
|
|
3
|
+
type IReturningOrder4potentialActions = Pick<factory.order.IOrder, 'confirmationNumber' | 'customer' | 'orderDate' | 'orderNumber' | 'orderStatus' | 'orderedItem' | 'paymentMethods' | 'price' | 'priceCurrency' | 'project' | 'seller' | 'typeOf'>;
|
|
4
4
|
declare function createPotentialActions(params: {
|
|
5
5
|
dateReturned: Date;
|
|
6
6
|
orders: IReturningOrder4potentialActions[];
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createPotentialActions = createPotentialActions;
|
|
4
4
|
const factory_1 = require("../../../factory");
|
|
5
|
-
// import { Settings } from '../../../settings';
|
|
6
5
|
const returnPaymentMethod_1 = require("./potentialActions/returnPaymentMethod");
|
|
7
6
|
const sendEmailMessage_1 = require("./potentialActions/sendEmailMessage");
|
|
8
7
|
async function createPotentialActions(params,
|
|
@@ -141,13 +141,10 @@ function fixOrders(params) {
|
|
|
141
141
|
const eventIds = await repos.acceptedOffer.distinctValues({
|
|
142
142
|
orderNumber: { $in: [params.object.order[0].orderNumber] }
|
|
143
143
|
}, 'acceptedOffers.itemOffered.reservationFor.id');
|
|
144
|
-
// const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumbers({
|
|
145
|
-
// orderNumber: { $in: [params.object.order[0].orderNumber] }
|
|
146
|
-
// });
|
|
147
144
|
const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
|
|
148
145
|
orderNumber: { $eq: params.object.order[0].orderNumber },
|
|
149
146
|
project: { id: { $eq: params.project.id } }
|
|
150
|
-
});
|
|
147
|
+
}, { noName: true });
|
|
151
148
|
return { acceptedOffers, eventIds, offerIds, orders };
|
|
152
149
|
};
|
|
153
150
|
}
|
|
@@ -108,7 +108,7 @@ function confirm(params) {
|
|
|
108
108
|
orderNumbers: [transaction.object.order[0].orderNumber]
|
|
109
109
|
}, {
|
|
110
110
|
inclusion: [
|
|
111
|
-
'confirmationNumber', 'customer', '
|
|
111
|
+
'confirmationNumber', 'customer', 'orderDate', 'orderNumber', 'orderStatus',
|
|
112
112
|
'orderedItem', 'paymentMethods', 'price', 'priceCurrency', 'project', 'seller', 'typeOf'
|
|
113
113
|
]
|
|
114
114
|
});
|
|
@@ -10,47 +10,6 @@ const factory_1 = require("../../factory");
|
|
|
10
10
|
const factory_2 = require("../offer/event/authorize/factory");
|
|
11
11
|
// import { acceptedOffers2amount as acceptedOffers2amount4product } from '../offer/product/factory';
|
|
12
12
|
const validateMovieTicket_1 = require("../transaction/placeOrder/confirm/validation/validateMovieTicket");
|
|
13
|
-
// const debug = createDebug('chevre-domain:service:validation');
|
|
14
|
-
// type ICreatingCheckEventTask = Pick<
|
|
15
|
-
// factory.task.checkResource.IAttributes,
|
|
16
|
-
// 'data' | 'executionResults' | 'name' | 'numberOfTried' | 'project' | 'remainingNumberOfTries' | 'runsAt' | 'status' | 'description'
|
|
17
|
-
// > & {
|
|
18
|
-
// description: string;
|
|
19
|
-
// };
|
|
20
|
-
// function createCheckEventTasks(params: {
|
|
21
|
-
// order: Pick<factory.order.IOrder, 'orderNumber' | 'typeOf'>;
|
|
22
|
-
// project: { id: string };
|
|
23
|
-
// reservationForIds: string[];
|
|
24
|
-
// }): ICreatingCheckEventTask[] {
|
|
25
|
-
// const { order, project, reservationForIds } = params;
|
|
26
|
-
// const runsAt = new Date();
|
|
27
|
-
// return reservationForIds.map((reservationForId) => {
|
|
28
|
-
// const object: factory.task.checkResource.IResourceAsEvent = { id: reservationForId, typeOf: factory.eventType.ScreeningEvent };
|
|
29
|
-
// const data: factory.task.checkResource.IData = {
|
|
30
|
-
// object,
|
|
31
|
-
// project: { id: project.id, typeOf: factory.organizationType.Project },
|
|
32
|
-
// typeOf: factory.actionType.CheckAction
|
|
33
|
-
// };
|
|
34
|
-
// const description: string = util.format(
|
|
35
|
-
// '%s:%s:%s:%s',
|
|
36
|
-
// order.typeOf,
|
|
37
|
-
// order.orderNumber,
|
|
38
|
-
// factory.eventType.ScreeningEvent,
|
|
39
|
-
// reservationForId
|
|
40
|
-
// );
|
|
41
|
-
// return {
|
|
42
|
-
// description,
|
|
43
|
-
// project: { id: project.id, typeOf: factory.organizationType.Project },
|
|
44
|
-
// name: factory.taskName.CheckResource,
|
|
45
|
-
// status: factory.taskStatus.Ready,
|
|
46
|
-
// runsAt,
|
|
47
|
-
// remainingNumberOfTries: 3,
|
|
48
|
-
// numberOfTried: 0,
|
|
49
|
-
// executionResults: [],
|
|
50
|
-
// data
|
|
51
|
-
// };
|
|
52
|
-
// });
|
|
53
|
-
// }
|
|
54
13
|
function validateOrder(params) {
|
|
55
14
|
return async (repos) => {
|
|
56
15
|
const order = await repos.order.projectFieldsByOrderNumber({
|
|
@@ -63,7 +22,7 @@ function validateOrder(params) {
|
|
|
63
22
|
const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
|
|
64
23
|
orderNumber: { $eq: params.orderNumber },
|
|
65
24
|
project: { id: { $eq: params.project.id } }
|
|
66
|
-
});
|
|
25
|
+
}, { noName: true });
|
|
67
26
|
let payTransactions = [];
|
|
68
27
|
if (order.paymentMethods.length > 0) {
|
|
69
28
|
payTransactions = await repos.assetTransaction.search({
|
|
@@ -101,14 +60,8 @@ function validateOrder(params) {
|
|
|
101
60
|
throw new Error(`invalid acceptedOffer.priceSpecification.priceComponent [${typeof priceSpecification.priceComponent}]`);
|
|
102
61
|
}
|
|
103
62
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
.isAfter((0, moment_1.default)('2023-09-30T15:00:00Z'))
|
|
107
|
-
// || typeOf !== factory.permit.PermitType.Permit
|
|
108
|
-
) {
|
|
109
|
-
if (typeof serialNumber !== 'string' || serialNumber.length === 0) {
|
|
110
|
-
throw new Error(`invalid acceptedOffer.serialNumber [${typeof serialNumber}]`);
|
|
111
|
-
}
|
|
63
|
+
if (typeof serialNumber !== 'string' || serialNumber.length === 0) {
|
|
64
|
+
throw new Error(`invalid acceptedOffer.serialNumber [${typeof serialNumber}]`);
|
|
112
65
|
}
|
|
113
66
|
});
|
|
114
67
|
let reservationForIds = [];
|
|
@@ -176,21 +129,8 @@ function validateOrder(params) {
|
|
|
176
129
|
}
|
|
177
130
|
break;
|
|
178
131
|
}
|
|
179
|
-
// case factory.permit.PermitType.Permit: {
|
|
180
|
-
// numOrderedItemExpected = acceptedOffers.length;
|
|
181
|
-
// const permitAcceptedOffers = acceptedOffers as factory.order.IAcceptedOffer<factory.order.IPermit>[];
|
|
182
|
-
// priceExpected = acceptedOffers2amount4product({
|
|
183
|
-
// acceptedOffers: permitAcceptedOffers
|
|
184
|
-
// });
|
|
185
|
-
// break;
|
|
186
|
-
// }
|
|
187
|
-
// case factory.actionType.MoneyTransfer:
|
|
188
|
-
// break;
|
|
189
132
|
default:
|
|
190
|
-
|
|
191
|
-
.isAfter((0, moment_1.default)('2024-02-01T15:00:00Z'))) {
|
|
192
|
-
throw new Error(`invalid itemOfferedTypeOf [${itemOfferedTypeOf}]`);
|
|
193
|
-
}
|
|
133
|
+
throw new Error(`invalid itemOfferedTypeOf [${itemOfferedTypeOf}]`);
|
|
194
134
|
}
|
|
195
135
|
// orderedItem検証
|
|
196
136
|
if (order.orderedItem.length !== numOrderedItemExpected) {
|
|
@@ -225,20 +165,5 @@ function validateOrder(params) {
|
|
|
225
165
|
throw new Error(`invalid ticketIdentifiers.length:${reservationReservedTicketIdentifiers.length} [expected:${acceptedOffers.length}]`);
|
|
226
166
|
}
|
|
227
167
|
}
|
|
228
|
-
// useMongoAsStockHolderProjectsの場合のイベント検証タスク作成を廃止(もう十分検証したので)(2025-07-11~)
|
|
229
|
-
// add check event task(2025-05-01~)
|
|
230
|
-
// const setting = <Pick<ISetting, 'useMongoAsStockHolderProjects'> | null>
|
|
231
|
-
// await repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['useMongoAsStockHolderProjects']);
|
|
232
|
-
// const useMongoAsStockHolderProjects = setting?.useMongoAsStockHolderProjects;
|
|
233
|
-
// if (Array.isArray(useMongoAsStockHolderProjects) && useMongoAsStockHolderProjects.includes(params.project.id)) {
|
|
234
|
-
// const creatingCheckResourceTask = createCheckEventTasks({
|
|
235
|
-
// order: { orderNumber: order.orderNumber, typeOf: factory.order.OrderType.Order },
|
|
236
|
-
// project: { id: params.project.id },
|
|
237
|
-
// reservationForIds
|
|
238
|
-
// });
|
|
239
|
-
// if (creatingCheckResourceTask.length > 0) {
|
|
240
|
-
// await repos.task.saveMany(creatingCheckResourceTask, { emitImmediately: true });
|
|
241
|
-
// }
|
|
242
|
-
// }
|
|
243
168
|
};
|
|
244
169
|
}
|
package/lib/chevre/settings.d.ts
CHANGED
|
@@ -1,58 +1,3 @@
|
|
|
1
|
-
interface ISurfrockSettings {
|
|
2
|
-
/**
|
|
3
|
-
* 着券時タイムアウト
|
|
4
|
-
*/
|
|
5
|
-
timeout: number;
|
|
6
|
-
/**
|
|
7
|
-
* 認証時タイムアウト
|
|
8
|
-
*/
|
|
9
|
-
timeoutCheck: number;
|
|
10
|
-
/**
|
|
11
|
-
* 決済と返金の最小間隔(ms)
|
|
12
|
-
*/
|
|
13
|
-
minIntervalBetweenPayAndRefund: number;
|
|
14
|
-
/**
|
|
15
|
-
* surfrockクライアント認証情報保管期限
|
|
16
|
-
* 0の場合、保管しない
|
|
17
|
-
*/
|
|
18
|
-
credentialsExpireInSeconds?: number;
|
|
19
|
-
}
|
|
20
|
-
interface IOptions {
|
|
21
|
-
abortedTasksWithoutReport: string[];
|
|
22
|
-
numTryConfirmReserveTransaction: number;
|
|
23
|
-
deliverOrderLimit: number;
|
|
24
|
-
coa: {
|
|
25
|
-
timeout: number;
|
|
26
|
-
};
|
|
27
|
-
gmo: {
|
|
28
|
-
timeout: number;
|
|
29
|
-
timeoutBackground: number;
|
|
30
|
-
};
|
|
31
|
-
movieticketReserve: ISurfrockSettings;
|
|
32
|
-
useExperimentalFeature: boolean;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* domain settings
|
|
36
|
-
*/
|
|
37
|
-
declare class Settings {
|
|
38
|
-
readonly abortedTasksWithoutReport: string[];
|
|
39
|
-
readonly numTryConfirmReserveTransaction: number;
|
|
40
|
-
readonly deliverOrderLimit: number;
|
|
41
|
-
readonly coa: {
|
|
42
|
-
timeout: number;
|
|
43
|
-
};
|
|
44
|
-
readonly gmo: {
|
|
45
|
-
timeout: number;
|
|
46
|
-
timeoutBackground: number;
|
|
47
|
-
};
|
|
48
|
-
readonly movieticketReserve: ISurfrockSettings;
|
|
49
|
-
readonly useExperimentalFeature: boolean;
|
|
50
|
-
/**
|
|
51
|
-
* 通知設定
|
|
52
|
-
*/
|
|
53
|
-
constructor(options: IOptions);
|
|
54
|
-
}
|
|
55
1
|
export declare const MONGO_MAX_TIME_MS: number;
|
|
56
2
|
export declare const MONGO_READ_PREFERENCE: string;
|
|
57
3
|
export declare const MONGO_AUTO_INDEX: boolean;
|
|
58
|
-
export { Settings };
|