UNPKG

@chevre/domain

Version:

Chevre Domain Library for Node.js

91 lines (90 loc) 4.92 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.reserve = exports.registerService = exports.refund = exports.pay = exports.moneyTransfer = exports.cancelReservation = void 0; exports.exportOneTransactionTasksIfExists = exportOneTransactionTasksIfExists; const factory = require("../factory"); const CancelReservationTransactionService = require("./assetTransaction/cancelReservation"); const MoneyTransferTransactionService = require("./assetTransaction/moneyTransfer"); const PayTransactionService = require("./assetTransaction/pay"); const RefundTransactionService = require("./assetTransaction/refund"); const RegisterServiceTransactionService = require("./assetTransaction/registerService"); const ReserveTransactionService = require("./assetTransaction/reserve"); exports.cancelReservation = CancelReservationTransactionService; exports.moneyTransfer = MoneyTransferTransactionService; exports.pay = PayTransactionService; exports.refund = RefundTransactionService; exports.registerService = RegisterServiceTransactionService; exports.reserve = ReserveTransactionService; /** * reimplement as exportOneTransactionTasksIfExists(2025-03-18~) */ function exportOneTransactionTasksIfExists(params) { return (repos) => __awaiter(this, void 0, void 0, function* () { var _a; const transaction = yield repos.assetTransaction.startExportTasks(Object.assign(Object.assign(Object.assign({ tasksExportAction: { agent: { name: params.tasksExportAction.agent.name } }, endDate: { $lt: params.endDate.$lt } }, (typeof params.id === 'string') ? { id: params.id } : undefined), (typeof ((_a = params.status) === null || _a === void 0 ? void 0 : _a.$eq) === 'string') ? { status: params.status } : undefined), (params.sort !== undefined) ? { sort: params.sort } : undefined)); if (transaction === null) { return; } // let createdTasks: { id: string }[] = []; // 失敗してもここでは戻さない(RUNNINGのまま待機) switch (transaction.typeOf) { case factory.assetTransactionType.CancelReservation: // createdTasks = yield CancelReservationTransactionService.exportTasksById({ id: transaction.id // runsTasksAfterInSeconds: params.runsTasksAfterInSeconds })(repos); break; case factory.assetTransactionType.MoneyTransfer: // createdTasks = yield MoneyTransferTransactionService.exportTasksById({ id: transaction.id, runsTasksAfterInSeconds: params.runsTasksAfterInSeconds })(repos); break; case factory.assetTransactionType.Pay: // createdTasks = yield PayTransactionService.exportTasksById({ id: transaction.id, runsTasksAfterInSeconds: params.runsTasksAfterInSeconds })(repos); break; case factory.assetTransactionType.Refund: // createdTasks = yield RefundTransactionService.exportTasksById({ id: transaction.id, runsTasksAfterInSeconds: params.runsTasksAfterInSeconds })(repos); break; case factory.assetTransactionType.RegisterService: // createdTasks = yield RegisterServiceTransactionService.exportTasksById({ id: transaction.id // runsTasksAfterInSeconds: params.runsTasksAfterInSeconds })(repos); break; case factory.assetTransactionType.Reserve: // createdTasks = yield ReserveTransactionService.exportTasksById({ id: transaction.id // runsTasksAfterInSeconds: params.runsTasksAfterInSeconds })(repos); break; default: } yield repos.assetTransaction.setTasksExportedById({ id: transaction.id }); return transaction; // return createdTasks; }); }