@chevre/domain 21.2.0-alpha.5 → 21.2.0-alpha.51
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/example/src/chevre/aggregation/aggregateSystem.ts +58 -31
- package/example/src/chevre/countDelayedTasks.ts +17 -0
- package/example/src/chevre/countDelayedTransactions.ts +60 -0
- package/example/src/chevre/countMoneyTransferTransaction.ts +36 -0
- package/example/src/chevre/createManyEventsIfNotExist.ts +4 -1
- package/example/src/chevre/migrateOrderAdditionalProperties.ts +85 -0
- package/example/src/chevre/migrateStockHolderKeys.ts +89 -0
- package/example/src/chevre/saveTasks.ts +13 -10
- package/example/src/chevre/searchAbortedTasks.ts +36 -0
- package/example/src/chevre/searchSendEmailActions.ts +44 -0
- package/example/src/chevre/task/executeTasks.ts +26 -0
- package/example/src/chevre/transaction/findCreditCard.ts +1 -1
- package/example/src/chevre/transaction/orderMembershipService.ts +1 -1
- package/example/src/chevre/transaction/startExportTasks.ts +20 -0
- package/example/src/chevre/updateTransaction.ts +1 -1
- package/lib/chevre/credentials.d.ts +1 -0
- package/lib/chevre/credentials.js +2 -1
- package/lib/chevre/eventEmitter/assetTransaction.d.ts +21 -0
- package/lib/chevre/eventEmitter/assetTransaction.js +25 -0
- package/lib/chevre/eventEmitter/task.d.ts +18 -0
- package/lib/chevre/eventEmitter/task.js +25 -0
- package/lib/chevre/eventEmitter/transaction.d.ts +21 -0
- package/lib/chevre/eventEmitter/transaction.js +25 -0
- package/lib/chevre/eventEmitter.d.ts +4 -0
- package/lib/chevre/eventEmitter.js +9 -0
- package/lib/chevre/index.d.ts +3 -2
- package/lib/chevre/index.js +5 -3
- package/lib/chevre/repo/account.js +0 -4
- package/lib/chevre/repo/accountTitle.js +0 -4
- package/lib/chevre/repo/accountTransaction.d.ts +3 -11
- package/lib/chevre/repo/accountTransaction.js +1 -58
- package/lib/chevre/repo/accountingReport.js +0 -4
- package/lib/chevre/repo/action.d.ts +12 -1
- package/lib/chevre/repo/action.js +9 -29
- package/lib/chevre/repo/additionalProperty.js +0 -4
- package/lib/chevre/repo/aggregation.js +0 -4
- package/lib/chevre/repo/assetTransaction.d.ts +22 -7
- package/lib/chevre/repo/assetTransaction.js +173 -55
- package/lib/chevre/repo/categoryCode.js +0 -4
- package/lib/chevre/repo/code.js +0 -4
- package/lib/chevre/repo/comment.d.ts +4 -1
- package/lib/chevre/repo/comment.js +20 -9
- package/lib/chevre/repo/confirmationNumber.d.ts +0 -1
- package/lib/chevre/repo/confirmationNumber.js +3 -15
- package/lib/chevre/repo/creativeWork.d.ts +1 -3
- package/lib/chevre/repo/creativeWork.js +0 -4
- package/lib/chevre/repo/customer.js +0 -4
- package/lib/chevre/repo/emailMessage.d.ts +1 -27
- package/lib/chevre/repo/emailMessage.js +0 -4
- package/lib/chevre/repo/event.d.ts +5 -1
- package/lib/chevre/repo/event.js +0 -4
- package/lib/chevre/repo/member.js +0 -4
- package/lib/chevre/repo/merchantReturnPolicy.d.ts +1 -3
- package/lib/chevre/repo/merchantReturnPolicy.js +0 -4
- package/lib/chevre/repo/mongoose/schemas/account.d.ts +5 -2
- package/lib/chevre/repo/mongoose/schemas/account.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/accountTitle.d.ts +30 -3
- package/lib/chevre/repo/mongoose/schemas/accountTitle.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/accountTransaction.d.ts +32 -3
- package/lib/chevre/repo/mongoose/schemas/accountTransaction.js +2 -1
- package/lib/chevre/repo/mongoose/schemas/accountingReport.d.ts +14 -3
- package/lib/chevre/repo/mongoose/schemas/accountingReport.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/action.d.ts +44 -3
- package/lib/chevre/repo/mongoose/schemas/action.js +2 -1
- package/lib/chevre/repo/mongoose/schemas/additionalProperty.d.ts +18 -3
- package/lib/chevre/repo/mongoose/schemas/additionalProperty.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/aggregation.d.ts +5 -2
- package/lib/chevre/repo/mongoose/schemas/aggregation.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/assetTransaction.d.ts +45 -3
- package/lib/chevre/repo/mongoose/schemas/assetTransaction.js +3 -1
- package/lib/chevre/repo/mongoose/schemas/authorization.d.ts +20 -3
- package/lib/chevre/repo/mongoose/schemas/authorization.js +2 -1
- package/lib/chevre/repo/mongoose/schemas/categoryCode.d.ts +26 -3
- package/lib/chevre/repo/mongoose/schemas/categoryCode.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/comments.d.ts +28 -3
- package/lib/chevre/repo/mongoose/schemas/comments.js +2 -1
- package/lib/chevre/repo/mongoose/schemas/creativeWork.d.ts +44 -3
- package/lib/chevre/repo/mongoose/schemas/creativeWork.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/customer.d.ts +26 -3
- package/lib/chevre/repo/mongoose/schemas/customer.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/emailMessages.d.ts +22 -3
- package/lib/chevre/repo/mongoose/schemas/emailMessages.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/event.d.ts +72 -3
- package/lib/chevre/repo/mongoose/schemas/event.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/member.d.ts +14 -3
- package/lib/chevre/repo/mongoose/schemas/member.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.d.ts +22 -3
- package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/offer.d.ts +66 -3
- package/lib/chevre/repo/mongoose/schemas/offer.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/offerCatalog.d.ts +28 -3
- package/lib/chevre/repo/mongoose/schemas/offerCatalog.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/order.d.ts +52 -3
- package/lib/chevre/repo/mongoose/schemas/order.js +2 -1
- package/lib/chevre/repo/mongoose/schemas/ownershipInfo.d.ts +26 -3
- package/lib/chevre/repo/mongoose/schemas/ownershipInfo.js +2 -1
- package/lib/chevre/repo/mongoose/schemas/place.d.ts +50 -3
- package/lib/chevre/repo/mongoose/schemas/place.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/priceSpecification.d.ts +30 -3
- package/lib/chevre/repo/mongoose/schemas/priceSpecification.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/product.d.ts +32 -3
- package/lib/chevre/repo/mongoose/schemas/product.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/project.d.ts +24 -3
- package/lib/chevre/repo/mongoose/schemas/project.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/reservation.d.ts +62 -3
- package/lib/chevre/repo/mongoose/schemas/reservation.js +2 -1
- package/lib/chevre/repo/mongoose/schemas/role.d.ts +12 -3
- package/lib/chevre/repo/mongoose/schemas/role.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/seller.d.ts +32 -3
- package/lib/chevre/repo/mongoose/schemas/seller.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/serviceOutput.d.ts +12 -3
- package/lib/chevre/repo/mongoose/schemas/serviceOutput.js +2 -1
- package/lib/chevre/repo/mongoose/schemas/task.d.ts +31 -3
- package/lib/chevre/repo/mongoose/schemas/task.js +3 -1
- package/lib/chevre/repo/mongoose/schemas/telemetry.d.ts +22 -3
- package/lib/chevre/repo/mongoose/schemas/telemetry.js +1 -0
- package/lib/chevre/repo/mongoose/schemas/transaction.d.ts +41 -3
- package/lib/chevre/repo/mongoose/schemas/transaction.js +3 -1
- package/lib/chevre/repo/mongoose/schemas/trip.d.ts +12 -3
- package/lib/chevre/repo/mongoose/schemas/trip.js +1 -0
- package/lib/chevre/repo/offer.js +0 -5
- package/lib/chevre/repo/offerCatalog.js +0 -4
- package/lib/chevre/repo/order.d.ts +25 -0
- package/lib/chevre/repo/order.js +5 -4
- package/lib/chevre/repo/ownershipInfo.js +0 -4
- package/lib/chevre/repo/permit.js +0 -4
- package/lib/chevre/repo/place.d.ts +5 -1
- package/lib/chevre/repo/place.js +1 -10
- package/lib/chevre/repo/priceSpecification.js +0 -4
- package/lib/chevre/repo/product.js +0 -4
- package/lib/chevre/repo/project.js +0 -4
- package/lib/chevre/repo/reservation.js +0 -4
- package/lib/chevre/repo/role.js +0 -4
- package/lib/chevre/repo/seller.js +0 -4
- package/lib/chevre/repo/serviceOutput.js +0 -4
- package/lib/chevre/repo/stockHolder.js +30 -0
- package/lib/chevre/repo/task.d.ts +38 -2
- package/lib/chevre/repo/task.js +96 -10
- package/lib/chevre/repo/telemetry.js +0 -4
- package/lib/chevre/repo/transaction.d.ts +23 -3
- package/lib/chevre/repo/transaction.js +174 -58
- package/lib/chevre/repo/trip.js +0 -4
- package/lib/chevre/service/aggregation/system.d.ts +67 -22
- package/lib/chevre/service/aggregation/system.js +101 -89
- package/lib/chevre/service/assetTransaction/cancelReservation.js +1 -5
- package/lib/chevre/service/assetTransaction/moneyTransfer.js +1 -1
- package/lib/chevre/service/assetTransaction/pay.js +10 -4
- package/lib/chevre/service/assetTransaction/refund.js +1 -1
- package/lib/chevre/service/assetTransaction/registerService.js +1 -2
- package/lib/chevre/service/assetTransaction/reserve.js +1 -1
- package/lib/chevre/service/assetTransaction.d.ts +6 -2
- package/lib/chevre/service/assetTransaction.js +9 -5
- package/lib/chevre/service/notification/factory.js +2 -2
- package/lib/chevre/service/notification.d.ts +3 -1
- package/lib/chevre/service/notification.js +41 -7
- package/lib/chevre/service/offer/event/voidTransaction.d.ts +2 -0
- package/lib/chevre/service/offer/event/voidTransaction.js +17 -1
- package/lib/chevre/service/offer.js +1 -1
- package/lib/chevre/service/order/deleteOrder.js +8 -1
- package/lib/chevre/service/order/onOrderStatusChanged.js +1 -1
- package/lib/chevre/service/order/placeOrder.js +1 -1
- package/lib/chevre/service/order/returnOrder.js +1 -5
- package/lib/chevre/service/order/sendOrder.js +1 -1
- package/lib/chevre/service/payment/any/onPaid.js +1 -1
- package/lib/chevre/service/payment/any/onRefund.js +1 -1
- package/lib/chevre/service/payment/any.js +60 -10
- package/lib/chevre/service/payment/movieTicket/validation.d.ts +6 -2
- package/lib/chevre/service/payment/movieTicket/validation.js +12 -25
- package/lib/chevre/service/payment/movieTicket.d.ts +4 -1
- package/lib/chevre/service/payment/movieTicket.js +4 -3
- package/lib/chevre/service/product.js +1 -5
- package/lib/chevre/service/report/telemetry.d.ts +0 -11
- package/lib/chevre/service/report/telemetry.js +21 -24
- package/lib/chevre/service/reserve/cancelReservation.js +0 -2
- package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.d.ts +0 -3
- package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +20 -20
- package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +2 -3
- package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +2 -31
- package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +2 -3
- package/lib/chevre/service/reserve/useReservation.js +1 -8
- package/lib/chevre/service/task/confirmRegisterServiceTransaction.js +1 -1
- package/lib/chevre/service/task/returnPayTransaction.js +1 -5
- package/lib/chevre/service/task/voidReserveTransaction.js +3 -1
- package/lib/chevre/service/task.d.ts +9 -0
- package/lib/chevre/service/task.js +43 -4
- package/lib/chevre/service/transaction/moneyTransfer.js +4 -4
- package/lib/chevre/service/transaction/orderProgramMembership.js +2 -1
- package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +30 -29
- package/lib/chevre/service/transaction/placeOrder.js +1 -5
- package/lib/chevre/service/transaction/placeOrderInProgress/factory.js +1 -1
- package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions/moneyTransfer.d.ts +1 -0
- package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions/moneyTransfer.js +1 -1
- package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions/registerService.d.ts +1 -0
- package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions/registerService.js +1 -1
- package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions.d.ts +1 -0
- package/lib/chevre/service/transaction/placeOrderInProgress/result/acceptedOffers.d.ts +3 -0
- package/lib/chevre/service/transaction/placeOrderInProgress/result/acceptedOffers.js +7 -3
- package/lib/chevre/service/transaction/placeOrderInProgress/result.d.ts +1 -0
- package/lib/chevre/service/transaction/placeOrderInProgress/result.js +2 -2
- package/lib/chevre/service/transaction/placeOrderInProgress/validation/validateMovieTicket.d.ts +1 -1
- package/lib/chevre/service/transaction/placeOrderInProgress/validation/validateMovieTicket.js +2 -2
- package/lib/chevre/service/transaction/placeOrderInProgress/validation.d.ts +2 -1
- package/lib/chevre/service/transaction/placeOrderInProgress/validation.js +23 -17
- package/lib/chevre/service/transaction/placeOrderInProgress.d.ts +1 -0
- package/lib/chevre/service/transaction/placeOrderInProgress.js +17 -10
- package/lib/chevre/service/transaction/returnOrder.js +1 -5
- package/lib/chevre/service/transaction.d.ts +6 -0
- package/lib/chevre/service/transaction.js +22 -16
- package/lib/chevre/settings.d.ts +4 -1
- package/lib/chevre/settings.js +11 -4
- package/package.json +5 -5
- package/example/src/chevre/migrateMoneyTransferPendingTransactionIdentifier.ts +0 -96
- package/example/src/chevre/migrateMovieAdditionalProperties.ts +0 -98
|
@@ -12,17 +12,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.MongoRepository = void 0;
|
|
13
13
|
const moment = require("moment");
|
|
14
14
|
const factory = require("../factory");
|
|
15
|
-
const onIndexCreated_1 = require("./mongoose/onIndexCreated");
|
|
16
15
|
const transaction_1 = require("./mongoose/schemas/transaction");
|
|
16
|
+
const transaction_2 = require("../eventEmitter/transaction");
|
|
17
17
|
/**
|
|
18
18
|
* 取引リポジトリ
|
|
19
19
|
*/
|
|
20
20
|
class MongoRepository {
|
|
21
21
|
constructor(connection) {
|
|
22
22
|
this.transactionModel = connection.model(transaction_1.modelName, transaction_1.schema);
|
|
23
|
-
if (connection.get('autoIndex') === true) {
|
|
24
|
-
this.transactionModel.on(onIndexCreated_1.INDEX_EVENT, onIndexCreated_1.onIndexCreated);
|
|
25
|
-
}
|
|
26
23
|
}
|
|
27
24
|
// tslint:disable-next-line:cyclomatic-complexity max-func-body-length
|
|
28
25
|
static CREATE_MONGO_CONDITIONS(params) {
|
|
@@ -267,7 +264,9 @@ class MongoRepository {
|
|
|
267
264
|
else {
|
|
268
265
|
expires = params.expires;
|
|
269
266
|
}
|
|
270
|
-
return this.transactionModel.create(Object.assign(Object.assign({}, params), { typeOf: params.typeOf, status: factory.transactionStatusType.InProgress, startDate, endDate: undefined, expires,
|
|
267
|
+
return this.transactionModel.create(Object.assign(Object.assign({}, params), { typeOf: params.typeOf, status: factory.transactionStatusType.InProgress, startDate, endDate: undefined, expires, tasksExportAction: {
|
|
268
|
+
actionStatus: factory.actionStatusType.PotentialActionStatus
|
|
269
|
+
}, tasksExportationStatus: factory.transactionTasksExportationStatus.Unexported }))
|
|
271
270
|
.then((doc) => doc.toObject());
|
|
272
271
|
});
|
|
273
272
|
}
|
|
@@ -276,10 +275,29 @@ class MongoRepository {
|
|
|
276
275
|
*/
|
|
277
276
|
findById(params) {
|
|
278
277
|
return __awaiter(this, void 0, void 0, function* () {
|
|
278
|
+
let projection = {};
|
|
279
|
+
if (Array.isArray(params.inclusion) && params.inclusion.length > 0) {
|
|
280
|
+
params.inclusion.forEach((field) => {
|
|
281
|
+
projection[field] = 1;
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
else {
|
|
285
|
+
projection = {
|
|
286
|
+
__v: 0,
|
|
287
|
+
createdAt: 0,
|
|
288
|
+
updatedAt: 0
|
|
289
|
+
};
|
|
290
|
+
if (Array.isArray(params.exclusion) && params.exclusion.length > 0) {
|
|
291
|
+
params.exclusion.forEach((field) => {
|
|
292
|
+
projection[field] = 0;
|
|
293
|
+
});
|
|
294
|
+
}
|
|
295
|
+
}
|
|
279
296
|
const doc = yield this.transactionModel.findOne({
|
|
280
297
|
_id: { $eq: params.id },
|
|
281
298
|
typeOf: { $eq: params.typeOf }
|
|
282
299
|
})
|
|
300
|
+
.select(projection)
|
|
283
301
|
.exec();
|
|
284
302
|
if (doc === null) {
|
|
285
303
|
throw new factory.errors.NotFound(this.transactionModel.modelName);
|
|
@@ -295,7 +313,9 @@ class MongoRepository {
|
|
|
295
313
|
const doc = yield this.transactionModel.findOne({
|
|
296
314
|
_id: { $eq: params.id },
|
|
297
315
|
typeOf: { $eq: params.typeOf },
|
|
298
|
-
status: { $eq: factory.transactionStatusType.InProgress }
|
|
316
|
+
status: { $eq: factory.transactionStatusType.InProgress },
|
|
317
|
+
// expiresを条件に追加(2023-05-12~),
|
|
318
|
+
expires: { $gt: new Date() }
|
|
299
319
|
})
|
|
300
320
|
.exec();
|
|
301
321
|
if (doc === null) {
|
|
@@ -347,9 +367,9 @@ class MongoRepository {
|
|
|
347
367
|
var _a, _b;
|
|
348
368
|
return __awaiter(this, void 0, void 0, function* () {
|
|
349
369
|
const doc = yield this.transactionModel.findOneAndUpdate({
|
|
350
|
-
_id: params.id,
|
|
351
|
-
typeOf: params.typeOf,
|
|
352
|
-
status: factory.transactionStatusType.InProgress
|
|
370
|
+
_id: { $eq: params.id },
|
|
371
|
+
typeOf: { $eq: params.typeOf },
|
|
372
|
+
status: { $eq: factory.transactionStatusType.InProgress }
|
|
353
373
|
}, {
|
|
354
374
|
$set: Object.assign(Object.assign({ 'agent.id': params.agent.id }, (typeof params.agent.name === 'string') ? { 'agent.name': params.agent.name } : undefined), (typeof ((_b = (_a = params.object) === null || _a === void 0 ? void 0 : _a.customer) === null || _b === void 0 ? void 0 : _b.typeOf) === 'string') ? { 'object.customer': params.object.customer } : undefined)
|
|
355
375
|
}, {
|
|
@@ -367,9 +387,9 @@ class MongoRepository {
|
|
|
367
387
|
updateExpires(params) {
|
|
368
388
|
return __awaiter(this, void 0, void 0, function* () {
|
|
369
389
|
const doc = yield this.transactionModel.findOneAndUpdate({
|
|
370
|
-
_id: params.id,
|
|
371
|
-
typeOf: params.typeOf,
|
|
372
|
-
status: factory.transactionStatusType.InProgress
|
|
390
|
+
_id: { $eq: params.id },
|
|
391
|
+
typeOf: { $eq: params.typeOf },
|
|
392
|
+
status: { $eq: factory.transactionStatusType.InProgress }
|
|
373
393
|
}, {
|
|
374
394
|
$set: {
|
|
375
395
|
expires: params.expires
|
|
@@ -391,9 +411,9 @@ class MongoRepository {
|
|
|
391
411
|
var _a;
|
|
392
412
|
return __awaiter(this, void 0, void 0, function* () {
|
|
393
413
|
const doc = yield this.transactionModel.findOneAndUpdate({
|
|
394
|
-
_id: params.id,
|
|
395
|
-
typeOf: params.typeOf,
|
|
396
|
-
status: factory.transactionStatusType.InProgress
|
|
414
|
+
_id: { $eq: params.id },
|
|
415
|
+
typeOf: { $eq: params.typeOf },
|
|
416
|
+
status: { $eq: factory.transactionStatusType.InProgress }
|
|
397
417
|
}, {
|
|
398
418
|
$set: Object.assign({}, (typeof ((_a = params.object) === null || _a === void 0 ? void 0 : _a.name) === 'string') ? { 'object.name': params.object.name } : undefined)
|
|
399
419
|
}, {
|
|
@@ -411,9 +431,9 @@ class MongoRepository {
|
|
|
411
431
|
confirm(params) {
|
|
412
432
|
return __awaiter(this, void 0, void 0, function* () {
|
|
413
433
|
const doc = yield this.transactionModel.findOneAndUpdate({
|
|
414
|
-
_id: params.id,
|
|
415
|
-
typeOf: params.typeOf,
|
|
416
|
-
status: factory.transactionStatusType.InProgress
|
|
434
|
+
_id: { $eq: params.id },
|
|
435
|
+
typeOf: { $eq: params.typeOf },
|
|
436
|
+
status: { $eq: factory.transactionStatusType.InProgress }
|
|
417
437
|
}, {
|
|
418
438
|
status: factory.transactionStatusType.Confirmed,
|
|
419
439
|
endDate: new Date(),
|
|
@@ -428,43 +448,49 @@ class MongoRepository {
|
|
|
428
448
|
// NotFoundであれば取引状態確認
|
|
429
449
|
if (doc === null) {
|
|
430
450
|
const transaction = yield this.findById({ typeOf: params.typeOf, id: params.id });
|
|
431
|
-
// tslint:disable-next-line:no-single-line-block-comment
|
|
432
|
-
/* istanbul ignore next */
|
|
433
451
|
if (transaction.status === factory.transactionStatusType.Confirmed) {
|
|
434
|
-
//
|
|
435
|
-
return;
|
|
436
|
-
// tslint:disable-next-line:no-single-line-block-comment
|
|
437
|
-
/* istanbul ignore next */
|
|
452
|
+
// すでに確定済の場合スルー
|
|
438
453
|
}
|
|
439
454
|
else if (transaction.status === factory.transactionStatusType.Expired) {
|
|
440
455
|
throw new factory.errors.Argument('Transaction id', 'Already expired');
|
|
441
|
-
// tslint:disable-next-line:no-single-line-block-comment
|
|
442
|
-
/* istanbul ignore next */
|
|
443
456
|
}
|
|
444
457
|
else if (transaction.status === factory.transactionStatusType.Canceled) {
|
|
445
458
|
throw new factory.errors.Argument('Transaction id', 'Already canceled');
|
|
446
|
-
// tslint:disable-next-line:no-single-line-block-comment
|
|
447
|
-
/* istanbul ignore next */
|
|
448
459
|
}
|
|
449
460
|
else {
|
|
450
461
|
throw new factory.errors.NotFound(this.transactionModel.modelName);
|
|
451
462
|
}
|
|
452
463
|
}
|
|
453
|
-
|
|
464
|
+
transaction_2.transactionEventEmitter.emitTransactionStatusChanged({
|
|
465
|
+
id: params.id,
|
|
466
|
+
typeOf: params.typeOf,
|
|
467
|
+
status: factory.transactionStatusType.Confirmed
|
|
468
|
+
});
|
|
454
469
|
});
|
|
455
470
|
}
|
|
456
471
|
/**
|
|
457
472
|
* タスク未エクスポートの取引をひとつ取得してエクスポートを開始する
|
|
458
473
|
*/
|
|
459
474
|
startExportTasks(params) {
|
|
475
|
+
var _a;
|
|
460
476
|
return __awaiter(this, void 0, void 0, function* () {
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
477
|
+
switch (params.status) {
|
|
478
|
+
case factory.transactionStatusType.InProgress:
|
|
479
|
+
throw new factory.errors.NotImplemented(`status "${params.status}" not implemented on startExportTasks`);
|
|
480
|
+
default:
|
|
481
|
+
// no op
|
|
482
|
+
}
|
|
483
|
+
const typeOfIn = (_a = params.typeOf) === null || _a === void 0 ? void 0 : _a.$in;
|
|
484
|
+
return this.transactionModel.findOneAndUpdate(Object.assign(Object.assign(Object.assign(Object.assign({}, (params.project !== undefined) ? { 'project.id': { $eq: params.project.id } } : undefined), (Array.isArray(typeOfIn)) ? { typeOf: { $in: typeOfIn } } : undefined), { status: { $eq: params.status }, tasksExportationStatus: { $eq: factory.transactionTasksExportationStatus.Unexported } }), (typeof params.id === 'string') ? { _id: { $eq: params.id } } : undefined), {
|
|
485
|
+
'tasksExportAction.actionStatus': factory.actionStatusType.ActiveActionStatus,
|
|
486
|
+
'tasksExportAction.agent': { name: params.tasksExportAction.agent.name },
|
|
487
|
+
'tasksExportAction.startDate': new Date(),
|
|
488
|
+
tasksExportationStatus: factory.transactionTasksExportationStatus.Exporting
|
|
489
|
+
}, { new: true })
|
|
490
|
+
.select({
|
|
491
|
+
_id: 1,
|
|
492
|
+
typeOf: 1
|
|
493
|
+
})
|
|
468
494
|
.exec()
|
|
469
495
|
// tslint:disable-next-line:no-null-keyword
|
|
470
496
|
.then((doc) => (doc === null) ? null : doc.toObject());
|
|
@@ -477,17 +503,74 @@ class MongoRepository {
|
|
|
477
503
|
*/
|
|
478
504
|
reexportTasks(params) {
|
|
479
505
|
return __awaiter(this, void 0, void 0, function* () {
|
|
480
|
-
yield this.transactionModel.
|
|
481
|
-
tasksExportationStatus: factory.transactionTasksExportationStatus.Exporting,
|
|
506
|
+
const reexportingTransactions = yield this.transactionModel.find({
|
|
507
|
+
tasksExportationStatus: { $eq: factory.transactionTasksExportationStatus.Exporting },
|
|
482
508
|
updatedAt: {
|
|
483
509
|
$lt: moment()
|
|
484
510
|
.add(-params.intervalInMinutes, 'minutes')
|
|
485
511
|
.toDate()
|
|
486
512
|
}
|
|
487
|
-
}, {
|
|
488
|
-
tasksExportationStatus: factory.transactionTasksExportationStatus.Unexported
|
|
489
513
|
})
|
|
514
|
+
.select({
|
|
515
|
+
_id: 1,
|
|
516
|
+
typeOf: 1,
|
|
517
|
+
status: 1
|
|
518
|
+
})
|
|
519
|
+
.setOptions({ maxTimeMS: 10000 })
|
|
520
|
+
.exec();
|
|
521
|
+
if (reexportingTransactions.length > 0) {
|
|
522
|
+
for (const reexportingTransaction of reexportingTransactions) {
|
|
523
|
+
yield this.transactionModel.updateOne({
|
|
524
|
+
_id: { $eq: reexportingTransaction.id },
|
|
525
|
+
tasksExportationStatus: { $eq: factory.transactionTasksExportationStatus.Exporting }
|
|
526
|
+
}, {
|
|
527
|
+
tasksExportAction: {
|
|
528
|
+
actionStatus: factory.actionStatusType.PotentialActionStatus
|
|
529
|
+
},
|
|
530
|
+
tasksExportationStatus: factory.transactionTasksExportationStatus.Unexported
|
|
531
|
+
})
|
|
532
|
+
.exec();
|
|
533
|
+
transaction_2.transactionEventEmitter.emitTransactionStatusChanged({
|
|
534
|
+
id: reexportingTransaction.id,
|
|
535
|
+
typeOf: reexportingTransaction.typeOf,
|
|
536
|
+
status: reexportingTransaction.status
|
|
537
|
+
});
|
|
538
|
+
}
|
|
539
|
+
}
|
|
540
|
+
});
|
|
541
|
+
}
|
|
542
|
+
/**
|
|
543
|
+
* タスクエクスポートの遅延している取引について明示的にemitTransactionStatusChangedを実行する
|
|
544
|
+
*/
|
|
545
|
+
exportTasks(params) {
|
|
546
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
547
|
+
const delayedTransactions = yield this.transactionModel.find({
|
|
548
|
+
status: { $in: params.status.$in },
|
|
549
|
+
tasksExportationStatus: { $eq: factory.transactionTasksExportationStatus.Unexported },
|
|
550
|
+
endDate: {
|
|
551
|
+
$exists: true,
|
|
552
|
+
$lt: moment(params.now)
|
|
553
|
+
.add(-params.delayInSeconds, 'seconds')
|
|
554
|
+
.toDate()
|
|
555
|
+
}
|
|
556
|
+
})
|
|
557
|
+
.select({
|
|
558
|
+
_id: 1,
|
|
559
|
+
typeOf: 1,
|
|
560
|
+
status: 1
|
|
561
|
+
})
|
|
562
|
+
.setOptions({ maxTimeMS: 10000 })
|
|
490
563
|
.exec();
|
|
564
|
+
if (delayedTransactions.length > 0) {
|
|
565
|
+
delayedTransactions.forEach((delayedTransaction) => {
|
|
566
|
+
transaction_2.transactionEventEmitter.emitTransactionStatusChanged({
|
|
567
|
+
id: delayedTransaction.id,
|
|
568
|
+
typeOf: delayedTransaction.typeOf,
|
|
569
|
+
status: delayedTransaction.status
|
|
570
|
+
});
|
|
571
|
+
});
|
|
572
|
+
}
|
|
573
|
+
return delayedTransactions;
|
|
491
574
|
});
|
|
492
575
|
}
|
|
493
576
|
/**
|
|
@@ -496,9 +579,15 @@ class MongoRepository {
|
|
|
496
579
|
*/
|
|
497
580
|
setTasksExportedById(params) {
|
|
498
581
|
return __awaiter(this, void 0, void 0, function* () {
|
|
499
|
-
|
|
582
|
+
const endDate = new Date();
|
|
583
|
+
yield this.transactionModel.updateOne({
|
|
584
|
+
_id: { $eq: params.id },
|
|
585
|
+
tasksExportationStatus: { $eq: factory.transactionTasksExportationStatus.Exporting }
|
|
586
|
+
}, {
|
|
500
587
|
tasksExportationStatus: factory.transactionTasksExportationStatus.Exported,
|
|
501
|
-
tasksExportedAt:
|
|
588
|
+
tasksExportedAt: endDate,
|
|
589
|
+
'tasksExportAction.actionStatus': factory.actionStatusType.CompletedActionStatus,
|
|
590
|
+
'tasksExportAction.endDate': endDate
|
|
502
591
|
})
|
|
503
592
|
.exec();
|
|
504
593
|
});
|
|
@@ -508,15 +597,36 @@ class MongoRepository {
|
|
|
508
597
|
*/
|
|
509
598
|
makeExpired(params) {
|
|
510
599
|
return __awaiter(this, void 0, void 0, function* () {
|
|
511
|
-
//
|
|
512
|
-
yield this.transactionModel.
|
|
513
|
-
status: factory.transactionStatusType.InProgress,
|
|
514
|
-
expires: { $lt: params.expires }
|
|
515
|
-
}
|
|
516
|
-
|
|
517
|
-
|
|
600
|
+
// IDをemitしたいのでまずリスト検索(2023-04-27~)
|
|
601
|
+
const expiringTransactions = yield this.transactionModel.find({
|
|
602
|
+
status: { $eq: factory.transactionStatusType.InProgress },
|
|
603
|
+
expires: { $lt: params.expires.$lt }
|
|
604
|
+
})
|
|
605
|
+
.select({
|
|
606
|
+
_id: 1,
|
|
607
|
+
typeOf: 1
|
|
518
608
|
})
|
|
609
|
+
.setOptions({ maxTimeMS: 10000 })
|
|
519
610
|
.exec();
|
|
611
|
+
if (expiringTransactions.length > 0) {
|
|
612
|
+
// ステータスと期限を見て更新
|
|
613
|
+
yield this.transactionModel.updateMany({
|
|
614
|
+
_id: { $in: expiringTransactions.map((t) => t.id) },
|
|
615
|
+
status: { $eq: factory.transactionStatusType.InProgress },
|
|
616
|
+
expires: { $lt: params.expires.$lt }
|
|
617
|
+
}, {
|
|
618
|
+
status: factory.transactionStatusType.Expired,
|
|
619
|
+
endDate: new Date()
|
|
620
|
+
})
|
|
621
|
+
.exec();
|
|
622
|
+
expiringTransactions.forEach((expiringTransaction) => {
|
|
623
|
+
transaction_2.transactionEventEmitter.emitTransactionStatusChanged({
|
|
624
|
+
id: expiringTransaction.id,
|
|
625
|
+
typeOf: expiringTransaction.typeOf,
|
|
626
|
+
status: factory.transactionStatusType.Expired
|
|
627
|
+
});
|
|
628
|
+
});
|
|
629
|
+
}
|
|
520
630
|
});
|
|
521
631
|
}
|
|
522
632
|
/**
|
|
@@ -541,11 +651,8 @@ class MongoRepository {
|
|
|
541
651
|
// NotFoundであれば取引状態確認
|
|
542
652
|
if (doc === null) {
|
|
543
653
|
const transaction = yield this.findById(params);
|
|
544
|
-
// tslint:disable-next-line:no-single-line-block-comment
|
|
545
|
-
/* istanbul ignore next */
|
|
546
654
|
if (transaction.status === factory.transactionStatusType.Canceled) {
|
|
547
|
-
//
|
|
548
|
-
return;
|
|
655
|
+
// すでに中止済の場合スルー
|
|
549
656
|
}
|
|
550
657
|
else if (transaction.status === factory.transactionStatusType.Expired) {
|
|
551
658
|
throw new factory.errors.Argument('Transaction id', 'Transaction already expired');
|
|
@@ -557,7 +664,11 @@ class MongoRepository {
|
|
|
557
664
|
throw new factory.errors.NotFound(this.transactionModel.modelName);
|
|
558
665
|
}
|
|
559
666
|
}
|
|
560
|
-
|
|
667
|
+
transaction_2.transactionEventEmitter.emitTransactionStatusChanged({
|
|
668
|
+
id: params.id,
|
|
669
|
+
typeOf: params.typeOf,
|
|
670
|
+
status: factory.transactionStatusType.Canceled
|
|
671
|
+
});
|
|
561
672
|
});
|
|
562
673
|
}
|
|
563
674
|
count(params) {
|
|
@@ -615,9 +726,12 @@ class MongoRepository {
|
|
|
615
726
|
/**
|
|
616
727
|
* 特定の取引を更新する(汎用)
|
|
617
728
|
*/
|
|
618
|
-
|
|
729
|
+
findByIdAndUpdateInProgress(params) {
|
|
619
730
|
return __awaiter(this, void 0, void 0, function* () {
|
|
620
|
-
yield this.transactionModel.findOneAndUpdate({
|
|
731
|
+
yield this.transactionModel.findOneAndUpdate({
|
|
732
|
+
_id: { $eq: params.id },
|
|
733
|
+
status: { $eq: factory.transactionStatusType.InProgress }
|
|
734
|
+
}, params.update, {
|
|
621
735
|
// new: true,
|
|
622
736
|
projection: { _id: 1 }
|
|
623
737
|
})
|
|
@@ -632,7 +746,8 @@ class MongoRepository {
|
|
|
632
746
|
saveOrderNumberIfNotExist(params) {
|
|
633
747
|
return __awaiter(this, void 0, void 0, function* () {
|
|
634
748
|
yield this.transactionModel.updateOne({
|
|
635
|
-
_id: params.id,
|
|
749
|
+
_id: { $eq: params.id },
|
|
750
|
+
status: { $eq: factory.transactionStatusType.InProgress },
|
|
636
751
|
'object.orderNumber': { $exists: false }
|
|
637
752
|
}, { 'object.orderNumber': params.orderNumber })
|
|
638
753
|
.exec();
|
|
@@ -641,7 +756,8 @@ class MongoRepository {
|
|
|
641
756
|
saveConfirmationNumberIfNotExist(params) {
|
|
642
757
|
return __awaiter(this, void 0, void 0, function* () {
|
|
643
758
|
yield this.transactionModel.updateOne({
|
|
644
|
-
_id: params.id,
|
|
759
|
+
_id: { $eq: params.id },
|
|
760
|
+
status: { $eq: factory.transactionStatusType.InProgress },
|
|
645
761
|
'object.confirmationNumber': { $exists: false }
|
|
646
762
|
}, { 'object.confirmationNumber': params.confirmationNumber })
|
|
647
763
|
.exec();
|
package/lib/chevre/repo/trip.js
CHANGED
|
@@ -22,7 +22,6 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
22
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
23
|
exports.MongoRepository = void 0;
|
|
24
24
|
const factory = require("../factory");
|
|
25
|
-
const onIndexCreated_1 = require("./mongoose/onIndexCreated");
|
|
26
25
|
const trip_1 = require("./mongoose/schemas/trip");
|
|
27
26
|
/**
|
|
28
27
|
* トリップリポジトリ
|
|
@@ -30,9 +29,6 @@ const trip_1 = require("./mongoose/schemas/trip");
|
|
|
30
29
|
class MongoRepository {
|
|
31
30
|
constructor(connection) {
|
|
32
31
|
this.tripModel = connection.model(trip_1.modelName, trip_1.schema);
|
|
33
|
-
if (connection.get('autoIndex') === true) {
|
|
34
|
-
this.tripModel.on(onIndexCreated_1.INDEX_EVENT, onIndexCreated_1.onIndexCreated);
|
|
35
|
-
}
|
|
36
32
|
}
|
|
37
33
|
// tslint:disable-next-line:cyclomatic-complexity max-func-body-length
|
|
38
34
|
static CREATE_MONGO_CONDITIONS(conditions) {
|
|
@@ -4,97 +4,142 @@ import { MongoRepository as AssetTransactionRepo } from '../../repo/assetTransac
|
|
|
4
4
|
import { MongoRepository as EventRepo } from '../../repo/event';
|
|
5
5
|
import { MongoRepository as TasKRepo } from '../../repo/task';
|
|
6
6
|
import { MongoRepository as TransactionRepo } from '../../repo/transaction';
|
|
7
|
+
type AggregateDurationUnit = 'days' | 'hours';
|
|
7
8
|
declare function aggregateEvent(params: {
|
|
8
|
-
|
|
9
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
10
|
+
aggregationCount: number;
|
|
9
11
|
excludedProjectId?: string;
|
|
10
12
|
}): (repos: {
|
|
11
13
|
agregation: AggregationRepo;
|
|
12
14
|
event: EventRepo;
|
|
13
|
-
}) => Promise<
|
|
15
|
+
}) => Promise<{
|
|
16
|
+
aggregationCount: number;
|
|
17
|
+
aggregateDuration: string;
|
|
18
|
+
}>;
|
|
14
19
|
/**
|
|
15
20
|
* 注文取引集計
|
|
16
21
|
*/
|
|
17
22
|
declare function aggregatePlaceOrder(params: {
|
|
18
|
-
|
|
23
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
24
|
+
aggregationCount: number;
|
|
19
25
|
excludedProjectId?: string;
|
|
20
26
|
clientIds?: string[];
|
|
21
27
|
}): (repos: {
|
|
22
28
|
agregation: AggregationRepo;
|
|
23
29
|
transaction: TransactionRepo;
|
|
24
|
-
}) => Promise<
|
|
30
|
+
}) => Promise<{
|
|
31
|
+
aggregationCount: number;
|
|
32
|
+
aggregateDuration: string;
|
|
33
|
+
}>;
|
|
25
34
|
/**
|
|
26
35
|
* 興行オファー承認アクション集計
|
|
27
36
|
*/
|
|
28
37
|
declare function aggregateAuthorizeEventServiceOfferAction(params: {
|
|
29
|
-
|
|
38
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
39
|
+
aggregationCount: number;
|
|
30
40
|
excludedProjectId?: string;
|
|
31
41
|
}): (repos: {
|
|
32
42
|
agregation: AggregationRepo;
|
|
33
43
|
action: ActionRepo;
|
|
34
|
-
}) => Promise<
|
|
44
|
+
}) => Promise<{
|
|
45
|
+
aggregationCount: number;
|
|
46
|
+
aggregateDuration: string;
|
|
47
|
+
}>;
|
|
35
48
|
/**
|
|
36
49
|
* 決済承認アクション集計
|
|
37
50
|
*/
|
|
38
51
|
declare function aggregateAuthorizePaymentAction(params: {
|
|
39
|
-
|
|
52
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
53
|
+
aggregationCount: number;
|
|
40
54
|
excludedProjectId?: string;
|
|
41
55
|
}): (repos: {
|
|
42
56
|
agregation: AggregationRepo;
|
|
43
57
|
action: ActionRepo;
|
|
44
|
-
}) => Promise<
|
|
58
|
+
}) => Promise<{
|
|
59
|
+
aggregationCount: number;
|
|
60
|
+
aggregateDuration: string;
|
|
61
|
+
}>;
|
|
45
62
|
declare function aggregateAuthorizeOrderAction(params: {
|
|
46
|
-
|
|
63
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
64
|
+
aggregationCount: number;
|
|
47
65
|
excludedProjectId?: string;
|
|
48
66
|
}): (repos: {
|
|
49
67
|
agregation: AggregationRepo;
|
|
50
68
|
action: ActionRepo;
|
|
51
|
-
}) => Promise<
|
|
69
|
+
}) => Promise<{
|
|
70
|
+
aggregationCount: number;
|
|
71
|
+
aggregateDuration: string;
|
|
72
|
+
}>;
|
|
52
73
|
/**
|
|
53
74
|
* 使用アクション集計
|
|
54
75
|
*/
|
|
55
76
|
declare function aggregateUseAction(params: {
|
|
56
|
-
|
|
77
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
78
|
+
aggregationCount: number;
|
|
57
79
|
excludedProjectId?: string;
|
|
58
80
|
}): (repos: {
|
|
59
81
|
agregation: AggregationRepo;
|
|
60
82
|
action: ActionRepo;
|
|
61
|
-
}) => Promise<
|
|
83
|
+
}) => Promise<{
|
|
84
|
+
aggregationCount: number;
|
|
85
|
+
aggregateDuration: string;
|
|
86
|
+
}>;
|
|
62
87
|
declare function aggregateCheckMovieTicketAction(params: {
|
|
63
|
-
|
|
88
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
89
|
+
aggregationCount: number;
|
|
64
90
|
excludedProjectId?: string;
|
|
65
91
|
}): (repos: {
|
|
66
92
|
agregation: AggregationRepo;
|
|
67
93
|
action: ActionRepo;
|
|
68
|
-
}) => Promise<
|
|
94
|
+
}) => Promise<{
|
|
95
|
+
aggregationCount: number;
|
|
96
|
+
aggregateDuration: string;
|
|
97
|
+
}>;
|
|
69
98
|
declare function aggregatePayMovieTicketAction(params: {
|
|
70
|
-
|
|
99
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
100
|
+
aggregationCount: number;
|
|
71
101
|
excludedProjectId?: string;
|
|
72
102
|
}): (repos: {
|
|
73
103
|
agregation: AggregationRepo;
|
|
74
104
|
action: ActionRepo;
|
|
75
|
-
}) => Promise<
|
|
105
|
+
}) => Promise<{
|
|
106
|
+
aggregationCount: number;
|
|
107
|
+
aggregateDuration: string;
|
|
108
|
+
}>;
|
|
76
109
|
declare function aggregatePayTransaction(params: {
|
|
77
|
-
|
|
110
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
111
|
+
aggregationCount: number;
|
|
78
112
|
excludedProjectId?: string;
|
|
79
113
|
}): (repos: {
|
|
80
114
|
agregation: AggregationRepo;
|
|
81
115
|
assetTransaction: AssetTransactionRepo;
|
|
82
|
-
}) => Promise<
|
|
116
|
+
}) => Promise<{
|
|
117
|
+
aggregationCount: number;
|
|
118
|
+
aggregateDuration: string;
|
|
119
|
+
}>;
|
|
83
120
|
/**
|
|
84
121
|
* 予約集計
|
|
85
122
|
*/
|
|
86
123
|
declare function aggregateReserveTransaction(params: {
|
|
87
|
-
|
|
124
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
125
|
+
aggregationCount: number;
|
|
88
126
|
excludedProjectId?: string;
|
|
89
127
|
}): (repos: {
|
|
90
128
|
agregation: AggregationRepo;
|
|
91
129
|
assetTransaction: AssetTransactionRepo;
|
|
92
|
-
}) => Promise<
|
|
130
|
+
}) => Promise<{
|
|
131
|
+
aggregationCount: number;
|
|
132
|
+
aggregateDuration: string;
|
|
133
|
+
}>;
|
|
93
134
|
declare function aggregateTask(params: {
|
|
94
|
-
|
|
135
|
+
aggregateDurationUnit: AggregateDurationUnit;
|
|
136
|
+
aggregationCount: number;
|
|
95
137
|
excludedProjectId?: string;
|
|
96
138
|
}): (repos: {
|
|
97
139
|
agregation: AggregationRepo;
|
|
98
140
|
task: TasKRepo;
|
|
99
|
-
}) => Promise<
|
|
141
|
+
}) => Promise<{
|
|
142
|
+
aggregationCount: number;
|
|
143
|
+
aggregateDuration: string;
|
|
144
|
+
}>;
|
|
100
145
|
export { aggregateAuthorizeEventServiceOfferAction, aggregateAuthorizeOrderAction, aggregateAuthorizePaymentAction, aggregateCheckMovieTicketAction, aggregateEvent, aggregatePayMovieTicketAction, aggregatePayTransaction, aggregatePlaceOrder, aggregateReserveTransaction, aggregateTask, aggregateUseAction };
|