@cinerino/sdk 10.16.0-alpha.9 → 10.16.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/cloud/adminUseReservation.ts +3 -3
- package/example/src/cloud/transaction/paymentAsyncForce.ts +4 -1
- package/lib/abstract/chevrePay/payment/factory.d.ts +1 -1
- package/lib/abstract/chevrePay/payment.d.ts +11 -0
- package/lib/abstract/chevrePay/payment.js +21 -0
- package/lib/abstract/cloud/pay/payment.d.ts +7 -1
- package/lib/abstract/cloud/pay/payment.js +87 -5
- package/lib/bundle.js +108 -5
- package/package.json +1 -1
|
@@ -28,9 +28,9 @@ async function main() {
|
|
|
28
28
|
|
|
29
29
|
const { code } = await orderService.authorize({
|
|
30
30
|
object: {
|
|
31
|
-
orderNumber: '
|
|
31
|
+
orderNumber: 'TTT1-3713007-5542803',
|
|
32
32
|
customer: {
|
|
33
|
-
telephone: '+
|
|
33
|
+
telephone: '+819011111111'
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
});
|
|
@@ -41,7 +41,7 @@ async function main() {
|
|
|
41
41
|
ticketToken: code // 注文コードなど
|
|
42
42
|
},
|
|
43
43
|
object: {
|
|
44
|
-
id: '
|
|
44
|
+
id: '439736698844853-0'
|
|
45
45
|
},
|
|
46
46
|
location: { identifier: 'DAITEN_AUTH' }
|
|
47
47
|
});
|
|
@@ -69,7 +69,10 @@ export class PaymentAsyncForceService {
|
|
|
69
69
|
purpose: IPurpose;
|
|
70
70
|
}): Promise<{ id: string }> {
|
|
71
71
|
// 決済承認タスク作成
|
|
72
|
-
const authorizeTask = await this.paymentService.authorizeMovieTicketAsync(
|
|
72
|
+
const authorizeTask = await this.paymentService.authorizeMovieTicketAsync(
|
|
73
|
+
params,
|
|
74
|
+
{ giveUpInMS: 3000 }
|
|
75
|
+
);
|
|
73
76
|
let alreadyGivenUp: boolean = false;
|
|
74
77
|
setTimeout(
|
|
75
78
|
() => { alreadyGivenUp = true; },
|
|
@@ -33,7 +33,7 @@ export declare type IMovieTicketMkknInfo = factory.action.check.paymentMethod.mo
|
|
|
33
33
|
};
|
|
34
34
|
export declare type IAuthorizeAnyPaymentObject = Pick<factory.action.authorize.paymentMethod.any.IObjectWithoutDetail, 'amount' | 'issuedThrough' | 'paymentMethod' | 'name' | 'additionalProperty' | 'ticketToken'>;
|
|
35
35
|
export declare type IAuthorizeCreditCardObject = Pick<factory.action.authorize.paymentMethod.any.IObjectWithoutDetail, 'amount' | 'issuedThrough' | 'paymentMethod' | 'creditCard' | 'method' | 'paymentMethodId' | 'name' | 'additionalProperty' | 'ticketToken'>;
|
|
36
|
-
export declare type IAuthorizeMovieTicketObject = Pick<factory.action.authorize.paymentMethod.any.IObjectWithoutDetail, 'issuedThrough' | 'paymentMethod' | 'movieTickets' | 'name' | 'additionalProperty'>;
|
|
36
|
+
export declare type IAuthorizeMovieTicketObject = Pick<factory.action.authorize.paymentMethod.any.IObjectWithoutDetail, 'issuedThrough' | 'paymentMethod' | 'movieTickets' | 'name' | 'additionalProperty' | 'ticketToken'>;
|
|
37
37
|
export declare type IAuthorizePaymentCardObject = Pick<factory.action.authorize.paymentMethod.any.IObjectWithoutDetail, 'amount' | 'issuedThrough' | 'paymentMethod' | 'fromLocation' | 'name' | 'additionalProperty'> & {
|
|
38
38
|
description?: string;
|
|
39
39
|
};
|
|
@@ -202,4 +202,15 @@ export declare class PaymentService extends Service {
|
|
|
202
202
|
};
|
|
203
203
|
purpose: IPurpose;
|
|
204
204
|
}): Promise<ITicket>;
|
|
205
|
+
issueTicketThroughMovieTicket(params: {
|
|
206
|
+
ticketedInvoice: {
|
|
207
|
+
issuedThrough: {
|
|
208
|
+
/**
|
|
209
|
+
* 発行決済サービスID
|
|
210
|
+
*/
|
|
211
|
+
id: string;
|
|
212
|
+
};
|
|
213
|
+
};
|
|
214
|
+
purpose: IPurpose;
|
|
215
|
+
}): Promise<ITicket>;
|
|
205
216
|
}
|
|
@@ -441,6 +441,27 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
441
441
|
});
|
|
442
442
|
});
|
|
443
443
|
};
|
|
444
|
+
PaymentService.prototype.issueTicketThroughMovieTicket = function (params) {
|
|
445
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
446
|
+
var purpose, ticketedInvoice;
|
|
447
|
+
var _this = this;
|
|
448
|
+
return __generator(this, function (_a) {
|
|
449
|
+
purpose = params.purpose, ticketedInvoice = params.ticketedInvoice;
|
|
450
|
+
return [2 /*return*/, this.fetch({
|
|
451
|
+
uri: "/payment/" + factory.service.paymentService.PaymentServiceType.MovieTicket + "/tickets",
|
|
452
|
+
method: 'POST',
|
|
453
|
+
expectedStatusCodes: [http_status_1.CREATED],
|
|
454
|
+
body: { purpose: purpose, ticketedInvoice: ticketedInvoice },
|
|
455
|
+
qs: {
|
|
456
|
+
purpose: { id: params.purpose.id }
|
|
457
|
+
}
|
|
458
|
+
})
|
|
459
|
+
.then(function (response) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
460
|
+
return [2 /*return*/, response.json()];
|
|
461
|
+
}); }); })];
|
|
462
|
+
});
|
|
463
|
+
});
|
|
464
|
+
};
|
|
444
465
|
return PaymentService;
|
|
445
466
|
}(service_1.Service));
|
|
446
467
|
exports.PaymentService = PaymentService;
|
|
@@ -25,11 +25,16 @@ export declare class PaymentService extends Service {
|
|
|
25
25
|
id: string;
|
|
26
26
|
}>;
|
|
27
27
|
/**
|
|
28
|
-
* 決済カード決済承認
|
|
28
|
+
* 決済カード決済承認
|
|
29
29
|
*/
|
|
30
30
|
authorizeMovieTicketAsync(params: {
|
|
31
31
|
object: IAuthorizeMovieTicketObject;
|
|
32
32
|
purpose: IPurpose;
|
|
33
|
+
}, options: {
|
|
34
|
+
/**
|
|
35
|
+
* レイテンシ増加時の最大待機時間(milliseconds)
|
|
36
|
+
*/
|
|
37
|
+
giveUpInMS: number;
|
|
33
38
|
}): Promise<{
|
|
34
39
|
/**
|
|
35
40
|
* task ID
|
|
@@ -240,4 +245,5 @@ export declare class PaymentService extends Service {
|
|
|
240
245
|
};
|
|
241
246
|
purpose: IPurpose;
|
|
242
247
|
}): Promise<ITicket>;
|
|
248
|
+
private issueTicketThroughMovieTicketUntilSuccess;
|
|
243
249
|
}
|
|
@@ -83,6 +83,16 @@ var http_status_1 = require("http-status");
|
|
|
83
83
|
var factory = require("../../factory");
|
|
84
84
|
var index_1 = require("../../index");
|
|
85
85
|
var service_1 = require("../../service");
|
|
86
|
+
var ISSUE_TICKET_INTERVAL_MS = 5000;
|
|
87
|
+
function wait(waitInMilliseconds) {
|
|
88
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
89
|
+
return __generator(this, function (_a) {
|
|
90
|
+
return [2 /*return*/, new Promise(function (resolve) {
|
|
91
|
+
setTimeout(function () { resolve(); }, waitInMilliseconds);
|
|
92
|
+
})];
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
}
|
|
86
96
|
/**
|
|
87
97
|
* 決済サービス
|
|
88
98
|
*/
|
|
@@ -149,11 +159,11 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
149
159
|
});
|
|
150
160
|
};
|
|
151
161
|
/**
|
|
152
|
-
* 決済カード決済承認
|
|
162
|
+
* 決済カード決済承認
|
|
153
163
|
*/
|
|
154
|
-
PaymentService.prototype.authorizeMovieTicketAsync = function (params) {
|
|
164
|
+
PaymentService.prototype.authorizeMovieTicketAsync = function (params, options) {
|
|
155
165
|
return __awaiter(this, void 0, void 0, function () {
|
|
156
|
-
var object, purpose, _a, auth, endpoint, project, seller, disableAutoRetry, retryableStatusCodes, chevrePay, paymentService;
|
|
166
|
+
var object, purpose, _a, auth, endpoint, project, seller, disableAutoRetry, retryableStatusCodes, chevrePay, ticketToken, paymentService;
|
|
157
167
|
return __generator(this, function (_b) {
|
|
158
168
|
switch (_b.label) {
|
|
159
169
|
case 0:
|
|
@@ -162,6 +172,9 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
162
172
|
return [4 /*yield*/, index_1.loadChevrePay({ auth: auth, endpoint: endpoint, disableAutoRetry: disableAutoRetry })];
|
|
163
173
|
case 1:
|
|
164
174
|
chevrePay = _b.sent();
|
|
175
|
+
return [4 /*yield*/, this.issueTicketThroughMovieTicketUntilSuccess(params, options)];
|
|
176
|
+
case 2:
|
|
177
|
+
ticketToken = (_b.sent()).ticketToken;
|
|
165
178
|
return [4 /*yield*/, chevrePay.createPaymentInstance({
|
|
166
179
|
project: project,
|
|
167
180
|
seller: { id: (typeof (seller === null || seller === void 0 ? void 0 : seller.id) === 'string') ? seller.id : '' },
|
|
@@ -170,9 +183,12 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
170
183
|
http_status_1.TOO_MANY_REQUESTS
|
|
171
184
|
])
|
|
172
185
|
})];
|
|
173
|
-
case
|
|
186
|
+
case 3:
|
|
174
187
|
paymentService = _b.sent();
|
|
175
|
-
return [2 /*return*/, paymentService.authorizeMovieTicket({
|
|
188
|
+
return [2 /*return*/, paymentService.authorizeMovieTicket({
|
|
189
|
+
object: __assign(__assign({}, object), { ticketToken: ticketToken }),
|
|
190
|
+
purpose: purpose
|
|
191
|
+
}, { async: true })];
|
|
176
192
|
}
|
|
177
193
|
});
|
|
178
194
|
});
|
|
@@ -555,6 +571,72 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
555
571
|
});
|
|
556
572
|
});
|
|
557
573
|
};
|
|
574
|
+
PaymentService.prototype.issueTicketThroughMovieTicketUntilSuccess = function (params, options) {
|
|
575
|
+
var _a;
|
|
576
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
577
|
+
var object, purpose, giveUpInMS, _b, auth, endpoint, project, seller, disableAutoRetry, chevrePay, paymentService4issueTicket, alreadyGivenUp, giveUpTimeout, result, issueTicketThroughMovieTicketError, error_1;
|
|
578
|
+
return __generator(this, function (_c) {
|
|
579
|
+
switch (_c.label) {
|
|
580
|
+
case 0:
|
|
581
|
+
object = params.object, purpose = params.purpose;
|
|
582
|
+
giveUpInMS = options.giveUpInMS;
|
|
583
|
+
if (typeof giveUpInMS !== 'number' || giveUpInMS <= 0) {
|
|
584
|
+
throw new factory.errors.Argument('giveUpInMS', 'must be number > 0');
|
|
585
|
+
}
|
|
586
|
+
_b = this.options, auth = _b.auth, endpoint = _b.endpoint, project = _b.project, seller = _b.seller, disableAutoRetry = _b.disableAutoRetry;
|
|
587
|
+
return [4 /*yield*/, index_1.loadChevrePay({ auth: auth, endpoint: endpoint, disableAutoRetry: disableAutoRetry })];
|
|
588
|
+
case 1:
|
|
589
|
+
chevrePay = _c.sent();
|
|
590
|
+
return [4 /*yield*/, chevrePay.createPaymentInstance({
|
|
591
|
+
project: project,
|
|
592
|
+
seller: { id: (typeof (seller === null || seller === void 0 ? void 0 : seller.id) === 'string') ? seller.id : '' },
|
|
593
|
+
retryableStatusCodes: []
|
|
594
|
+
})];
|
|
595
|
+
case 2:
|
|
596
|
+
paymentService4issueTicket = _c.sent();
|
|
597
|
+
alreadyGivenUp = false;
|
|
598
|
+
giveUpTimeout = setTimeout(function () { alreadyGivenUp = true; }, giveUpInMS);
|
|
599
|
+
issueTicketThroughMovieTicketError = new factory.errors.GatewayTimeout('given up');
|
|
600
|
+
_c.label = 3;
|
|
601
|
+
case 3:
|
|
602
|
+
if (!(result === undefined)) return [3 /*break*/, 9];
|
|
603
|
+
// 一定時間経過すればあきらめる
|
|
604
|
+
if (alreadyGivenUp) {
|
|
605
|
+
return [3 /*break*/, 9];
|
|
606
|
+
}
|
|
607
|
+
_c.label = 4;
|
|
608
|
+
case 4:
|
|
609
|
+
_c.trys.push([4, 6, , 7]);
|
|
610
|
+
return [4 /*yield*/, paymentService4issueTicket.issueTicketThroughMovieTicket({
|
|
611
|
+
ticketedInvoice: { issuedThrough: { id: (_a = object.issuedThrough) === null || _a === void 0 ? void 0 : _a.id } },
|
|
612
|
+
purpose: purpose
|
|
613
|
+
})];
|
|
614
|
+
case 5:
|
|
615
|
+
result = _c.sent();
|
|
616
|
+
clearTimeout(giveUpTimeout);
|
|
617
|
+
return [3 /*break*/, 9];
|
|
618
|
+
case 6:
|
|
619
|
+
error_1 = _c.sent();
|
|
620
|
+
issueTicketThroughMovieTicketError = error_1;
|
|
621
|
+
return [3 /*break*/, 7];
|
|
622
|
+
case 7:
|
|
623
|
+
// n秒待機
|
|
624
|
+
return [4 /*yield*/, wait(ISSUE_TICKET_INTERVAL_MS)];
|
|
625
|
+
case 8:
|
|
626
|
+
// n秒待機
|
|
627
|
+
_c.sent();
|
|
628
|
+
// tslint:disable-next-line:no-console
|
|
629
|
+
console.log('retrying issueTicketThroughMovieTicket...', issueTicketThroughMovieTicketError === null || issueTicketThroughMovieTicketError === void 0 ? void 0 : issueTicketThroughMovieTicketError.name, alreadyGivenUp);
|
|
630
|
+
return [3 /*break*/, 3];
|
|
631
|
+
case 9:
|
|
632
|
+
if (typeof (result === null || result === void 0 ? void 0 : result.ticketToken) === 'string') {
|
|
633
|
+
return [2 /*return*/, result];
|
|
634
|
+
}
|
|
635
|
+
throw issueTicketThroughMovieTicketError;
|
|
636
|
+
}
|
|
637
|
+
});
|
|
638
|
+
});
|
|
639
|
+
};
|
|
558
640
|
return PaymentService;
|
|
559
641
|
}(service_1.Service));
|
|
560
642
|
exports.PaymentService = PaymentService;
|
package/lib/bundle.js
CHANGED
|
@@ -14577,6 +14577,27 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
14577
14577
|
});
|
|
14578
14578
|
});
|
|
14579
14579
|
};
|
|
14580
|
+
PaymentService.prototype.issueTicketThroughMovieTicket = function (params) {
|
|
14581
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
14582
|
+
var purpose, ticketedInvoice;
|
|
14583
|
+
var _this = this;
|
|
14584
|
+
return __generator(this, function (_a) {
|
|
14585
|
+
purpose = params.purpose, ticketedInvoice = params.ticketedInvoice;
|
|
14586
|
+
return [2 /*return*/, this.fetch({
|
|
14587
|
+
uri: "/payment/" + factory.service.paymentService.PaymentServiceType.MovieTicket + "/tickets",
|
|
14588
|
+
method: 'POST',
|
|
14589
|
+
expectedStatusCodes: [http_status_1.CREATED],
|
|
14590
|
+
body: { purpose: purpose, ticketedInvoice: ticketedInvoice },
|
|
14591
|
+
qs: {
|
|
14592
|
+
purpose: { id: params.purpose.id }
|
|
14593
|
+
}
|
|
14594
|
+
})
|
|
14595
|
+
.then(function (response) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
14596
|
+
return [2 /*return*/, response.json()];
|
|
14597
|
+
}); }); })];
|
|
14598
|
+
});
|
|
14599
|
+
});
|
|
14600
|
+
};
|
|
14580
14601
|
return PaymentService;
|
|
14581
14602
|
}(service_1.Service));
|
|
14582
14603
|
exports.PaymentService = PaymentService;
|
|
@@ -20306,6 +20327,16 @@ var http_status_1 = require("http-status");
|
|
|
20306
20327
|
var factory = require("../../factory");
|
|
20307
20328
|
var index_1 = require("../../index");
|
|
20308
20329
|
var service_1 = require("../../service");
|
|
20330
|
+
var ISSUE_TICKET_INTERVAL_MS = 5000;
|
|
20331
|
+
function wait(waitInMilliseconds) {
|
|
20332
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
20333
|
+
return __generator(this, function (_a) {
|
|
20334
|
+
return [2 /*return*/, new Promise(function (resolve) {
|
|
20335
|
+
setTimeout(function () { resolve(); }, waitInMilliseconds);
|
|
20336
|
+
})];
|
|
20337
|
+
});
|
|
20338
|
+
});
|
|
20339
|
+
}
|
|
20309
20340
|
/**
|
|
20310
20341
|
* 決済サービス
|
|
20311
20342
|
*/
|
|
@@ -20372,11 +20403,11 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
20372
20403
|
});
|
|
20373
20404
|
};
|
|
20374
20405
|
/**
|
|
20375
|
-
* 決済カード決済承認
|
|
20406
|
+
* 決済カード決済承認
|
|
20376
20407
|
*/
|
|
20377
|
-
PaymentService.prototype.authorizeMovieTicketAsync = function (params) {
|
|
20408
|
+
PaymentService.prototype.authorizeMovieTicketAsync = function (params, options) {
|
|
20378
20409
|
return __awaiter(this, void 0, void 0, function () {
|
|
20379
|
-
var object, purpose, _a, auth, endpoint, project, seller, disableAutoRetry, retryableStatusCodes, chevrePay, paymentService;
|
|
20410
|
+
var object, purpose, _a, auth, endpoint, project, seller, disableAutoRetry, retryableStatusCodes, chevrePay, ticketToken, paymentService;
|
|
20380
20411
|
return __generator(this, function (_b) {
|
|
20381
20412
|
switch (_b.label) {
|
|
20382
20413
|
case 0:
|
|
@@ -20385,6 +20416,9 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
20385
20416
|
return [4 /*yield*/, index_1.loadChevrePay({ auth: auth, endpoint: endpoint, disableAutoRetry: disableAutoRetry })];
|
|
20386
20417
|
case 1:
|
|
20387
20418
|
chevrePay = _b.sent();
|
|
20419
|
+
return [4 /*yield*/, this.issueTicketThroughMovieTicketUntilSuccess(params, options)];
|
|
20420
|
+
case 2:
|
|
20421
|
+
ticketToken = (_b.sent()).ticketToken;
|
|
20388
20422
|
return [4 /*yield*/, chevrePay.createPaymentInstance({
|
|
20389
20423
|
project: project,
|
|
20390
20424
|
seller: { id: (typeof (seller === null || seller === void 0 ? void 0 : seller.id) === 'string') ? seller.id : '' },
|
|
@@ -20393,9 +20427,12 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
20393
20427
|
http_status_1.TOO_MANY_REQUESTS
|
|
20394
20428
|
])
|
|
20395
20429
|
})];
|
|
20396
|
-
case
|
|
20430
|
+
case 3:
|
|
20397
20431
|
paymentService = _b.sent();
|
|
20398
|
-
return [2 /*return*/, paymentService.authorizeMovieTicket({
|
|
20432
|
+
return [2 /*return*/, paymentService.authorizeMovieTicket({
|
|
20433
|
+
object: __assign(__assign({}, object), { ticketToken: ticketToken }),
|
|
20434
|
+
purpose: purpose
|
|
20435
|
+
}, { async: true })];
|
|
20399
20436
|
}
|
|
20400
20437
|
});
|
|
20401
20438
|
});
|
|
@@ -20778,6 +20815,72 @@ var PaymentService = /** @class */ (function (_super) {
|
|
|
20778
20815
|
});
|
|
20779
20816
|
});
|
|
20780
20817
|
};
|
|
20818
|
+
PaymentService.prototype.issueTicketThroughMovieTicketUntilSuccess = function (params, options) {
|
|
20819
|
+
var _a;
|
|
20820
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
20821
|
+
var object, purpose, giveUpInMS, _b, auth, endpoint, project, seller, disableAutoRetry, chevrePay, paymentService4issueTicket, alreadyGivenUp, giveUpTimeout, result, issueTicketThroughMovieTicketError, error_1;
|
|
20822
|
+
return __generator(this, function (_c) {
|
|
20823
|
+
switch (_c.label) {
|
|
20824
|
+
case 0:
|
|
20825
|
+
object = params.object, purpose = params.purpose;
|
|
20826
|
+
giveUpInMS = options.giveUpInMS;
|
|
20827
|
+
if (typeof giveUpInMS !== 'number' || giveUpInMS <= 0) {
|
|
20828
|
+
throw new factory.errors.Argument('giveUpInMS', 'must be number > 0');
|
|
20829
|
+
}
|
|
20830
|
+
_b = this.options, auth = _b.auth, endpoint = _b.endpoint, project = _b.project, seller = _b.seller, disableAutoRetry = _b.disableAutoRetry;
|
|
20831
|
+
return [4 /*yield*/, index_1.loadChevrePay({ auth: auth, endpoint: endpoint, disableAutoRetry: disableAutoRetry })];
|
|
20832
|
+
case 1:
|
|
20833
|
+
chevrePay = _c.sent();
|
|
20834
|
+
return [4 /*yield*/, chevrePay.createPaymentInstance({
|
|
20835
|
+
project: project,
|
|
20836
|
+
seller: { id: (typeof (seller === null || seller === void 0 ? void 0 : seller.id) === 'string') ? seller.id : '' },
|
|
20837
|
+
retryableStatusCodes: []
|
|
20838
|
+
})];
|
|
20839
|
+
case 2:
|
|
20840
|
+
paymentService4issueTicket = _c.sent();
|
|
20841
|
+
alreadyGivenUp = false;
|
|
20842
|
+
giveUpTimeout = setTimeout(function () { alreadyGivenUp = true; }, giveUpInMS);
|
|
20843
|
+
issueTicketThroughMovieTicketError = new factory.errors.GatewayTimeout('given up');
|
|
20844
|
+
_c.label = 3;
|
|
20845
|
+
case 3:
|
|
20846
|
+
if (!(result === undefined)) return [3 /*break*/, 9];
|
|
20847
|
+
// 一定時間経過すればあきらめる
|
|
20848
|
+
if (alreadyGivenUp) {
|
|
20849
|
+
return [3 /*break*/, 9];
|
|
20850
|
+
}
|
|
20851
|
+
_c.label = 4;
|
|
20852
|
+
case 4:
|
|
20853
|
+
_c.trys.push([4, 6, , 7]);
|
|
20854
|
+
return [4 /*yield*/, paymentService4issueTicket.issueTicketThroughMovieTicket({
|
|
20855
|
+
ticketedInvoice: { issuedThrough: { id: (_a = object.issuedThrough) === null || _a === void 0 ? void 0 : _a.id } },
|
|
20856
|
+
purpose: purpose
|
|
20857
|
+
})];
|
|
20858
|
+
case 5:
|
|
20859
|
+
result = _c.sent();
|
|
20860
|
+
clearTimeout(giveUpTimeout);
|
|
20861
|
+
return [3 /*break*/, 9];
|
|
20862
|
+
case 6:
|
|
20863
|
+
error_1 = _c.sent();
|
|
20864
|
+
issueTicketThroughMovieTicketError = error_1;
|
|
20865
|
+
return [3 /*break*/, 7];
|
|
20866
|
+
case 7:
|
|
20867
|
+
// n秒待機
|
|
20868
|
+
return [4 /*yield*/, wait(ISSUE_TICKET_INTERVAL_MS)];
|
|
20869
|
+
case 8:
|
|
20870
|
+
// n秒待機
|
|
20871
|
+
_c.sent();
|
|
20872
|
+
// tslint:disable-next-line:no-console
|
|
20873
|
+
console.log('retrying issueTicketThroughMovieTicket...', issueTicketThroughMovieTicketError === null || issueTicketThroughMovieTicketError === void 0 ? void 0 : issueTicketThroughMovieTicketError.name, alreadyGivenUp);
|
|
20874
|
+
return [3 /*break*/, 3];
|
|
20875
|
+
case 9:
|
|
20876
|
+
if (typeof (result === null || result === void 0 ? void 0 : result.ticketToken) === 'string') {
|
|
20877
|
+
return [2 /*return*/, result];
|
|
20878
|
+
}
|
|
20879
|
+
throw issueTicketThroughMovieTicketError;
|
|
20880
|
+
}
|
|
20881
|
+
});
|
|
20882
|
+
});
|
|
20883
|
+
};
|
|
20781
20884
|
return PaymentService;
|
|
20782
20885
|
}(service_1.Service));
|
|
20783
20886
|
exports.PaymentService = PaymentService;
|