@chevre/domain 26.0.0-alpha.4 → 26.0.0-alpha.41
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/eventEmitter/task.d.ts +8 -23
- package/lib/chevre/eventEmitter/task.js +2 -2
- package/lib/chevre/repo/acceptedOffer.d.ts +0 -7
- package/lib/chevre/repo/acceptedOffer.js +27 -27
- package/lib/chevre/repo/action/acceptCOAOffer.d.ts +3 -1
- package/lib/chevre/repo/action/acceptCOAOffer.js +8 -2
- package/lib/chevre/repo/action/acceptPay.d.ts +3 -1
- package/lib/chevre/repo/action/acceptPay.js +8 -4
- package/lib/chevre/repo/action/{actionProcess.d.ts → anyAction/actionProcess.d.ts} +18 -45
- package/lib/chevre/repo/action/{actionProcess.js → anyAction/actionProcess.js} +26 -91
- package/lib/chevre/repo/action/anyAction/actionRecipe.d.ts +37 -0
- package/lib/chevre/repo/action/anyAction/actionRecipe.js +53 -0
- package/lib/chevre/repo/action/authorizeInvoice.d.ts +5 -8
- package/lib/chevre/repo/action/authorizeInvoice.js +7 -4
- package/lib/chevre/repo/action/authorizeOffer.d.ts +3 -1
- package/lib/chevre/repo/action/authorizeOffer.js +7 -2
- package/lib/chevre/repo/action/authorizePaymentMethod.d.ts +3 -1
- package/lib/chevre/repo/action/authorizePaymentMethod.js +7 -4
- package/lib/chevre/repo/action/authorizeTicketedObject.d.ts +3 -1
- package/lib/chevre/repo/action/authorizeTicketedObject.js +7 -2
- package/lib/chevre/repo/action/checkMovieTicket.d.ts +3 -1
- package/lib/chevre/repo/action/checkMovieTicket.js +8 -1
- package/lib/chevre/repo/action/create.d.ts +10 -0
- package/lib/chevre/repo/action/create.js +17 -0
- package/lib/chevre/repo/action/inform.d.ts +38 -0
- package/lib/chevre/repo/action/inform.js +146 -0
- package/lib/chevre/repo/action/pay.d.ts +3 -1
- package/lib/chevre/repo/action/pay.js +7 -4
- package/lib/chevre/repo/action/refund.d.ts +3 -1
- package/lib/chevre/repo/action/refund.js +7 -4
- package/lib/chevre/repo/action/sendEmailMessage.d.ts +10 -0
- package/lib/chevre/repo/action/sendEmailMessage.js +17 -0
- package/lib/chevre/repo/action/sendOrder.d.ts +10 -0
- package/lib/chevre/repo/action/sendOrder.js +16 -0
- package/lib/chevre/repo/action/unknown2actionError.d.ts +6 -0
- package/lib/chevre/repo/action/unknown2actionError.js +15 -0
- package/lib/chevre/repo/action/update.d.ts +48 -0
- package/lib/chevre/repo/action/update.js +166 -0
- package/lib/chevre/repo/action/use.d.ts +39 -0
- package/lib/chevre/repo/action/use.js +153 -0
- package/lib/chevre/repo/action.d.ts +5 -101
- package/lib/chevre/repo/action.js +7 -453
- package/lib/chevre/repo/adminAction.d.ts +87 -0
- package/lib/chevre/repo/adminAction.js +170 -0
- package/lib/chevre/repo/adminAssetTransaction.d.ts +126 -0
- package/lib/chevre/repo/adminAssetTransaction.js +491 -0
- package/lib/chevre/repo/adminAsyncAction.d.ts +2 -2
- package/lib/chevre/repo/adminScheduledTask.d.ts +1 -1
- package/lib/chevre/repo/adminTask.d.ts +25 -8
- package/lib/chevre/repo/adminTask.js +31 -32
- package/lib/chevre/repo/adminTransaction.d.ts +131 -0
- package/lib/chevre/repo/adminTransaction.js +237 -0
- package/lib/chevre/repo/aggregateAction.d.ts +8 -11
- package/lib/chevre/repo/aggregateAction.js +0 -61
- package/lib/chevre/repo/aggregateAssetTransaction.d.ts +43 -0
- package/lib/chevre/repo/aggregateAssetTransaction.js +166 -0
- package/lib/chevre/repo/aggregateTransaction.d.ts +39 -0
- package/lib/chevre/repo/aggregateTransaction.js +166 -0
- package/lib/chevre/repo/aggregateUseAction.d.ts +35 -0
- package/lib/chevre/repo/aggregateUseAction.js +164 -0
- package/lib/chevre/repo/aggregation.d.ts +0 -8
- package/lib/chevre/repo/aggregation.js +0 -10
- package/lib/chevre/repo/assetTransaction.d.ts +10 -235
- package/lib/chevre/repo/assetTransaction.js +48 -636
- package/lib/chevre/repo/asyncAction.d.ts +2 -2
- package/lib/chevre/repo/authorization.d.ts +0 -6
- package/lib/chevre/repo/authorization.js +15 -27
- package/lib/chevre/repo/message.d.ts +0 -7
- package/lib/chevre/repo/message.js +0 -38
- package/lib/chevre/repo/migrateAction.d.ts +48 -0
- package/lib/chevre/repo/migrateAction.js +32 -0
- package/lib/chevre/repo/mongoose/schemas/action/inform.d.ts +11 -0
- package/lib/chevre/repo/mongoose/schemas/action/inform.js +82 -0
- package/lib/chevre/repo/mongoose/schemas/action/update.d.ts +12 -0
- package/lib/chevre/repo/mongoose/schemas/action/update.js +112 -0
- package/lib/chevre/repo/mongoose/schemas/{ownershipInfo.d.ts → action/use.d.ts} +4 -6
- package/lib/chevre/repo/mongoose/schemas/action/use.js +92 -0
- package/lib/chevre/repo/mongoose/schemas/action.d.ts +1 -3
- package/lib/chevre/repo/mongoose/schemas/action.js +22 -7
- package/lib/chevre/repo/mongoose/schemas/actionRecipe.d.ts +1 -0
- package/lib/chevre/repo/mongoose/schemas/actionRecipe.js +19 -1
- package/lib/chevre/repo/mongoose/schemas/aggregateReservation.js +8 -9
- package/lib/chevre/repo/mongoose/schemas/aggregation.js +8 -1
- package/lib/chevre/repo/mongoose/schemas/assetTransaction.js +95 -76
- package/lib/chevre/repo/mongoose/schemas/authorization.js +25 -18
- package/lib/chevre/repo/mongoose/schemas/event.js +7 -0
- package/lib/chevre/repo/mongoose/schemas/eventOffer.js +7 -0
- package/lib/chevre/repo/mongoose/schemas/message.js +8 -1
- package/lib/chevre/repo/mongoose/schemas/pendingReservation.js +11 -4
- package/lib/chevre/repo/mongoose/schemas/setting.d.ts +1 -0
- package/lib/chevre/repo/mongoose/schemas/task.d.ts +2 -5
- package/lib/chevre/repo/mongoose/schemas/task.js +134 -118
- package/lib/chevre/repo/mongoose/schemas/ticket.js +8 -1
- package/lib/chevre/repo/orderInTransaction.d.ts +0 -3
- package/lib/chevre/repo/orderInTransaction.js +30 -22
- package/lib/chevre/repo/scheduledTask.d.ts +5 -2
- package/lib/chevre/repo/scheduledTask.js +3 -25
- package/lib/chevre/repo/task.d.ts +45 -171
- package/lib/chevre/repo/task.js +20 -475
- package/lib/chevre/repo/taskDelayed.d.ts +74 -0
- package/lib/chevre/repo/taskDelayed.js +195 -0
- package/lib/chevre/repo/taskRunning.d.ts +35 -0
- package/lib/chevre/repo/taskRunning.js +89 -0
- package/lib/chevre/repo/ticket.d.ts +0 -6
- package/lib/chevre/repo/ticket.js +0 -11
- package/lib/chevre/repo/transaction.d.ts +1 -187
- package/lib/chevre/repo/transaction.js +2 -383
- package/lib/chevre/repository.d.ts +50 -10
- package/lib/chevre/repository.js +112 -24
- package/lib/chevre/service/aggregation/system.d.ts +9 -8
- package/lib/chevre/service/aggregation/system.js +5 -5
- package/lib/chevre/service/assetTransaction/cancelReservation/start.js +10 -17
- package/lib/chevre/service/assetTransaction/refund.js +2 -2
- package/lib/chevre/service/asyncAction.d.ts +2 -2
- package/lib/chevre/service/asyncAction.js +1 -4
- package/lib/chevre/service/asyncActionHandler/onOperationFailed.d.ts +2 -2
- package/lib/chevre/service/asyncActionHandler/onOperationFailed.js +0 -2
- package/lib/chevre/service/asyncActionHandler.d.ts +4 -4
- package/lib/chevre/service/asyncActionHandler.js +11 -13
- package/lib/chevre/service/event/processUpdateMovieTheater.d.ts +4 -2
- package/lib/chevre/service/event/processUpdateMovieTheater.js +3 -3
- package/lib/chevre/service/event.d.ts +4 -2
- package/lib/chevre/service/event.js +3 -3
- package/lib/chevre/service/notification/sendEmailMessage.d.ts +4 -2
- package/lib/chevre/service/notification/sendEmailMessage.js +3 -3
- package/lib/chevre/service/notification/triggerWebhook.d.ts +4 -2
- package/lib/chevre/service/notification/triggerWebhook.js +5 -16
- package/lib/chevre/service/offer/event/voidTransaction/processVoidTransaction4chevre.js +1 -3
- package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.d.ts +0 -4
- package/lib/chevre/service/offer/eventServiceByCOA/findAcceptAction.js +19 -19
- package/lib/chevre/service/offer/onEventChanged.js +0 -2
- package/lib/chevre/service/order/confirmPayTransaction.js +4 -1
- package/lib/chevre/service/order/createAccountingReportIfNotExist.d.ts +1 -1
- package/lib/chevre/service/order/createAccountingReportIfNotExist.js +2 -56
- package/lib/chevre/service/order/deleteOrder.d.ts +2 -2
- package/lib/chevre/service/order/deleteOrder.js +1 -2
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/isDeliverable.js +1 -49
- package/lib/chevre/service/order/onAssetTransactionStatusChanged/onPayTransactionConfirmed.js +2 -2
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDelivered/factory.js +2 -4
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.js +2 -4
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.js +4 -4
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.js +2 -2
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/createSendEmailMessageTaskIfNotExist.js +2 -10
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/factory.d.ts +2 -2
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/factory.js +4 -8
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/processOrder.js +2 -2
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing.js +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.js +5 -11
- package/lib/chevre/service/order/onOrderUpdated/factory.js +0 -3
- package/lib/chevre/service/order/returnOrder.d.ts +0 -2
- package/lib/chevre/service/order/returnOrder.js +8 -40
- package/lib/chevre/service/order/sendOrder.d.ts +4 -6
- package/lib/chevre/service/order/sendOrder.js +30 -72
- package/lib/chevre/service/payment/any/findAcceptAction.d.ts +0 -4
- package/lib/chevre/service/payment/any/findAcceptAction.js +19 -19
- package/lib/chevre/service/payment/any/findAuthorizeAction.d.ts +0 -4
- package/lib/chevre/service/payment/any/findAuthorizeAction.js +19 -19
- package/lib/chevre/service/payment/any/findCheckAction.d.ts +0 -4
- package/lib/chevre/service/payment/any/findCheckAction.js +19 -19
- package/lib/chevre/service/payment/any/processVoidPayTransaction.js +1 -1
- package/lib/chevre/service/payment/any/publishPaymentUrl.d.ts +0 -2
- package/lib/chevre/service/payment/any/publishPaymentUrl.js +2 -2
- package/lib/chevre/service/project.d.ts +0 -6
- package/lib/chevre/service/project.js +0 -2
- package/lib/chevre/service/reserve/cancelReservation.js +3 -3
- package/lib/chevre/service/reserve/checkInReservation.js +2 -2
- package/lib/chevre/service/reserve/confirmReservation.js +1 -1
- package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +2 -2
- package/lib/chevre/service/reserve/useReservation.d.ts +4 -0
- package/lib/chevre/service/reserve/useReservation.js +6 -24
- package/lib/chevre/service/scheduledTask.d.ts +1 -4
- package/lib/chevre/service/scheduledTask.js +3 -10
- package/lib/chevre/service/scheduledTaskHandler/onOperationFailed.js +1 -2
- package/lib/chevre/service/scheduledTaskHandler.js +0 -13
- package/lib/chevre/service/task/acceptCOAOffer.js +1 -14
- package/lib/chevre/service/task/authorizePayment.js +1 -7
- package/lib/chevre/service/task/checkMovieTicket.js +1 -7
- package/lib/chevre/service/task/checkResource.js +14 -57
- package/lib/chevre/service/task/confirmReserveTransaction.js +3 -1
- package/lib/chevre/service/task/createAccountingReport.js +8 -15
- package/lib/chevre/service/task/deleteTransaction.js +10 -41
- package/lib/chevre/service/task/importEventsFromCOA.js +4 -2
- package/lib/chevre/service/task/onAuthorizationCreated.js +2 -2
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByAggregateOffer.d.ts +4 -2
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByAggregateOffer.js +4 -4
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByEventSeries.d.ts +4 -2
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByEventSeries.js +4 -4
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByMovieTheater.d.ts +4 -2
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByMovieTheater.js +4 -4
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByOfferCatalog.d.ts +4 -2
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByOfferCatalog.js +4 -4
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByProduct.d.ts +4 -2
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByProduct.js +4 -4
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByRoom.d.ts +4 -2
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesByRoom.js +4 -4
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesBySeller.d.ts +4 -2
- package/lib/chevre/service/task/onResourceDeleted/deleteResourcesBySeller.js +4 -4
- package/lib/chevre/service/task/onResourceDeleted.js +4 -3
- package/lib/chevre/service/task/onResourceUpdated/onAggregateOfferUpdated.js +0 -1
- package/lib/chevre/service/task/onResourceUpdated/onHasPOSUpdated.js +0 -1
- package/lib/chevre/service/task/onResourceUpdated/onOfferCatalogUpdated.js +0 -1
- package/lib/chevre/service/task/onResourceUpdated.js +0 -8
- package/lib/chevre/service/task/publishPaymentUrl.js +2 -13
- package/lib/chevre/service/task/returnOrder.js +2 -5
- package/lib/chevre/service/task/returnPayTransaction.js +2 -5
- package/lib/chevre/service/task/sendEmailMessage.js +2 -2
- package/lib/chevre/service/task/sendOrder.js +4 -8
- package/lib/chevre/service/task/syncResourcesFromCOA.js +31 -23
- package/lib/chevre/service/task/triggerWebhook.js +4 -2
- package/lib/chevre/service/task/useReservation.js +4 -0
- package/lib/chevre/service/task/voidReserveTransaction.js +5 -8
- package/lib/chevre/service/task.d.ts +3 -22
- package/lib/chevre/service/task.js +8 -40
- package/lib/chevre/service/taskHandler/onOperationFailed/informTaskIfNeeded.js +0 -1
- package/lib/chevre/service/taskHandler/onOperationFailed.d.ts +3 -2
- package/lib/chevre/service/taskHandler/onOperationFailed.js +5 -16
- package/lib/chevre/service/taskHandler.d.ts +1 -2
- package/lib/chevre/service/taskHandler.js +7 -19
- package/lib/chevre/service/transaction/deleteTransaction/deletePayTransactionsByPlaceOrder.js +2 -2
- package/lib/chevre/service/transaction/deleteTransaction/deleteReservationsByPlaceOrder.js +2 -2
- package/lib/chevre/service/transaction/deleteTransaction.d.ts +8 -4
- package/lib/chevre/service/transaction/deleteTransaction.js +7 -7
- package/lib/chevre/service/transaction/placeOrder/confirm.js +1 -1
- package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.d.ts +8 -4
- package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +55 -103
- package/lib/chevre/service/transaction/placeOrder/exportTasksById.d.ts +2 -0
- package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +14 -10
- package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.d.ts +13 -3
- package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +48 -51
- package/lib/chevre/service/transaction/returnOrder.d.ts +2 -0
- package/lib/chevre/service/transaction/returnOrder.js +15 -13
- package/lib/chevre/service/transaction.d.ts +2 -0
- package/lib/chevre/service/transaction.js +0 -2
- package/lib/chevre/service/validation/validateOrder.d.ts +0 -4
- package/lib/chevre/service/validation/validateOrder.js +3 -3
- package/lib/chevre/taskSettings.d.ts +4 -4
- package/package.json +2 -2
- package/lib/chevre/repo/action/checkThing.d.ts +0 -8
- package/lib/chevre/repo/action/checkThing.js +0 -13
- package/lib/chevre/repo/mongoose/schemas/ownershipInfo.js +0 -227
- package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.d.ts +0 -25
- package/lib/chevre/repo/mongoose/schemas/pendingReservationAggregate.js +0 -100
- package/lib/chevre/repo/ownershipInfo.d.ts +0 -122
- package/lib/chevre/repo/ownershipInfo.js +0 -466
- package/lib/chevre/service/validation/validateEvent.d.ts +0 -11
- package/lib/chevre/service/validation/validateEvent.js +0 -21
|
@@ -1,23 +1,27 @@
|
|
|
1
1
|
import { factory } from '../../factory';
|
|
2
2
|
import type { AcceptedOfferRepo } from '../../repo/acceptedOffer';
|
|
3
3
|
import type { AccountingReportRepo } from '../../repo/accountingReport';
|
|
4
|
-
import type {
|
|
4
|
+
import type { UpdateActionRepo } from '../../repo/action/update';
|
|
5
|
+
import type { AdminActionRepo } from '../../repo/adminAction';
|
|
6
|
+
import type { AdminTransactionRepo } from '../../repo/adminTransaction';
|
|
5
7
|
import type { AssetTransactionRepo } from '../../repo/assetTransaction';
|
|
6
8
|
import type { NoteRepo } from '../../repo/note';
|
|
7
9
|
import type { OrderRepo } from '../../repo/order';
|
|
8
10
|
import type { ReservationRepo } from '../../repo/reservation';
|
|
9
|
-
import type { TransactionRepo } from '../../repo/transaction';
|
|
10
11
|
import type { PlaceOrderRepo } from '../../repo/transaction/placeOrder';
|
|
11
12
|
import type { ReturnOrderRepo } from '../../repo/transaction/returnOrder';
|
|
12
13
|
interface IDeleteTransactionRepos {
|
|
13
14
|
acceptedOffer: AcceptedOfferRepo;
|
|
14
15
|
accountingReport: AccountingReportRepo;
|
|
15
|
-
|
|
16
|
+
actions: {
|
|
17
|
+
update: UpdateActionRepo;
|
|
18
|
+
};
|
|
19
|
+
adminAction: AdminActionRepo;
|
|
20
|
+
adminTransaction: AdminTransactionRepo;
|
|
16
21
|
assetTransaction: AssetTransactionRepo;
|
|
17
22
|
note: NoteRepo;
|
|
18
23
|
order: OrderRepo;
|
|
19
24
|
reservation: ReservationRepo;
|
|
20
|
-
transaction: TransactionRepo;
|
|
21
25
|
placeOrder: PlaceOrderRepo;
|
|
22
26
|
returnOrder: ReturnOrderRepo;
|
|
23
27
|
}
|
|
@@ -71,13 +71,13 @@ function deleteTransactionById(params) {
|
|
|
71
71
|
let deletedReservationNumbers = [];
|
|
72
72
|
let deleteActionResult;
|
|
73
73
|
let deleteOrderResult;
|
|
74
|
-
const action = await repos.
|
|
74
|
+
const action = await repos.actions.update.startUpdateAction(actionAttributes);
|
|
75
75
|
try {
|
|
76
76
|
const transactionTypeOf = transaction.typeOf;
|
|
77
77
|
switch (transactionTypeOf) {
|
|
78
78
|
case factory_1.factory.transactionType.PlaceOrder: {
|
|
79
79
|
// 取引に対する全ての承認アクションを検索
|
|
80
|
-
const authorizeActions = await repos.
|
|
80
|
+
const authorizeActions = await repos.adminAction.searchByPurpose({
|
|
81
81
|
typeOf: factory_1.factory.actionType.AuthorizeAction,
|
|
82
82
|
purpose: {
|
|
83
83
|
typeOf: transactionTypeOf,
|
|
@@ -111,7 +111,7 @@ function deleteTransactionById(params) {
|
|
|
111
111
|
deleteReservationsByPlaceOrderResult.deleteCancelReservationTransactionResult;
|
|
112
112
|
deletedReservationNumbers = deleteReservationsByPlaceOrderResult.reserveTransactionNumbers;
|
|
113
113
|
// アクション削除(2023-05-19~)
|
|
114
|
-
deleteActionResult = await repos.
|
|
114
|
+
deleteActionResult = await repos.adminAction.deleteActionsByTransactionId({
|
|
115
115
|
project: { id: transaction.project.id },
|
|
116
116
|
transaction: { id: transaction.id, typeOf: transactionTypeOf },
|
|
117
117
|
typeOf: {
|
|
@@ -132,13 +132,13 @@ function deleteTransactionById(params) {
|
|
|
132
132
|
// })(repos);
|
|
133
133
|
// deleteMessagessResult = deleteMessagesByPlaceOrderResult.deleteResult;
|
|
134
134
|
// 取引削除
|
|
135
|
-
await repos.
|
|
135
|
+
await repos.adminTransaction.findByIdAndDelete({ id: transaction.id });
|
|
136
136
|
break;
|
|
137
137
|
}
|
|
138
138
|
// implemented(2022-06-09~)
|
|
139
139
|
case factory_1.factory.transactionType.ReturnOrder:
|
|
140
140
|
// 取引削除
|
|
141
|
-
await repos.
|
|
141
|
+
await repos.adminTransaction.findByIdAndDelete({ id: transaction.id });
|
|
142
142
|
break;
|
|
143
143
|
default:
|
|
144
144
|
throw new factory_1.factory.errors.NotImplemented(`${transactionTypeOf} not implemented`);
|
|
@@ -146,7 +146,7 @@ function deleteTransactionById(params) {
|
|
|
146
146
|
}
|
|
147
147
|
catch (error) {
|
|
148
148
|
try {
|
|
149
|
-
await repos.
|
|
149
|
+
await repos.actions.update.giveUpUpdateAction({ typeOf: action.typeOf, id: action.id, error });
|
|
150
150
|
}
|
|
151
151
|
catch (__) {
|
|
152
152
|
// 失敗したら仕方ない
|
|
@@ -166,6 +166,6 @@ function deleteTransactionById(params) {
|
|
|
166
166
|
deleteOrderResult // 2026-07-10~
|
|
167
167
|
// ...(deleteMessagessResult !== undefined) ? { deleteMessagessResult } : undefined
|
|
168
168
|
};
|
|
169
|
-
await repos.
|
|
169
|
+
await repos.actions.update.completeUpdateAction({ typeOf: action.typeOf, id: action.id, result: actionResult });
|
|
170
170
|
};
|
|
171
171
|
}
|
|
@@ -128,7 +128,7 @@ function confirm(params, options) {
|
|
|
128
128
|
const payTransactionNumbers = authorizePaymentActions.map((authorizeAction) => authorizeAction.object.paymentMethodId);
|
|
129
129
|
// const payTransactionNumbers = authorizePaymentActions.map(({ instrument }) => instrument.transactionNumber);
|
|
130
130
|
if (payTransactionNumbers.length > 0) {
|
|
131
|
-
payTransactions = await repos.assetTransaction.
|
|
131
|
+
payTransactions = await repos.assetTransaction.findAssetTransactionsByTypeOf({
|
|
132
132
|
typeOf: factory_1.factory.assetTransactionType.Pay,
|
|
133
133
|
transactionNumber: { $in: payTransactionNumbers }
|
|
134
134
|
}, ['object']);
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { factory } from '../../../../factory';
|
|
2
2
|
import type { ISetting } from '../../../../repo/setting';
|
|
3
|
-
type IPlaceOrderPotentialTask = factory.task.IAttributes<factory.taskName.PlaceOrder> | factory.task.
|
|
3
|
+
type IPlaceOrderPotentialTask = factory.task.IAttributes<factory.taskName.PlaceOrder> | factory.task.IAttributes<factory.taskName.VoidPayTransaction> | Omit<factory.task.voidReserveTransaction.IAttributes, 'expires'>;
|
|
4
4
|
/**
|
|
5
5
|
* 取引のタスクを作成する
|
|
6
|
+
* 取引削除タスクを分離(2026-08-02~)
|
|
6
7
|
*/
|
|
7
|
-
export declare function
|
|
8
|
+
export declare function createImmediateTasks(params: {
|
|
8
9
|
transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'endDate' | 'id' | 'object' | 'project' | 'seller' | 'startDate' | 'status' | 'typeOf'>;
|
|
9
|
-
|
|
10
|
-
}
|
|
10
|
+
taskRunsAt: Date;
|
|
11
|
+
}): IPlaceOrderPotentialTask[];
|
|
12
|
+
export declare function createScheduledTasks(params: {
|
|
13
|
+
transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'endDate' | 'id' | 'object' | 'project' | 'status' | 'typeOf'>;
|
|
14
|
+
}, setting: Pick<ISetting, 'storage'> | null): factory.task.deleteTransaction.IAttributes;
|
|
11
15
|
export {};
|
|
@@ -3,114 +3,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.createImmediateTasks = createImmediateTasks;
|
|
7
|
+
exports.createScheduledTasks = createScheduledTasks;
|
|
7
8
|
const moment_1 = __importDefault(require("moment"));
|
|
8
9
|
const factory_1 = require("../../../../factory");
|
|
9
10
|
/**
|
|
10
11
|
* 取引のタスクを作成する
|
|
12
|
+
* 取引削除タスクを分離(2026-08-02~)
|
|
11
13
|
*/
|
|
12
|
-
function
|
|
14
|
+
function createImmediateTasks(params) {
|
|
13
15
|
const taskAttributes = [];
|
|
14
16
|
const transaction = params.transaction;
|
|
15
|
-
const taskRunsAt = params.
|
|
17
|
+
const taskRunsAt = params.taskRunsAt;
|
|
16
18
|
// 取引通知は廃止(2026-06-29~)
|
|
17
|
-
// const informTransaction = setting?.onTransactionStatusChanged?.informTransaction;
|
|
18
|
-
// const transactionWebhookUrls = (Array.isArray(informTransaction)) ? informTransaction : [];
|
|
19
|
-
// const triggerWebhookTaskAttributes: factory.task.IAttributes<factory.taskName.TriggerWebhook>[] = [];
|
|
20
|
-
// transactionWebhookUrls.forEach(({ recipient }) => {
|
|
21
|
-
// if (typeof recipient?.url === 'string') {
|
|
22
|
-
// const informObject: factory.notification.transaction.IPlaceOrderAsNotification = {
|
|
23
|
-
// id: transaction.id,
|
|
24
|
-
// typeOf: transaction.typeOf,
|
|
25
|
-
// project: transaction.project,
|
|
26
|
-
// seller: transaction.seller,
|
|
27
|
-
// startDate: transaction.startDate,
|
|
28
|
-
// status: transaction.status,
|
|
29
|
-
// ...(transaction.endDate !== undefined) ? { endDate: transaction.endDate } : undefined
|
|
30
|
-
// };
|
|
31
|
-
// const data: factory.task.triggerWebhook.IInformAnyResourceAction = {
|
|
32
|
-
// object: informObject,
|
|
33
|
-
// recipient: {
|
|
34
|
-
// id: (typeof recipient?.id === 'string') ? recipient.id : '',
|
|
35
|
-
// name: recipient?.name,
|
|
36
|
-
// typeOf: factory.creativeWorkType.WebApplication
|
|
37
|
-
// // url: recipient.url // discontinue(2025-02-13~)
|
|
38
|
-
// },
|
|
39
|
-
// target: {
|
|
40
|
-
// httpMethod: 'POST',
|
|
41
|
-
// encodingType: factory.encodingFormat.Application.json,
|
|
42
|
-
// typeOf: 'EntryPoint',
|
|
43
|
-
// urlTemplate: recipient.url
|
|
44
|
-
// }
|
|
45
|
-
// };
|
|
46
|
-
// triggerWebhookTaskAttributes.push({
|
|
47
|
-
// project: transaction.project,
|
|
48
|
-
// name: factory.taskName.TriggerWebhook,
|
|
49
|
-
// status: factory.taskStatus.Ready,
|
|
50
|
-
// runsAt: taskRunsAt,
|
|
51
|
-
// remainingNumberOfTries: 3,
|
|
52
|
-
// numberOfTried: 0,
|
|
53
|
-
// executionResults: [],
|
|
54
|
-
// data
|
|
55
|
-
// });
|
|
56
|
-
// }
|
|
57
|
-
// });
|
|
58
|
-
const confirmedStoragePeriodInDays = setting?.storage?.transactionConfirmedInDays;
|
|
59
|
-
const canceledStoragePeriodInDays = setting?.storage?.transactionCanceledInDays;
|
|
60
|
-
if (typeof confirmedStoragePeriodInDays !== 'number') {
|
|
61
|
-
throw new factory_1.factory.errors.NotFound('setting.storage.confirmedStoragePeriodInDays');
|
|
62
|
-
}
|
|
63
|
-
if (typeof canceledStoragePeriodInDays !== 'number') {
|
|
64
|
-
throw new factory_1.factory.errors.NotFound('setting.storage.canceledStoragePeriodInDays');
|
|
65
|
-
}
|
|
66
|
-
// 取引削除タスクを作成(取引ステータスによってrunsAtを調整)
|
|
67
|
-
// let deleteAt = moment(transaction.endDate)
|
|
68
|
-
// .add(settings.transaction.confirmedStoragePeriodInDays, 'days')
|
|
69
|
-
// .toDate();
|
|
70
|
-
let deleteAt = (0, moment_1.default)(transaction.endDate)
|
|
71
|
-
.add(confirmedStoragePeriodInDays, 'days')
|
|
72
|
-
.toDate();
|
|
73
|
-
switch (transaction.status) {
|
|
74
|
-
case factory_1.factory.transactionStatusType.Confirmed:
|
|
75
|
-
break;
|
|
76
|
-
case factory_1.factory.transactionStatusType.Canceled:
|
|
77
|
-
case factory_1.factory.transactionStatusType.Expired:
|
|
78
|
-
// deleteAt = moment(transaction.endDate)
|
|
79
|
-
// .add(settings.transaction.canceledStoragePeriodInDays, 'days')
|
|
80
|
-
// .toDate();
|
|
81
|
-
deleteAt = (0, moment_1.default)(transaction.endDate)
|
|
82
|
-
.add(canceledStoragePeriodInDays, 'days')
|
|
83
|
-
.toDate();
|
|
84
|
-
break;
|
|
85
|
-
default:
|
|
86
|
-
}
|
|
87
|
-
const deleteTransactionTask = {
|
|
88
|
-
project: transaction.project,
|
|
89
|
-
name: factory_1.factory.taskName.DeleteTransaction,
|
|
90
|
-
status: factory_1.factory.taskStatus.Ready,
|
|
91
|
-
runsAt: deleteAt,
|
|
92
|
-
remainingNumberOfTries: 3,
|
|
93
|
-
numberOfTried: 0,
|
|
94
|
-
executionResults: [],
|
|
95
|
-
data: {
|
|
96
|
-
object: {
|
|
97
|
-
specifyingMethod: factory_1.factory.action.update.deleteAction.ObjectAsTransactionSpecifyingMethod.Id,
|
|
98
|
-
id: transaction.id,
|
|
99
|
-
object: {
|
|
100
|
-
...(typeof transaction.object.confirmationNumber === 'string')
|
|
101
|
-
? { confirmationNumber: transaction.object.confirmationNumber }
|
|
102
|
-
: undefined,
|
|
103
|
-
...(typeof transaction.object.orderNumber === 'string')
|
|
104
|
-
? { orderNumber: transaction.object.orderNumber }
|
|
105
|
-
: undefined
|
|
106
|
-
},
|
|
107
|
-
// project: transaction.project,
|
|
108
|
-
// startDate: transaction.startDate,
|
|
109
|
-
typeOf: transaction.typeOf,
|
|
110
|
-
// ...(transaction.endDate !== undefined) ? { endDate: transaction.endDate } : undefined
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
};
|
|
114
19
|
// 確定取引にも興行オファー承認中止タスクを追加(2023-05-09~)
|
|
115
20
|
const voidReserveTaskAttributes = {
|
|
116
21
|
project: transaction.project,
|
|
@@ -121,7 +26,6 @@ function createTasks(params, setting) {
|
|
|
121
26
|
numberOfTried: 0,
|
|
122
27
|
executionResults: [],
|
|
123
28
|
data: {
|
|
124
|
-
// project: transaction.project, // discontinue(2025-03-12~)
|
|
125
29
|
purpose: { typeOf: transaction.typeOf, id: transaction.id }
|
|
126
30
|
}
|
|
127
31
|
};
|
|
@@ -135,11 +39,9 @@ function createTasks(params, setting) {
|
|
|
135
39
|
numberOfTried: 0,
|
|
136
40
|
executionResults: [],
|
|
137
41
|
data: {
|
|
138
|
-
// project: transaction.project, // discontinue(2025-03-12~)
|
|
139
42
|
purpose: { typeOf: transaction.typeOf, id: transaction.id }
|
|
140
43
|
}
|
|
141
44
|
};
|
|
142
|
-
taskAttributes.push(deleteTransactionTask);
|
|
143
45
|
switch (transaction.status) {
|
|
144
46
|
case factory_1.factory.transactionStatusType.Confirmed: {
|
|
145
47
|
taskAttributes.push(voidReserveTaskAttributes, voidPaymentTaskAttributes);
|
|
@@ -188,3 +90,53 @@ function createTasks(params, setting) {
|
|
|
188
90
|
}
|
|
189
91
|
return taskAttributes;
|
|
190
92
|
}
|
|
93
|
+
function createScheduledTasks(params, setting) {
|
|
94
|
+
const transaction = params.transaction;
|
|
95
|
+
const confirmedStoragePeriodInDays = setting?.storage?.transactionConfirmedInDays;
|
|
96
|
+
const canceledStoragePeriodInDays = setting?.storage?.transactionCanceledInDays;
|
|
97
|
+
if (typeof confirmedStoragePeriodInDays !== 'number') {
|
|
98
|
+
throw new factory_1.factory.errors.NotFound('setting.storage.confirmedStoragePeriodInDays');
|
|
99
|
+
}
|
|
100
|
+
if (typeof canceledStoragePeriodInDays !== 'number') {
|
|
101
|
+
throw new factory_1.factory.errors.NotFound('setting.storage.canceledStoragePeriodInDays');
|
|
102
|
+
}
|
|
103
|
+
// 取引削除タスクを作成(取引ステータスによってrunsAtを調整)
|
|
104
|
+
let deleteAt = (0, moment_1.default)(transaction.endDate)
|
|
105
|
+
.add(confirmedStoragePeriodInDays, 'days')
|
|
106
|
+
.toDate();
|
|
107
|
+
switch (transaction.status) {
|
|
108
|
+
case factory_1.factory.transactionStatusType.Confirmed:
|
|
109
|
+
break;
|
|
110
|
+
case factory_1.factory.transactionStatusType.Canceled:
|
|
111
|
+
case factory_1.factory.transactionStatusType.Expired:
|
|
112
|
+
deleteAt = (0, moment_1.default)(transaction.endDate)
|
|
113
|
+
.add(canceledStoragePeriodInDays, 'days')
|
|
114
|
+
.toDate();
|
|
115
|
+
break;
|
|
116
|
+
default:
|
|
117
|
+
}
|
|
118
|
+
return {
|
|
119
|
+
project: transaction.project,
|
|
120
|
+
name: factory_1.factory.taskName.DeleteTransaction,
|
|
121
|
+
status: factory_1.factory.taskStatus.Ready,
|
|
122
|
+
runsAt: deleteAt,
|
|
123
|
+
remainingNumberOfTries: 3,
|
|
124
|
+
numberOfTried: 0,
|
|
125
|
+
executionResults: [],
|
|
126
|
+
data: {
|
|
127
|
+
object: {
|
|
128
|
+
specifyingMethod: factory_1.factory.action.update.deleteAction.ObjectAsTransactionSpecifyingMethod.Id,
|
|
129
|
+
id: transaction.id,
|
|
130
|
+
object: {
|
|
131
|
+
...(typeof transaction.object.confirmationNumber === 'string')
|
|
132
|
+
? { confirmationNumber: transaction.object.confirmationNumber }
|
|
133
|
+
: undefined,
|
|
134
|
+
...(typeof transaction.object.orderNumber === 'string')
|
|
135
|
+
? { orderNumber: transaction.object.orderNumber }
|
|
136
|
+
: undefined
|
|
137
|
+
},
|
|
138
|
+
typeOf: transaction.typeOf,
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { SettingRepo } from '../../../repo/setting';
|
|
2
|
+
import type { ScheduledTaskRepo } from '../../../repo/scheduledTask';
|
|
2
3
|
import type { TaskRepo } from '../../../repo/task';
|
|
3
4
|
import type { PlaceOrderRepo } from '../../../repo/transaction/placeOrder';
|
|
4
5
|
interface IExportTasksByIdRepos {
|
|
5
6
|
setting: SettingRepo;
|
|
7
|
+
scheduledTask: ScheduledTaskRepo;
|
|
6
8
|
task: TaskRepo;
|
|
7
9
|
placeOrder: PlaceOrderRepo;
|
|
8
10
|
}
|
|
@@ -11,9 +11,7 @@ const factory_2 = require("./exportTasks/factory");
|
|
|
11
11
|
* 取引のタスクを出力します
|
|
12
12
|
*/
|
|
13
13
|
function exportTasksById(params) {
|
|
14
|
-
return async (repos
|
|
15
|
-
// settings: Settings
|
|
16
|
-
) => {
|
|
14
|
+
return async (repos) => {
|
|
17
15
|
const transaction = await repos.placeOrder.findPlaceOrderById({
|
|
18
16
|
typeOf: factory_1.factory.transactionType.PlaceOrder,
|
|
19
17
|
id: params.id
|
|
@@ -27,12 +25,18 @@ function exportTasksById(params) {
|
|
|
27
25
|
}
|
|
28
26
|
// search settings
|
|
29
27
|
const setting = await repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['storage']);
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
)
|
|
36
|
-
await repos.task.saveMany(
|
|
28
|
+
const deleteTransactionTaskExpiresInDays = setting?.storage?.deleteTransactionTaskExpiresInDays;
|
|
29
|
+
if (typeof deleteTransactionTaskExpiresInDays !== 'number') {
|
|
30
|
+
throw new factory_1.factory.errors.Internal('settings.storage.deleteTransactionTaskExpiresInDays required');
|
|
31
|
+
}
|
|
32
|
+
const deleteTask = (0, factory_2.createScheduledTasks)({ transaction }, setting);
|
|
33
|
+
// support scheduledTask(2026-08-02~)
|
|
34
|
+
await repos.task.saveMany((0, factory_2.createImmediateTasks)({ transaction, taskRunsAt }));
|
|
35
|
+
await repos.scheduledTask.addScheduledTasks([{
|
|
36
|
+
...deleteTask,
|
|
37
|
+
expires: (0, moment_1.default)(deleteTask.runsAt)
|
|
38
|
+
.add(deleteTransactionTaskExpiresInDays, 'days')
|
|
39
|
+
.toDate()
|
|
40
|
+
}]);
|
|
37
41
|
};
|
|
38
42
|
}
|
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
import type { ISetting } from '../../../../repo/setting';
|
|
2
2
|
import { factory } from '../../../../factory';
|
|
3
|
+
type IReturnOrderPotentialTask = factory.task.IAttributes<factory.taskName.ReturnOrder>;
|
|
3
4
|
/**
|
|
4
5
|
* 取引のタスクを作成する
|
|
6
|
+
* 取引削除タスクを分離(2026-08-02~)
|
|
5
7
|
*/
|
|
6
|
-
export declare function
|
|
8
|
+
export declare function createImmediateTasks(params: {
|
|
7
9
|
transaction: Pick<factory.transaction.ITransaction<factory.transactionType.ReturnOrder>, 'endDate' | 'status' | 'id' | 'project' | 'typeOf' | 'startDate' | 'object' | 'potentialActions'>;
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
+
taskRunsAt: Date;
|
|
11
|
+
}): IReturnOrderPotentialTask[];
|
|
12
|
+
/**
|
|
13
|
+
* 取引のタスクを作成する
|
|
14
|
+
* 取引削除タスクを分離(2026-08-02~)
|
|
15
|
+
*/
|
|
16
|
+
export declare function createScheduledTasks(params: {
|
|
17
|
+
transaction: Pick<factory.transaction.ITransaction<factory.transactionType.ReturnOrder>, 'endDate' | 'status' | 'id' | 'project' | 'typeOf' | 'object'>;
|
|
18
|
+
}, setting: Pick<ISetting, 'storage'> | null): factory.task.deleteTransaction.IAttributes;
|
|
19
|
+
export {};
|
|
@@ -3,18 +3,60 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.createImmediateTasks = createImmediateTasks;
|
|
7
|
+
exports.createScheduledTasks = createScheduledTasks;
|
|
7
8
|
const moment_1 = __importDefault(require("moment"));
|
|
8
9
|
const factory_1 = require("../../../../factory");
|
|
9
10
|
/**
|
|
10
11
|
* 取引のタスクを作成する
|
|
12
|
+
* 取引削除タスクを分離(2026-08-02~)
|
|
11
13
|
*/
|
|
12
|
-
function
|
|
13
|
-
// settings: Settings
|
|
14
|
-
) {
|
|
14
|
+
function createImmediateTasks(params) {
|
|
15
15
|
const taskAttributes = [];
|
|
16
16
|
const transaction = params.transaction;
|
|
17
|
-
const taskRunsAt = params.
|
|
17
|
+
const taskRunsAt = params.taskRunsAt;
|
|
18
|
+
switch (transaction.status) {
|
|
19
|
+
case factory_1.factory.transactionStatusType.Confirmed: {
|
|
20
|
+
const returnOrderPotentialActions = transaction.potentialActions?.returnOrder;
|
|
21
|
+
if (Array.isArray(returnOrderPotentialActions)) {
|
|
22
|
+
// 返品タスク
|
|
23
|
+
const returnOrderTask = returnOrderPotentialActions.map((r) => {
|
|
24
|
+
// data最適化(2023-08-22~)
|
|
25
|
+
const returnOrderTaskData = {
|
|
26
|
+
agent: r.agent,
|
|
27
|
+
object: r.object,
|
|
28
|
+
project: transaction.project,
|
|
29
|
+
typeOf: r.typeOf
|
|
30
|
+
};
|
|
31
|
+
return {
|
|
32
|
+
project: transaction.project,
|
|
33
|
+
name: factory_1.factory.taskName.ReturnOrder,
|
|
34
|
+
status: factory_1.factory.taskStatus.Ready,
|
|
35
|
+
runsAt: taskRunsAt,
|
|
36
|
+
remainingNumberOfTries: 10,
|
|
37
|
+
numberOfTried: 0,
|
|
38
|
+
executionResults: [],
|
|
39
|
+
data: returnOrderTaskData
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
taskAttributes.push(...returnOrderTask);
|
|
43
|
+
}
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
case factory_1.factory.transactionStatusType.Expired:
|
|
47
|
+
// 特にタスクなし
|
|
48
|
+
break;
|
|
49
|
+
default:
|
|
50
|
+
throw new factory_1.factory.errors.NotImplemented(`Transaction status "${transaction.status}" not implemented.`);
|
|
51
|
+
}
|
|
52
|
+
return taskAttributes;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* 取引のタスクを作成する
|
|
56
|
+
* 取引削除タスクを分離(2026-08-02~)
|
|
57
|
+
*/
|
|
58
|
+
function createScheduledTasks(params, setting) {
|
|
59
|
+
const transaction = params.transaction;
|
|
18
60
|
const confirmedStoragePeriodInDays = setting?.storage?.transactionConfirmedInDays;
|
|
19
61
|
const canceledStoragePeriodInDays = setting?.storage?.transactionCanceledInDays;
|
|
20
62
|
if (typeof confirmedStoragePeriodInDays !== 'number') {
|
|
@@ -24,9 +66,6 @@ function createTasks(params, setting
|
|
|
24
66
|
throw new factory_1.factory.errors.NotFound('setting.storage.canceledStoragePeriodInDays');
|
|
25
67
|
}
|
|
26
68
|
// 取引削除タスクを作成(取引ステータスによってrunsAtを調整)
|
|
27
|
-
// let deleteAt = moment(transaction.endDate)
|
|
28
|
-
// .add(settings.transaction.confirmedStoragePeriodInDays, 'days')
|
|
29
|
-
// .toDate();
|
|
30
69
|
let deleteAt = (0, moment_1.default)(transaction.endDate)
|
|
31
70
|
.add(confirmedStoragePeriodInDays, 'days')
|
|
32
71
|
.toDate();
|
|
@@ -35,16 +74,13 @@ function createTasks(params, setting
|
|
|
35
74
|
break;
|
|
36
75
|
case factory_1.factory.transactionStatusType.Canceled:
|
|
37
76
|
case factory_1.factory.transactionStatusType.Expired:
|
|
38
|
-
// deleteAt = moment(transaction.endDate)
|
|
39
|
-
// .add(settings.transaction.canceledStoragePeriodInDays, 'days')
|
|
40
|
-
// .toDate();
|
|
41
77
|
deleteAt = (0, moment_1.default)(transaction.endDate)
|
|
42
78
|
.add(canceledStoragePeriodInDays, 'days')
|
|
43
79
|
.toDate();
|
|
44
80
|
break;
|
|
45
81
|
default:
|
|
46
82
|
}
|
|
47
|
-
|
|
83
|
+
return {
|
|
48
84
|
project: transaction.project,
|
|
49
85
|
name: factory_1.factory.taskName.DeleteTransaction,
|
|
50
86
|
status: factory_1.factory.taskStatus.Ready,
|
|
@@ -59,47 +95,8 @@ function createTasks(params, setting
|
|
|
59
95
|
object: {
|
|
60
96
|
order: transaction.object.order
|
|
61
97
|
},
|
|
62
|
-
// project: transaction.project,
|
|
63
|
-
// startDate: transaction.startDate,
|
|
64
98
|
typeOf: transaction.typeOf,
|
|
65
|
-
// ...(transaction.endDate !== undefined) ? { endDate: transaction.endDate } : undefined
|
|
66
99
|
}
|
|
67
100
|
}
|
|
68
101
|
};
|
|
69
|
-
taskAttributes.push(deleteTransactionTask);
|
|
70
|
-
switch (transaction.status) {
|
|
71
|
-
case factory_1.factory.transactionStatusType.Confirmed: {
|
|
72
|
-
const returnOrderPotentialActions = transaction.potentialActions?.returnOrder;
|
|
73
|
-
if (Array.isArray(returnOrderPotentialActions)) {
|
|
74
|
-
// 返品タスク
|
|
75
|
-
const returnOrderTask = returnOrderPotentialActions.map((r) => {
|
|
76
|
-
// data最適化(2023-08-22~)
|
|
77
|
-
const returnOrderTaskData = {
|
|
78
|
-
agent: r.agent,
|
|
79
|
-
object: r.object,
|
|
80
|
-
project: transaction.project,
|
|
81
|
-
typeOf: r.typeOf
|
|
82
|
-
};
|
|
83
|
-
return {
|
|
84
|
-
project: transaction.project,
|
|
85
|
-
name: factory_1.factory.taskName.ReturnOrder,
|
|
86
|
-
status: factory_1.factory.taskStatus.Ready,
|
|
87
|
-
runsAt: taskRunsAt,
|
|
88
|
-
remainingNumberOfTries: 10,
|
|
89
|
-
numberOfTried: 0,
|
|
90
|
-
executionResults: [],
|
|
91
|
-
data: returnOrderTaskData
|
|
92
|
-
};
|
|
93
|
-
});
|
|
94
|
-
taskAttributes.push(...returnOrderTask);
|
|
95
|
-
}
|
|
96
|
-
break;
|
|
97
|
-
}
|
|
98
|
-
case factory_1.factory.transactionStatusType.Expired:
|
|
99
|
-
// 特にタスクなし
|
|
100
|
-
break;
|
|
101
|
-
default:
|
|
102
|
-
throw new factory_1.factory.errors.NotImplemented(`Transaction status "${transaction.status}" not implemented.`);
|
|
103
|
-
}
|
|
104
|
-
return taskAttributes;
|
|
105
102
|
}
|
|
@@ -11,6 +11,7 @@ import type { ReservationRepo } from '../../repo/reservation';
|
|
|
11
11
|
import type { SellerRepo } from '../../repo/seller';
|
|
12
12
|
import type { SellerReturnPolicyRepo } from '../../repo/sellerReturnPolicy';
|
|
13
13
|
import type { SettingRepo } from '../../repo/setting';
|
|
14
|
+
import type { ScheduledTaskRepo } from '../../repo/scheduledTask';
|
|
14
15
|
import type { TaskRepo } from '../../repo/task';
|
|
15
16
|
import type { IStartedTransaction, ReturnOrderRepo } from '../../repo/transaction/returnOrder';
|
|
16
17
|
import { preStart } from './returnOrder/preStart';
|
|
@@ -30,6 +31,7 @@ interface IStartOperationRepos {
|
|
|
30
31
|
type IStartOperation<T> = (repos: IStartOperationRepos) => Promise<T>;
|
|
31
32
|
interface IExportTasksByIdRepos {
|
|
32
33
|
setting: SettingRepo;
|
|
34
|
+
scheduledTask: ScheduledTaskRepo;
|
|
33
35
|
task: TaskRepo;
|
|
34
36
|
returnOrder: ReturnOrderRepo;
|
|
35
37
|
}
|
|
@@ -79,9 +79,7 @@ function saveMessagesIfNeeded(params) {
|
|
|
79
79
|
* 取引確定
|
|
80
80
|
*/
|
|
81
81
|
function confirm(params) {
|
|
82
|
-
return async (repos
|
|
83
|
-
// settings: Settings
|
|
84
|
-
) => {
|
|
82
|
+
return async (repos) => {
|
|
85
83
|
const transaction = await repos.returnOrder.findReturnOrderById({ typeOf: factory_1.factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'agent', 'object', 'result']);
|
|
86
84
|
if (transaction.status === factory_1.factory.transactionStatusType.Confirmed) {
|
|
87
85
|
// すでに確定済の場合
|
|
@@ -158,9 +156,7 @@ function confirm(params) {
|
|
|
158
156
|
* この関数では、取引のタスクエクスポートステータスは見ません
|
|
159
157
|
*/
|
|
160
158
|
function exportTasksById(params) {
|
|
161
|
-
return async (repos
|
|
162
|
-
// settings: Settings
|
|
163
|
-
) => {
|
|
159
|
+
return async (repos) => {
|
|
164
160
|
const transaction = await repos.returnOrder.findReturnOrderById({ typeOf: factory_1.factory.transactionType.ReturnOrder, id: params.id }, ['typeOf', 'status', 'project', 'endDate', 'startDate', 'object', 'potentialActions']);
|
|
165
161
|
// タスク実行日時バッファの指定があれば調整
|
|
166
162
|
let taskRunsAt = new Date();
|
|
@@ -171,12 +167,18 @@ function exportTasksById(params) {
|
|
|
171
167
|
}
|
|
172
168
|
// search settings
|
|
173
169
|
const setting = await repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['storage']);
|
|
174
|
-
const
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
)
|
|
180
|
-
await repos.task.saveMany(
|
|
170
|
+
const deleteTransactionTaskExpiresInDays = setting?.storage?.deleteTransactionTaskExpiresInDays;
|
|
171
|
+
if (typeof deleteTransactionTaskExpiresInDays !== 'number') {
|
|
172
|
+
throw new factory_1.factory.errors.Internal('settings.storage.deleteTransactionTaskExpiresInDays required');
|
|
173
|
+
}
|
|
174
|
+
const deleteTask = (0, factory_2.createScheduledTasks)({ transaction }, setting);
|
|
175
|
+
// support scheduledTask(2026-08-02~)
|
|
176
|
+
await repos.task.saveMany((0, factory_2.createImmediateTasks)({ transaction, taskRunsAt }));
|
|
177
|
+
await repos.scheduledTask.addScheduledTasks([{
|
|
178
|
+
...deleteTask,
|
|
179
|
+
expires: (0, moment_timezone_1.default)(deleteTask.runsAt)
|
|
180
|
+
.add(deleteTransactionTaskExpiresInDays, 'days')
|
|
181
|
+
.toDate()
|
|
182
|
+
}]);
|
|
181
183
|
};
|
|
182
184
|
}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { factory } from '../factory';
|
|
5
5
|
import type { SettingRepo } from '../repo/setting';
|
|
6
|
+
import type { ScheduledTaskRepo } from '../repo/scheduledTask';
|
|
6
7
|
import type { TaskRepo } from '../repo/task';
|
|
7
8
|
import type { TransactionRepo } from '../repo/transaction';
|
|
8
9
|
import type { PlaceOrderRepo } from '../repo/transaction/placeOrder';
|
|
@@ -18,6 +19,7 @@ export import returnOrder = ReturnOrderTransactionService;
|
|
|
18
19
|
export { deleteTransaction };
|
|
19
20
|
export type IExportTasksOperation<T> = (repos: {
|
|
20
21
|
setting: SettingRepo;
|
|
22
|
+
scheduledTask: ScheduledTaskRepo;
|
|
21
23
|
task: TaskRepo;
|
|
22
24
|
placeOrder: PlaceOrderRepo;
|
|
23
25
|
returnOrder: ReturnOrderRepo;
|
|
@@ -52,7 +52,6 @@ function exportOneTransactionTasksIfExists(params) {
|
|
|
52
52
|
agent: { name: params.tasksExportAction.agent.name }
|
|
53
53
|
},
|
|
54
54
|
endDate: { $lt: params.endDate.$lt },
|
|
55
|
-
// ...(params.typeOf !== undefined) ? { typeOf: params.typeOf } : undefined,
|
|
56
55
|
...(typeof params.id === 'string') ? { id: params.id } : undefined,
|
|
57
56
|
...(typeof params.status?.$eq === 'string') ? { status: params.status } : undefined,
|
|
58
57
|
...(params.sort !== undefined) ? { sort: params.sort } : undefined
|
|
@@ -65,7 +64,6 @@ function exportOneTransactionTasksIfExists(params) {
|
|
|
65
64
|
case factory_1.factory.transactionType.PlaceOrder:
|
|
66
65
|
await PlaceOrderTransactionService.exportTasksById({
|
|
67
66
|
id: transaction.id,
|
|
68
|
-
// optimizeRedundantTasks: params.optimizeRedundantTasks === true,
|
|
69
67
|
...(typeof params.runsTasksAfterInSeconds === 'number')
|
|
70
68
|
? { runsTasksAfterInSeconds: params.runsTasksAfterInSeconds }
|
|
71
69
|
: undefined
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import type { AcceptedOfferRepo } from '../../repo/acceptedOffer';
|
|
2
2
|
import type { AssetTransactionRepo } from '../../repo/assetTransaction';
|
|
3
3
|
import type { OrderRepo } from '../../repo/order';
|
|
4
|
-
import type { SettingRepo } from '../../repo/setting';
|
|
5
|
-
import type { TaskRepo } from '../../repo/task';
|
|
6
4
|
export declare function validateOrder(params: {
|
|
7
5
|
orderNumber: string;
|
|
8
6
|
project: {
|
|
@@ -12,6 +10,4 @@ export declare function validateOrder(params: {
|
|
|
12
10
|
acceptedOffer: AcceptedOfferRepo;
|
|
13
11
|
assetTransaction: AssetTransactionRepo;
|
|
14
12
|
order: OrderRepo;
|
|
15
|
-
setting: SettingRepo;
|
|
16
|
-
task: TaskRepo;
|
|
17
13
|
}) => Promise<void>;
|