@chevre/domain 22.0.0-alpha.8 → 22.0.0
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/aggregateAllEvents2.ts +13 -6
- package/example/src/chevre/aggregation/aggregateOffersOnEvent.ts +56 -52
- package/example/src/chevre/changeOrderStatus.ts +29 -0
- package/example/src/chevre/projectEventFieldsById.ts +35 -0
- package/example/src/chevre/projectOrderFieldsById.ts +41 -0
- package/example/src/chevre/searchEvents.ts +8 -7
- package/example/src/chevre/searchOrders.ts +14 -4
- package/example/src/chevre/sendGrid/filterEmailActivity.ts +33 -0
- package/lib/chevre/credentials/customSearch.d.ts +13 -0
- package/lib/chevre/credentials/customSearch.js +14 -0
- package/lib/chevre/credentials/lineNotify.d.ts +17 -0
- package/lib/chevre/credentials/lineNotify.js +16 -0
- package/lib/chevre/credentials/sendGrid.d.ts +11 -0
- package/lib/chevre/credentials/sendGrid.js +13 -0
- package/lib/chevre/credentials.d.ts +15 -18
- package/lib/chevre/credentials.js +42 -72
- package/lib/chevre/emailMessageBuilder.d.ts +3 -5
- package/lib/chevre/factory/event.d.ts +3 -1
- package/lib/chevre/index.d.ts +1 -0
- package/lib/chevre/repo/aggregateReservation.js +14 -4
- package/lib/chevre/repo/event.d.ts +13 -6
- package/lib/chevre/repo/event.js +58 -68
- package/lib/chevre/repo/order.d.ts +16 -7
- package/lib/chevre/repo/order.js +93 -56
- package/lib/chevre/repo/rateLimit/offer.js +0 -8
- package/lib/chevre/repo/stockHolder.js +0 -7
- package/lib/chevre/service/aggregation/event/aggregateOffers.d.ts +0 -2
- package/lib/chevre/service/aggregation/event/aggregateOffers.js +6 -4
- package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.d.ts +12 -1
- package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +5 -7
- package/lib/chevre/service/aggregation/event/aggregateUseActionsOnEvent.js +2 -2
- package/lib/chevre/service/aggregation/event/findEventOffers.d.ts +7 -3
- package/lib/chevre/service/assetTransaction/pay.js +1 -1
- package/lib/chevre/service/assetTransaction/reserve/confirm.js +2 -3
- package/lib/chevre/service/assetTransaction/reserve/exportTasksById.d.ts +2 -1
- package/lib/chevre/service/assetTransaction/reserve/exportTasksById.js +4 -4
- package/lib/chevre/service/assetTransaction/reserve/start/factory/createStartParams.js +4 -0
- package/lib/chevre/service/assetTransaction/reserve/start.d.ts +2 -2
- package/lib/chevre/service/assetTransaction/reserve/start.js +14 -15
- package/lib/chevre/service/assetTransaction/reserve/validateStartRequest.d.ts +1 -1
- package/lib/chevre/service/assetTransaction.d.ts +2 -1
- package/lib/chevre/service/assetTransaction.js +2 -2
- package/lib/chevre/service/notification.d.ts +14 -6
- package/lib/chevre/service/notification.js +24 -24
- package/lib/chevre/service/offer/event/authorize/factory.d.ts +1 -1
- package/lib/chevre/service/offer/event/authorize/factory.js +2 -1
- package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.d.ts +1 -1
- package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.js +4 -1
- package/lib/chevre/service/offer/event/authorize.js +9 -11
- package/lib/chevre/service/offer/event/searchEventTicketOffers.d.ts +1 -0
- package/lib/chevre/service/offer/event/searchEventTicketOffers.js +13 -5
- package/lib/chevre/service/offer/event/voidTransaction.d.ts +6 -4
- package/lib/chevre/service/offer/event/voidTransaction.js +16 -5
- package/lib/chevre/service/offer/event/voidTransactionByActionId.d.ts +4 -1
- package/lib/chevre/service/offer/event/voidTransactionByActionId.js +5 -1
- package/lib/chevre/service/offer/event.js +0 -1
- package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +6 -4
- package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +5 -3
- package/lib/chevre/service/offer/eventServiceByCOA/factory.d.ts +5 -2
- package/lib/chevre/service/offer/factory.js +2 -3
- package/lib/chevre/service/offer/onEventChanged.js +20 -22
- package/lib/chevre/service/offer/product/searchProductOffers.js +1 -6
- package/lib/chevre/service/offer.js +3 -2
- package/lib/chevre/service/order/createAccountingReportIfNotExist.d.ts +1 -1
- package/lib/chevre/service/order/deleteOrder.js +1 -1
- package/lib/chevre/service/order/onAssetTransactionStatusChanged.js +29 -18
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderInTransit.d.ts +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderProcessing/factory.d.ts +1 -1
- package/lib/chevre/service/order/returnOrder.js +1 -1
- package/lib/chevre/service/order/sendOrder.js +2 -2
- package/lib/chevre/service/payment/factory/createPayObjectServiceOutput.js +3 -6
- package/lib/chevre/service/payment/movieTicket/checkMovieTicket.js +6 -7
- package/lib/chevre/service/payment/movieTicket/factory.d.ts +13 -2
- package/lib/chevre/service/payment/movieTicket/factory.js +12 -5
- package/lib/chevre/service/payment/movieTicket/payMovieTicket.js +6 -2
- package/lib/chevre/service/payment/movieTicket/processPurchaseNumberAuth.d.ts +11 -1
- package/lib/chevre/service/payment/movieTicket/processPurchaseNumberAuth.js +12 -5
- package/lib/chevre/service/payment/movieTicket/validation.js +5 -5
- package/lib/chevre/service/payment.js +2 -2
- package/lib/chevre/service/reserve/searchByOrder.js +1 -1
- package/lib/chevre/service/task/acceptCOAOffer.js +8 -17
- package/lib/chevre/service/task/aggregateOffers.js +11 -13
- package/lib/chevre/service/task/aggregateUseActionsOnEvent.js +9 -9
- package/lib/chevre/service/task/authorizePayment.js +3 -3
- package/lib/chevre/service/task/cancelMoneyTransfer.js +5 -5
- package/lib/chevre/service/task/cancelPendingReservation.js +2 -2
- package/lib/chevre/service/task/cancelReservation.js +2 -2
- package/lib/chevre/service/task/confirmMoneyTransfer.js +6 -6
- package/lib/chevre/service/task/confirmPayTransaction.js +10 -14
- package/lib/chevre/service/task/confirmRegisterService.js +4 -4
- package/lib/chevre/service/task/confirmRegisterServiceTransaction.js +6 -6
- package/lib/chevre/service/task/confirmReserveTransaction.js +9 -17
- package/lib/chevre/service/task/createAccountingReport.js +5 -2
- package/lib/chevre/service/task/createEvent.js +5 -5
- package/lib/chevre/service/task/deleteTransaction.js +13 -13
- package/lib/chevre/service/task/givePointAward.js +7 -7
- package/lib/chevre/service/task/importEventCapacitiesFromCOA.js +4 -13
- package/lib/chevre/service/task/importEventsFromCOA.js +4 -13
- package/lib/chevre/service/task/importOffersFromCOA.js +5 -14
- package/lib/chevre/service/task/moneyTransfer.js +5 -5
- package/lib/chevre/service/task/onAssetTransactionStatusChanged.js +0 -3
- package/lib/chevre/service/task/onOrderPaymentCompleted.js +0 -3
- package/lib/chevre/service/task/pay.js +2 -2
- package/lib/chevre/service/task/placeOrder.js +2 -2
- package/lib/chevre/service/task/refund.js +2 -2
- package/lib/chevre/service/task/registerService.js +6 -6
- package/lib/chevre/service/task/reserve.js +2 -2
- package/lib/chevre/service/task/returnMoneyTransfer.js +9 -9
- package/lib/chevre/service/task/returnPayTransaction.js +12 -12
- package/lib/chevre/service/task/returnPointAward.js +7 -7
- package/lib/chevre/service/task/returnReserveTransaction.js +5 -14
- package/lib/chevre/service/task/sendEmailMessage.js +7 -7
- package/lib/chevre/service/task/sendOrder.js +2 -2
- package/lib/chevre/service/task/triggerWebhook.js +5 -5
- package/lib/chevre/service/task/voidMoneyTransferTransaction.js +6 -6
- package/lib/chevre/service/task/voidPayTransaction.js +2 -2
- package/lib/chevre/service/task/voidPayment.js +2 -2
- package/lib/chevre/service/task/voidRegisterServiceTransaction.js +6 -9
- package/lib/chevre/service/task/voidReserveTransaction.js +7 -15
- package/lib/chevre/service/task.d.ts +26 -9
- package/lib/chevre/service/task.js +6 -20
- package/lib/chevre/service/transaction/moneyTransfer.js +6 -3
- package/lib/chevre/service/transaction/placeOrder/confirm/validation/validateMovieTicket.js +60 -71
- package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +1 -1
- package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.d.ts +1 -1
- package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPointAward.d.ts +1 -1
- package/lib/chevre/service/transaction/returnOrder/potentialActions/sendEmailMessage.d.ts +1 -1
- package/lib/chevre/service/transaction/returnOrder/potentialActions.d.ts +4 -6
- package/lib/chevre/service/transaction/returnOrder/potentialActions.js +0 -28
- package/lib/chevre/service/transaction/returnOrder/preStart.js +5 -2
- package/lib/chevre/service/transaction/returnOrder.js +9 -6
- package/lib/chevre/service/validation/validateOrder.js +4 -2
- package/lib/chevre/settings.d.ts +34 -13
- package/lib/chevre/settings.js +6 -54
- package/package.json +3 -4
- package/lib/chevre/credentials/coa.d.ts +0 -17
- package/lib/chevre/credentials/coa.js +0 -17
|
@@ -30,7 +30,7 @@ exports.reserve = ReserveTransactionService;
|
|
|
30
30
|
* ひとつの取引のタスクをエクスポートする
|
|
31
31
|
*/
|
|
32
32
|
function exportTasks(params) {
|
|
33
|
-
return (repos) => __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
return (repos, settings) => __awaiter(this, void 0, void 0, function* () {
|
|
34
34
|
const transaction = yield repos.assetTransaction.startExportTasks(Object.assign({ typeOf: params.typeOf, status: params.status, tasksExportAction: {
|
|
35
35
|
agent: { name: params.tasksExportAction.agent.name }
|
|
36
36
|
} }, (typeof params.id === 'string') ? { id: params.id } : undefined));
|
|
@@ -74,7 +74,7 @@ function exportTasks(params) {
|
|
|
74
74
|
createdTasks = yield ReserveTransactionService.exportTasksById({
|
|
75
75
|
id: transaction.id
|
|
76
76
|
// runsTasksAfterInSeconds: params.runsTasksAfterInSeconds
|
|
77
|
-
})(repos);
|
|
77
|
+
})(repos, settings);
|
|
78
78
|
break;
|
|
79
79
|
default:
|
|
80
80
|
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LINENotifyCredentials } from '../credentials/lineNotify';
|
|
2
|
+
import { SendGridCredentials } from '../credentials/sendGrid';
|
|
2
3
|
import * as factory from '../factory';
|
|
3
4
|
import type { ActionRepo } from '../repo/action';
|
|
4
5
|
import type { MessageRepo } from '../repo/message';
|
|
5
6
|
import type { ProjectRepo } from '../repo/project';
|
|
6
|
-
type ILineNotifyOperation<T> = (repos: {
|
|
7
|
-
|
|
8
|
-
}
|
|
7
|
+
type ILineNotifyOperation<T> = (repos: {}, credentials: {
|
|
8
|
+
lineNotify: LINENotifyCredentials;
|
|
9
|
+
}) => Promise<T>;
|
|
9
10
|
/**
|
|
10
11
|
* Eメールメッセージを送信する
|
|
11
12
|
* https://sendgrid.com/docs/API_Reference/Web_API_v3/Mail/errors.html
|
|
@@ -18,6 +19,8 @@ declare function sendEmailMessage(params: factory.task.sendEmailMessage.IActionA
|
|
|
18
19
|
action: ActionRepo;
|
|
19
20
|
message: MessageRepo;
|
|
20
21
|
project: ProjectRepo;
|
|
22
|
+
}, credentials: {
|
|
23
|
+
sendGrid: SendGridCredentials;
|
|
21
24
|
}) => Promise<void>;
|
|
22
25
|
type LineNotifyLogLevel = 'log' | 'error' | 'info';
|
|
23
26
|
declare function lineNotify({ subject, content, imageThumbnail, imageFullsize, logLevel }: {
|
|
@@ -26,13 +29,18 @@ declare function lineNotify({ subject, content, imageThumbnail, imageFullsize, l
|
|
|
26
29
|
imageThumbnail?: string;
|
|
27
30
|
imageFullsize?: string;
|
|
28
31
|
logLevel: LineNotifyLogLevel;
|
|
32
|
+
}, options: {
|
|
33
|
+
timeout: number;
|
|
34
|
+
useFetchAPI: boolean;
|
|
29
35
|
}): ILineNotifyOperation<void>;
|
|
30
36
|
declare function triggerWebhook(params: factory.task.IData<factory.taskName.TriggerWebhook> & {
|
|
31
37
|
project: {
|
|
32
38
|
id: string;
|
|
33
39
|
};
|
|
40
|
+
}, options: {
|
|
41
|
+
timeout: number;
|
|
42
|
+
useFetchAPI: boolean;
|
|
34
43
|
}): (repos: {
|
|
35
44
|
action: ActionRepo;
|
|
36
|
-
|
|
37
|
-
}, settings: Settings) => Promise<void>;
|
|
45
|
+
}) => Promise<void>;
|
|
38
46
|
export { lineNotify, sendEmailMessage, triggerWebhook };
|
|
@@ -14,7 +14,6 @@ const sgMail = require("@sendgrid/mail");
|
|
|
14
14
|
const http_status_1 = require("http-status");
|
|
15
15
|
// import * as request from 'request';
|
|
16
16
|
const util = require("util");
|
|
17
|
-
const credentials_1 = require("../credentials");
|
|
18
17
|
const factory = require("../factory");
|
|
19
18
|
function createSendEmailMessageActionAttributes(params) {
|
|
20
19
|
var _a;
|
|
@@ -27,7 +26,7 @@ function createSendEmailMessageActionAttributes(params) {
|
|
|
27
26
|
*/
|
|
28
27
|
function sendEmailMessage(params) {
|
|
29
28
|
// tslint:disable-next-line:max-func-body-length
|
|
30
|
-
return (repos) => __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
return (repos, credentials) => __awaiter(this, void 0, void 0, function* () {
|
|
31
30
|
var _a, _b, _c, _d, _e;
|
|
32
31
|
const project = yield repos.project.findById({
|
|
33
32
|
id: params.project.id,
|
|
@@ -37,7 +36,7 @@ function sendEmailMessage(params) {
|
|
|
37
36
|
const action = yield repos.action.start(createSendEmailMessageActionAttributes(params));
|
|
38
37
|
let result = {};
|
|
39
38
|
try {
|
|
40
|
-
let apiKey =
|
|
39
|
+
let apiKey = credentials.sendGrid.apiKey;
|
|
41
40
|
// プロジェクト固有のSendGrid設定があれば、そちらを使用
|
|
42
41
|
if (typeof ((_a = project.settings) === null || _a === void 0 ? void 0 : _a.sendgridApiKey) === 'string' && project.settings.sendgridApiKey.length > 0) {
|
|
43
42
|
apiKey = project.settings.sendgridApiKey;
|
|
@@ -124,23 +123,23 @@ function sendEmailMessage(params) {
|
|
|
124
123
|
}
|
|
125
124
|
exports.sendEmailMessage = sendEmailMessage;
|
|
126
125
|
const MAX_LINE_NOTIFY_SUBJECT_LENGTH = 100;
|
|
127
|
-
function lineNotify({ subject, content, imageThumbnail, imageFullsize, logLevel }) {
|
|
128
|
-
return (
|
|
129
|
-
|
|
130
|
-
const LINE_NOTIFY_URL =
|
|
126
|
+
function lineNotify({ subject, content, imageThumbnail, imageFullsize, logLevel }, options) {
|
|
127
|
+
return (__, credentials) => __awaiter(this, void 0, void 0, function* () {
|
|
128
|
+
const { timeout, useFetchAPI } = options;
|
|
129
|
+
const LINE_NOTIFY_URL = credentials.lineNotify.url;
|
|
131
130
|
if (typeof LINE_NOTIFY_URL !== 'string') {
|
|
132
131
|
throw new factory.errors.Internal('Environment variable LINE_NOTIFY_URL not set');
|
|
133
132
|
}
|
|
134
133
|
let accessToken;
|
|
135
134
|
switch (logLevel) {
|
|
136
135
|
case 'error':
|
|
137
|
-
accessToken =
|
|
136
|
+
accessToken = credentials.lineNotify.accessTokenAlert;
|
|
138
137
|
break;
|
|
139
138
|
case 'info':
|
|
140
|
-
accessToken =
|
|
139
|
+
accessToken = credentials.lineNotify.accessTokenInfo;
|
|
141
140
|
break;
|
|
142
141
|
default:
|
|
143
|
-
accessToken =
|
|
142
|
+
accessToken = credentials.lineNotify.accessToken;
|
|
144
143
|
}
|
|
145
144
|
if (typeof accessToken !== 'string') {
|
|
146
145
|
throw new factory.errors.Internal('credentials.lineNotify.accessToken not set');
|
|
@@ -151,7 +150,7 @@ function lineNotify({ subject, content, imageThumbnail, imageFullsize, logLevel
|
|
|
151
150
|
const message = util.format('\n%s\n%s\n%s\n%s\n%s\n\n%s', `[${logLevel}] ${shortSubject}`, `now:${(new Date()).toISOString()}`, `pid:${process.pid}`, `GAE_APPLICATION:${process.env.GAE_APPLICATION}`,
|
|
152
151
|
// `GAE_INSTANCE:${process.env.GAE_INSTANCE}`,
|
|
153
152
|
`GAE_SERVICE:${process.env.GAE_SERVICE}`, content);
|
|
154
|
-
if (
|
|
153
|
+
if (useFetchAPI) {
|
|
155
154
|
try {
|
|
156
155
|
const form = new FormData();
|
|
157
156
|
form.set('message', message);
|
|
@@ -163,8 +162,8 @@ function lineNotify({ subject, content, imageThumbnail, imageFullsize, logLevel
|
|
|
163
162
|
}
|
|
164
163
|
const res = yield fetch(LINE_NOTIFY_URL, Object.assign({ method: 'POST', headers: {
|
|
165
164
|
Authorization: `Bearer ${accessToken}`
|
|
166
|
-
}, body: form }, (typeof
|
|
167
|
-
? { signal: AbortSignal.timeout(
|
|
165
|
+
}, body: form }, (typeof timeout === 'number')
|
|
166
|
+
? { signal: AbortSignal.timeout(timeout) }
|
|
168
167
|
: undefined));
|
|
169
168
|
let body;
|
|
170
169
|
try {
|
|
@@ -193,8 +192,8 @@ exports.lineNotify = lineNotify;
|
|
|
193
192
|
const USERNAME_ARGUMENT_REQUIRED_MESSAGE = 'Missing required key \'Username\' in params';
|
|
194
193
|
const TRIGGER_WEBHOOK_MAX_RETRY_COUNT = 2;
|
|
195
194
|
const TRIGGER_WEBHOOK_RETRY_INTERVAL_IN_MS = 1000;
|
|
196
|
-
function triggerWebhook(params) {
|
|
197
|
-
return (repos
|
|
195
|
+
function triggerWebhook(params, options) {
|
|
196
|
+
return (repos) => __awaiter(this, void 0, void 0, function* () {
|
|
198
197
|
// retryableにする(2023-05-12~)
|
|
199
198
|
let retry = true;
|
|
200
199
|
let numberOfTry = 0;
|
|
@@ -208,7 +207,7 @@ function triggerWebhook(params) {
|
|
|
208
207
|
if (numberOfTry > 1) {
|
|
209
208
|
yield sleep(TRIGGER_WEBHOOK_RETRY_INTERVAL_IN_MS * (numberOfTry - 1));
|
|
210
209
|
}
|
|
211
|
-
yield processInformAction(params)(repos
|
|
210
|
+
yield processInformAction(params, options)(repos);
|
|
212
211
|
break;
|
|
213
212
|
}
|
|
214
213
|
catch (error) {
|
|
@@ -236,22 +235,23 @@ function createInformActionAttributes(params) {
|
|
|
236
235
|
const { object, purpose, recipient, project } = params;
|
|
237
236
|
return Object.assign({ agent: { id: project.id, typeOf: factory.organizationType.Project }, object, project: { id: project.id, typeOf: factory.organizationType.Project }, recipient, typeOf: factory.actionType.InformAction }, (typeof (purpose === null || purpose === void 0 ? void 0 : purpose.typeOf) === 'string') ? { purpose } : undefined);
|
|
238
237
|
}
|
|
239
|
-
function processInformAction(params) {
|
|
240
|
-
return (repos
|
|
241
|
-
var _a, _b
|
|
238
|
+
function processInformAction(params, options) {
|
|
239
|
+
return (repos) => __awaiter(this, void 0, void 0, function* () {
|
|
240
|
+
var _a, _b;
|
|
241
|
+
const { timeout, useFetchAPI } = options;
|
|
242
242
|
const action = yield repos.action.start(createInformActionAttributes(params));
|
|
243
243
|
let result = {};
|
|
244
244
|
try {
|
|
245
245
|
if (typeof ((_a = params.recipient) === null || _a === void 0 ? void 0 : _a.url) === 'string') {
|
|
246
246
|
const url = params.recipient.url;
|
|
247
|
-
if (
|
|
247
|
+
if (useFetchAPI) {
|
|
248
248
|
try {
|
|
249
249
|
const res = yield fetch(url, Object.assign({ method: 'POST', headers: {
|
|
250
250
|
'Content-Type': 'application/json'
|
|
251
251
|
}, body: JSON.stringify({
|
|
252
252
|
data: params.object
|
|
253
|
-
}) }, (typeof
|
|
254
|
-
? { signal: AbortSignal.timeout(
|
|
253
|
+
}) }, (typeof timeout === 'number')
|
|
254
|
+
? { signal: AbortSignal.timeout(timeout) }
|
|
255
255
|
: undefined));
|
|
256
256
|
let body;
|
|
257
257
|
try {
|
|
@@ -267,7 +267,7 @@ function processInformAction(params) {
|
|
|
267
267
|
case http_status_1.NO_CONTENT:
|
|
268
268
|
result = {
|
|
269
269
|
statusCode: res.status,
|
|
270
|
-
useFetchAPI
|
|
270
|
+
useFetchAPI
|
|
271
271
|
};
|
|
272
272
|
break;
|
|
273
273
|
default:
|
|
@@ -286,7 +286,7 @@ function processInformAction(params) {
|
|
|
286
286
|
catch (error) {
|
|
287
287
|
let throwsError = true;
|
|
288
288
|
// プロジェクト固有の特別対応
|
|
289
|
-
if (error.statusCode === http_status_1.INTERNAL_SERVER_ERROR && ((
|
|
289
|
+
if (error.statusCode === http_status_1.INTERNAL_SERVER_ERROR && ((_b = error.body) === null || _b === void 0 ? void 0 : _b.message) === USERNAME_ARGUMENT_REQUIRED_MESSAGE) {
|
|
290
290
|
throwsError = false;
|
|
291
291
|
}
|
|
292
292
|
if (throwsError) {
|
|
@@ -13,7 +13,7 @@ declare function createReserveTransactionStartParams(params: {
|
|
|
13
13
|
transactionNumber: string;
|
|
14
14
|
}): factory.assetTransaction.reserve.IStartParamsWithoutDetail;
|
|
15
15
|
declare function createAuthorizeSeatReservationActionAttributes(params: {
|
|
16
|
-
event: Pick<IMinimizedIndividualEvent<factory.eventType.ScreeningEvent>, 'id'
|
|
16
|
+
event: Pick<IMinimizedIndividualEvent<factory.eventType.ScreeningEvent>, 'id'>;
|
|
17
17
|
instrument: {
|
|
18
18
|
/**
|
|
19
19
|
* 予約取引番号
|
|
@@ -68,7 +68,8 @@ function createAuthorizeSeatReservationActionAttributes(params) {
|
|
|
68
68
|
// typeOf: 'WebAPI'
|
|
69
69
|
// }
|
|
70
70
|
// },
|
|
71
|
-
typeOf: event.typeOf
|
|
71
|
+
// typeOf: event.typeOf
|
|
72
|
+
typeOf: factory.eventType.ScreeningEvent // fix(2024-07-17~)
|
|
72
73
|
};
|
|
73
74
|
const object = {
|
|
74
75
|
typeOf: factory.action.authorize.offer.eventService.ObjectType.SeatReservation,
|
|
@@ -19,7 +19,7 @@ import type { TaskRepo } from '../../../../repo/task';
|
|
|
19
19
|
import type { TicketRepo } from '../../../../repo/ticket';
|
|
20
20
|
declare function processStartReserve4chevre(params: {
|
|
21
21
|
acceptedOffers: factory.action.authorize.offer.eventService.IAcceptedOffer4chevre[];
|
|
22
|
-
event: IMinimizedIndividualEvent<factory.eventType.ScreeningEvent>;
|
|
22
|
+
event: Pick<IMinimizedIndividualEvent<factory.eventType.ScreeningEvent>, 'id'>;
|
|
23
23
|
broker?: factory.reservation.IBroker<factory.reservationType>;
|
|
24
24
|
transactionNumber: string;
|
|
25
25
|
transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'agent' | 'expires' | 'id' | 'project' | 'seller' | 'typeOf'>;
|
|
@@ -24,7 +24,10 @@ function processStartReserve4chevre(params, options) {
|
|
|
24
24
|
acceptedOffers: params.acceptedOffers, event: { id: event.id }, transaction,
|
|
25
25
|
transactionNumber }, (params.broker !== undefined) ? { broker: params.broker } : undefined));
|
|
26
26
|
const startParamObject = yield validateObjectWithoutDetail(startParams)(repos, credentials);
|
|
27
|
-
const startReserveTransactionResult = yield ReserveTransactionService.start(Object.assign(Object.assign({}, startParams), { object: startParamObject,
|
|
27
|
+
const startReserveTransactionResult = yield ReserveTransactionService.start(Object.assign(Object.assign({}, startParams), { object: startParamObject,
|
|
28
|
+
// discontinue preSearchedEvent(2024-07-17~)
|
|
29
|
+
// preSearchedEvent: event,
|
|
30
|
+
preSearchedTicketOffers: params.ticketOffers, preSearchedUnitPriceOffers: params.unitPriceOffers, availableAtOrFrom: { id: params.availableAtOrFrom.id }, validateEvent: params.validateEvent, validateEventOfferPeriod: params.validateEventOfferPeriod, validateAppliesToMovieTicket: true,
|
|
28
31
|
// useHoldStockByTransactionNumber: params.useHoldStockByTransactionNumber, // discontinue(2024-07-02~)
|
|
29
32
|
stockHoldUntilDaysAfterEventEnd: params.stockHoldUntilDaysAfterEventEnd }), options)(repos);
|
|
30
33
|
// 予約取引結果から注文オファーを生成する
|
|
@@ -89,16 +89,14 @@ function validateCreateRequest(params) {
|
|
|
89
89
|
if (typeof ((_b = params.object.reservationFor) === null || _b === void 0 ? void 0 : _b.id) !== 'string' || params.object.reservationFor.id.length === 0) {
|
|
90
90
|
throw new factory.errors.ArgumentNull('object.reservationFor.id');
|
|
91
91
|
}
|
|
92
|
-
//
|
|
93
|
-
// const event = await repos.event.
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
// }
|
|
101
|
-
// const bookingServiceIdentifire = offeredThrough.identifier;
|
|
92
|
+
// discontinue preSearchedEvent(2024-07-17~)
|
|
93
|
+
// const event = await repos.event.findMinimizedIndividualEventById<factory.eventType.ScreeningEvent>({
|
|
94
|
+
// id: params.object.reservationFor.id
|
|
95
|
+
// });
|
|
96
|
+
const event = {
|
|
97
|
+
id: params.object.reservationFor.id,
|
|
98
|
+
typeOf: factory.eventType.ScreeningEvent // ひとまずfix(2024-07-17~)
|
|
99
|
+
};
|
|
102
100
|
return { transaction, event };
|
|
103
101
|
});
|
|
104
102
|
}
|
|
@@ -136,7 +134,7 @@ function validateAcceptedOffers(params) {
|
|
|
136
134
|
const searchEventTicketOffersResult = yield (0, searchEventTicketOffers_1.searchEventTicketOffers)({
|
|
137
135
|
// 受け入れたオファーIDだけ取得する(2023-01-26~)
|
|
138
136
|
ids: offerIds,
|
|
139
|
-
event: { id: params.event.id },
|
|
137
|
+
event: { id: params.event.id, typeOf: params.event.typeOf },
|
|
140
138
|
store: params.store,
|
|
141
139
|
priceSpecification: {},
|
|
142
140
|
includedInDataCatalog: { id: '' },
|
|
@@ -172,7 +172,6 @@ function searchEventTicketOffersByEvent(params) {
|
|
|
172
172
|
withSortIndex: params.addSortIndex,
|
|
173
173
|
useIncludeInDataCatalog: params.useIncludeInDataCatalog
|
|
174
174
|
})(repos);
|
|
175
|
-
// 冗長な検索について最適化(2023-03-03~)
|
|
176
175
|
const { soundFormatChargeSpecs, videoFormatChargeSpecs, movieTicketTypeChargeSpecs } = yield searchPriceSpecs4event({
|
|
177
176
|
project: { id: event.project.id },
|
|
178
177
|
soundFormatTypes,
|
|
@@ -312,7 +311,13 @@ function checkAvailability(params) {
|
|
|
312
311
|
*/
|
|
313
312
|
function searchEventTicketOffers(params) {
|
|
314
313
|
return (repos) => __awaiter(this, void 0, void 0, function* () {
|
|
315
|
-
const
|
|
314
|
+
const eventType = params.event.typeOf;
|
|
315
|
+
// optimize projection(2024-07-17~)
|
|
316
|
+
const event = yield repos.event.projectFieldsById({ id: params.event.id }, [
|
|
317
|
+
'project', 'typeOf', 'startDate',
|
|
318
|
+
'superEvent.id',
|
|
319
|
+
'offers.itemOffered.id', 'offers.offeredThrough', 'offers.unacceptedPaymentMethod', 'offers.eligibleQuantity'
|
|
320
|
+
]);
|
|
316
321
|
let offers;
|
|
317
322
|
let unitPriceOffers;
|
|
318
323
|
const eventOffers = event.offers;
|
|
@@ -352,7 +357,8 @@ exports.searchEventTicketOffers = searchEventTicketOffers;
|
|
|
352
357
|
function searchOfferAppliesToMovieTicket(params) {
|
|
353
358
|
return (repos) => __awaiter(this, void 0, void 0, function* () {
|
|
354
359
|
var _a, _b, _c;
|
|
355
|
-
|
|
360
|
+
// optimize(2024-07-18~)
|
|
361
|
+
const event = yield repos.event.projectFieldsById({ id: params.event.id }, ['project', 'startDate', 'typeOf', 'superEvent.id', 'offers.itemOffered.id', 'offers.unacceptedPaymentMethod']);
|
|
356
362
|
// let soundFormatTypes: string[] = [];
|
|
357
363
|
let videoFormatTypes = [];
|
|
358
364
|
if (event.typeOf === factory.eventType.ScreeningEvent) {
|
|
@@ -430,7 +436,8 @@ function searchOfferCatalogItems(params) {
|
|
|
430
436
|
throw new factory.errors.Argument('page', 'must be number');
|
|
431
437
|
}
|
|
432
438
|
let offerCatalogItems = [];
|
|
433
|
-
|
|
439
|
+
// optimize(2024-07-18~)
|
|
440
|
+
const event = yield repos.event.projectFieldsById({ id: params.event.id }, ['offers.itemOffered.id']);
|
|
434
441
|
// 興行設定があれば興行のカタログを参照する
|
|
435
442
|
const eventOffers = event.offers;
|
|
436
443
|
let catalogId;
|
|
@@ -499,7 +506,8 @@ function searchOfferCatalogItemAvailability(params) {
|
|
|
499
506
|
throw new factory.errors.Argument('page', 'must be number');
|
|
500
507
|
}
|
|
501
508
|
let availabilities = [];
|
|
502
|
-
|
|
509
|
+
// optimize(2024-07-18~)
|
|
510
|
+
const event = yield repos.event.projectFieldsById({ id: params.event.id }, ['project', 'offers.itemOffered.id']);
|
|
503
511
|
// 興行設定があれば興行のカタログを参照する
|
|
504
512
|
const eventOffers = event.offers;
|
|
505
513
|
let catalogId;
|
|
@@ -9,7 +9,6 @@ import type { ReservationRepo } from '../../../repo/reservation';
|
|
|
9
9
|
import type { StockHolderRepo } from '../../../repo/stockHolder';
|
|
10
10
|
import type { TaskRepo } from '../../../repo/task';
|
|
11
11
|
import type { TransactionRepo } from '../../../repo/transaction';
|
|
12
|
-
export import WebAPIIdentifier = factory.service.webAPI.Identifier;
|
|
13
12
|
interface IVoidTransactionRepos {
|
|
14
13
|
action: ActionRepo;
|
|
15
14
|
assetTransaction: AssetTransactionRepo;
|
|
@@ -19,13 +18,16 @@ interface IVoidTransactionRepos {
|
|
|
19
18
|
reservation: ReservationRepo;
|
|
20
19
|
task: TaskRepo;
|
|
21
20
|
transaction: TransactionRepo;
|
|
22
|
-
|
|
21
|
+
/**
|
|
22
|
+
* COAオファー承認取消の場合必須
|
|
23
|
+
*/
|
|
24
|
+
reserveService?: COA.service.Reserve;
|
|
23
25
|
}
|
|
24
26
|
/**
|
|
25
27
|
* 興行オファー承認取消(タスクから実行 or apiから実行))
|
|
26
28
|
* 取引中の承認アクション全てについて処理する or 特定の承認アクションについて処理する
|
|
27
29
|
*/
|
|
28
|
-
|
|
30
|
+
declare function voidTransaction(params: factory.task.IData<factory.taskName.VoidReserveTransaction> & {
|
|
29
31
|
sameAs?: {
|
|
30
32
|
/**
|
|
31
33
|
* 実行元タスクID
|
|
@@ -33,4 +35,4 @@ export declare function voidTransaction(params: factory.task.IData<factory.taskN
|
|
|
33
35
|
id: string;
|
|
34
36
|
};
|
|
35
37
|
}): (repos: IVoidTransactionRepos, settings: Settings) => Promise<void>;
|
|
36
|
-
export {};
|
|
38
|
+
export { voidTransaction };
|
|
@@ -9,13 +9,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.voidTransaction =
|
|
12
|
+
exports.voidTransaction = void 0;
|
|
13
13
|
const factory = require("../../../factory");
|
|
14
14
|
const any_1 = require("../any");
|
|
15
15
|
const processVoidTransaction4chevre_1 = require("./voidTransaction/processVoidTransaction4chevre");
|
|
16
16
|
const processVoidTransaction4coa_1 = require("./voidTransaction/processVoidTransaction4coa");
|
|
17
17
|
const voidTransactionByActionId_1 = require("./voidTransactionByActionId");
|
|
18
|
-
|
|
18
|
+
var WebAPIIdentifier = factory.service.webAPI.Identifier;
|
|
19
19
|
/**
|
|
20
20
|
* 興行オファー承認取消(タスクから実行 or apiから実行))
|
|
21
21
|
* 取引中の承認アクション全てについて処理する or 特定の承認アクションについて処理する
|
|
@@ -75,10 +75,14 @@ function voidTransaction(params) {
|
|
|
75
75
|
yield Promise.all(authorizeActions.map((action) => __awaiter(this, void 0, void 0, function* () {
|
|
76
76
|
yield repos.action.cancelWithVoid({ typeOf: action.typeOf, id: action.id, cancelAction });
|
|
77
77
|
switch (action.instrument.identifier) {
|
|
78
|
-
case
|
|
78
|
+
case WebAPIIdentifier.COA:
|
|
79
|
+
const { reserveService } = repos;
|
|
80
|
+
if (reserveService === undefined) {
|
|
81
|
+
throw new factory.errors.Internal('repos.reserveService required');
|
|
82
|
+
}
|
|
79
83
|
yield (0, processVoidTransaction4coa_1.processVoidTransaction4coa)({
|
|
80
84
|
action: action
|
|
81
|
-
})(
|
|
85
|
+
})({ reserveService });
|
|
82
86
|
break;
|
|
83
87
|
default:
|
|
84
88
|
yield (0, processVoidTransaction4chevre_1.processVoidTransaction4chevre)({
|
|
@@ -146,9 +150,16 @@ function cancelAcceptActions(params) {
|
|
|
146
150
|
default:
|
|
147
151
|
// no op
|
|
148
152
|
}
|
|
153
|
+
const { reserveService } = repos;
|
|
149
154
|
yield Promise.all(acceptActions.map((action) => __awaiter(this, void 0, void 0, function* () {
|
|
150
155
|
yield repos.action.cancelWithVoid({ typeOf: action.typeOf, id: action.id, cancelAction });
|
|
151
|
-
|
|
156
|
+
if (reserveService === undefined) {
|
|
157
|
+
throw new factory.errors.Internal('repos.reserveService required');
|
|
158
|
+
}
|
|
159
|
+
yield (0, processVoidTransaction4coa_1.processVoidTransactionByAcceptAction4coa)({ action })({
|
|
160
|
+
action: repos.action,
|
|
161
|
+
reserveService
|
|
162
|
+
});
|
|
152
163
|
})));
|
|
153
164
|
});
|
|
154
165
|
}
|
|
@@ -18,7 +18,10 @@ interface IVoidTransactionByActionIdRepos {
|
|
|
18
18
|
reservation: ReservationRepo;
|
|
19
19
|
task: TaskRepo;
|
|
20
20
|
transaction: TransactionRepo;
|
|
21
|
-
|
|
21
|
+
/**
|
|
22
|
+
* COAオファー承認取消の場合必須
|
|
23
|
+
*/
|
|
24
|
+
reserveService?: COA.service.Reserve;
|
|
22
25
|
}
|
|
23
26
|
/**
|
|
24
27
|
* 興行オファー承認取消(apiから実行)
|
|
@@ -53,9 +53,13 @@ function voidTransactionByActionId(params) {
|
|
|
53
53
|
}
|
|
54
54
|
switch (action.instrument.identifier) {
|
|
55
55
|
case factory.service.webAPI.Identifier.COA:
|
|
56
|
+
const { reserveService } = repos;
|
|
57
|
+
if (reserveService === undefined) {
|
|
58
|
+
throw new factory.errors.Internal('repos.reserveService required');
|
|
59
|
+
}
|
|
56
60
|
yield (0, processVoidTransaction4coa_1.processVoidTransaction4coa)({
|
|
57
61
|
action: action
|
|
58
|
-
})(
|
|
62
|
+
})({ reserveService });
|
|
59
63
|
break;
|
|
60
64
|
default:
|
|
61
65
|
yield (0, processVoidTransaction4chevre_1.processVoidTransaction4chevre)({
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.searchOfferCatalogItems = exports.searchOfferCatalogItemAvailability = exports.searchOfferAppliesToMovieTicket = exports.searchEventTicketOffers = exports.voidTransaction = exports.importFromCOA = exports.importCategoryCodesFromCOA = exports.authorize = void 0;
|
|
4
4
|
const authorize_1 = require("./event/authorize");
|
|
5
5
|
Object.defineProperty(exports, "authorize", { enumerable: true, get: function () { return authorize_1.authorize; } });
|
|
6
|
-
// import { cancel } from './event/cancel';
|
|
7
6
|
const importFromCOA_1 = require("./event/importFromCOA");
|
|
8
7
|
Object.defineProperty(exports, "importCategoryCodesFromCOA", { enumerable: true, get: function () { return importFromCOA_1.importCategoryCodesFromCOA; } });
|
|
9
8
|
Object.defineProperty(exports, "importFromCOA", { enumerable: true, get: function () { return importFromCOA_1.importFromCOA; } });
|
|
@@ -48,9 +48,11 @@ function authorize(params) {
|
|
|
48
48
|
typeOf: factory.assetTransactionType.COAReserveTransaction
|
|
49
49
|
};
|
|
50
50
|
try {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
screeningEvent = yield repos.event.projectFieldsById({ id: params.object.event.id }, [
|
|
52
|
+
'coaInfo', 'doorTime', 'endDate', 'location', 'startDate',
|
|
53
|
+
'superEvent', 'typeOf', 'identifier', 'name'
|
|
54
|
+
] // optimize(2024-07-18~)
|
|
55
|
+
);
|
|
54
56
|
const availablePaymentMethodTypes = yield repos.categoryCode.search({
|
|
55
57
|
project: { id: { $eq: transaction.project.id } },
|
|
56
58
|
inCodeSet: { identifier: { $eq: factory.categoryCode.CategorySetIdentifier.PaymentMethodType } }
|
|
@@ -92,7 +94,7 @@ function authorize(params) {
|
|
|
92
94
|
const actionAttributes = (0, factory_1.createAuthorizeSeatReservationActionAttributes)({
|
|
93
95
|
acceptAction: params.object.acceptAction,
|
|
94
96
|
acceptedOffers,
|
|
95
|
-
event: screeningEvent,
|
|
97
|
+
event: { id: screeningEvent.id, typeOf: screeningEvent.typeOf },
|
|
96
98
|
transaction,
|
|
97
99
|
pendingTransaction
|
|
98
100
|
});
|
|
@@ -72,9 +72,11 @@ function changeOffers(params) {
|
|
|
72
72
|
return Object.assign(Object.assign({}, offer), { ticketInfo: Object.assign(Object.assign({}, offer.ticketInfo), { spseatAdd1: originalAcceptedOfferBySeatNumber.ticketInfo.spseatAdd1, spseatAdd2: originalAcceptedOfferBySeatNumber.ticketInfo.spseatAdd2, spseatKbn: originalAcceptedOfferBySeatNumber.ticketInfo.spseatKbn }) });
|
|
73
73
|
});
|
|
74
74
|
// イベント取得属性最適化(2023-01-23~)
|
|
75
|
-
const screeningEvent = yield repos.event.
|
|
76
|
-
|
|
77
|
-
|
|
75
|
+
const screeningEvent = yield repos.event.projectFieldsById({ id: params.object.event.id }, [
|
|
76
|
+
'coaInfo', 'doorTime', 'endDate', 'location', 'startDate',
|
|
77
|
+
'superEvent', 'typeOf', 'identifier', 'name'
|
|
78
|
+
] // optimize(2024-07-18~)
|
|
79
|
+
);
|
|
78
80
|
const availablePaymentMethodTypes = yield repos.categoryCode.search({
|
|
79
81
|
project: { id: { $eq: transaction.project.id } },
|
|
80
82
|
inCodeSet: { identifier: { $eq: factory.categoryCode.CategorySetIdentifier.PaymentMethodType } }
|
|
@@ -7,7 +7,10 @@ export declare function createAuthorizeSeatReservationActionAttributes(params: {
|
|
|
7
7
|
id: string;
|
|
8
8
|
};
|
|
9
9
|
acceptedOffers: factory.action.authorize.offer.eventService.IAcceptedOffer4COA[];
|
|
10
|
-
event:
|
|
10
|
+
event: {
|
|
11
|
+
id: string;
|
|
12
|
+
typeOf: factory.eventType.ScreeningEvent;
|
|
13
|
+
};
|
|
11
14
|
transaction: Pick<factory.transaction.ITransaction<factory.transactionType.PlaceOrder>, 'agent' | 'id' | 'project' | 'seller' | 'typeOf'>;
|
|
12
15
|
pendingTransaction: factory.action.authorize.offer.eventService.ICOAPendingTransaction;
|
|
13
16
|
}): factory.action.authorize.offer.eventService.IAttributes<WebAPIIdentifier.COA>;
|
|
@@ -25,7 +28,7 @@ type IResultAcceptedOffer = factory.action.authorize.offer.eventService.IResultA
|
|
|
25
28
|
export declare function responseBody2acceptedOffers4result(params: {
|
|
26
29
|
responseBody: factory.action.authorize.offer.eventService.IResponseBody<factory.service.webAPI.Identifier.COA>;
|
|
27
30
|
acceptedOffer: factory.action.authorize.offer.eventService.IAcceptedOffer4COA[];
|
|
28
|
-
event: IMinimizedIndividualEvent<factory.eventType.ScreeningEvent>;
|
|
31
|
+
event: Pick<IMinimizedIndividualEvent<factory.eventType.ScreeningEvent>, 'coaInfo' | 'doorTime' | 'endDate' | 'id' | 'location' | 'startDate' | 'superEvent' | 'typeOf' | 'identifier' | 'name'>;
|
|
29
32
|
seller: Pick<factory.transaction.placeOrder.ISeller, 'typeOf' | 'name'>;
|
|
30
33
|
bookingTime: Date;
|
|
31
34
|
totalPrice: number;
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createCompoundPriceSpec4event = void 0;
|
|
4
4
|
const factory = require("../../factory");
|
|
5
|
-
const settings_1 = require("../../settings");
|
|
6
5
|
function categoryCodeChargePriceSpec2component(params) {
|
|
7
6
|
var _a;
|
|
8
7
|
return Object.assign({ id: params.id, typeOf: params.typeOf, name: params.name, price: params.price, priceCurrency: params.priceCurrency, valueAddedTaxIncluded: params.valueAddedTaxIncluded, appliesToCategoryCode: params.appliesToCategoryCode }, (typeof ((_a = params.accounting) === null || _a === void 0 ? void 0 : _a.typeOf) === 'string') ? { accounting: params.accounting } : undefined);
|
|
@@ -77,11 +76,11 @@ function createCompoundPriceSpec4event(params) {
|
|
|
77
76
|
};
|
|
78
77
|
// 必要な属性のみに限定(2023-02-24~)
|
|
79
78
|
const { acceptedPaymentMethod, name, description, alternateName, color, typeOf, id, availability, category, eligibleMembershipType, eligibleSeatingType, eligibleMonetaryAmount, eligibleSubReservation, priceCurrency, validFrom, validThrough, validRateLimit, additionalProperty, identifier, itemOffered, offerIndex, parentOffer } = params.offer;
|
|
80
|
-
return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(
|
|
79
|
+
return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ name, description, alternateName, color, typeOf, id,
|
|
81
80
|
category,
|
|
82
81
|
eligibleMembershipType, eligibleSeatingType, eligibleMonetaryAmount, eligibleSubReservation,
|
|
83
82
|
priceCurrency,
|
|
84
83
|
validFrom, validThrough, validRateLimit, additionalProperty,
|
|
85
|
-
identifier, itemOffered, addOn: params.addOn, eligibleQuantity: params.eligibleQuantity, priceSpecification: compoundPriceSpecification }, (typeof params.availability === 'string') ? { availability: params.availability } : { availability }), (typeof params.sortIndex === 'number') ? { sortIndex: params.sortIndex } : undefined), (typeof offerIndex === 'number') ? { offerIndex } : undefined), (typeof (parentOffer === null || parentOffer === void 0 ? void 0 : parentOffer.id) === 'string') ? { parentOffer: { id: parentOffer.id } } : undefined), (Array.isArray(acceptedPaymentMethod)) ? { acceptedPaymentMethod } : undefined)
|
|
84
|
+
identifier, itemOffered, addOn: params.addOn, eligibleQuantity: params.eligibleQuantity, priceSpecification: compoundPriceSpecification }, (typeof params.availability === 'string') ? { availability: params.availability } : { availability }), (typeof params.sortIndex === 'number') ? { sortIndex: params.sortIndex } : undefined), (typeof offerIndex === 'number') ? { offerIndex } : undefined), (typeof (parentOffer === null || parentOffer === void 0 ? void 0 : parentOffer.id) === 'string') ? { parentOffer: { id: parentOffer.id } } : undefined), (Array.isArray(acceptedPaymentMethod)) ? { acceptedPaymentMethod } : undefined);
|
|
86
85
|
}
|
|
87
86
|
exports.createCompoundPriceSpec4event = createCompoundPriceSpec4event;
|
|
@@ -11,7 +11,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.onEventChanged = exports.createAggregateScreeningEventIfNotExist = void 0;
|
|
13
13
|
const factory = require("../../factory");
|
|
14
|
-
const settings_1 = require("../../settings");
|
|
15
14
|
/**
|
|
16
15
|
* イベント変更時処理
|
|
17
16
|
*/
|
|
@@ -156,28 +155,27 @@ function createInformTasks(params) {
|
|
|
156
155
|
// 最適化(2024-03-22~)
|
|
157
156
|
events4inform = screeningEvents4inform.map(({ project, organizer, typeOf, name, doorTime, endDate, eventStatus, location, startDate, superEvent, offers, id, additionalProperty }) => {
|
|
158
157
|
var _a;
|
|
159
|
-
return
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
}
|
|
158
|
+
return {
|
|
159
|
+
project, organizer, typeOf, name, doorTime, endDate,
|
|
160
|
+
eventStatus, location, startDate, superEvent, id, additionalProperty,
|
|
161
|
+
offers: (((_a = offers.offeredThrough) === null || _a === void 0 ? void 0 : _a.identifier) === factory.service.webAPI.Identifier.COA)
|
|
162
|
+
? {
|
|
163
|
+
typeOf: offers.typeOf,
|
|
164
|
+
itemOffered: offers.itemOffered
|
|
165
|
+
}
|
|
166
|
+
: {
|
|
167
|
+
typeOf: offers.typeOf,
|
|
168
|
+
itemOffered: offers.itemOffered,
|
|
169
|
+
seller: {
|
|
170
|
+
id: offers.seller.id,
|
|
171
|
+
typeOf: offers.seller.typeOf,
|
|
172
|
+
// makesOfferを追加(2024-03-26~)
|
|
173
|
+
makesOffer: (Array.isArray(offers.seller.makesOffer))
|
|
174
|
+
? offers.seller.makesOffer
|
|
175
|
+
: []
|
|
178
176
|
}
|
|
179
|
-
|
|
180
|
-
|
|
177
|
+
}
|
|
178
|
+
};
|
|
181
179
|
});
|
|
182
180
|
}
|
|
183
181
|
else {
|