@jugarhoy/api 1.1.49 → 1.1.50
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/apis/ReservesApi.ts +52 -0
- package/models/CalculateServiceFee200Response.ts +102 -0
- package/models/CancellationPolicyDto.ts +123 -0
- package/models/ClubProfileDtoProfile.ts +15 -0
- package/models/ClubProfileDtoProfileRefund.ts +101 -0
- package/models/CustomerPaymentConfig.ts +5 -21
- package/models/PaymentDetail.ts +10 -1
- package/models/UserReserveDto.ts +39 -0
- package/models/index.ts +3 -0
- package/package.json +1 -1
package/apis/ReservesApi.ts
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
|
|
16
16
|
import * as runtime from '../runtime';
|
|
17
17
|
import type {
|
|
18
|
+
CalculateServiceFee200Response,
|
|
18
19
|
CustomerDto,
|
|
19
20
|
GenerateCode500Response,
|
|
20
21
|
Location,
|
|
@@ -24,6 +25,8 @@ import type {
|
|
|
24
25
|
UserReserveDto,
|
|
25
26
|
} from '../models/index';
|
|
26
27
|
import {
|
|
28
|
+
CalculateServiceFee200ResponseFromJSON,
|
|
29
|
+
CalculateServiceFee200ResponseToJSON,
|
|
27
30
|
CustomerDtoFromJSON,
|
|
28
31
|
CustomerDtoToJSON,
|
|
29
32
|
GenerateCode500ResponseFromJSON,
|
|
@@ -40,6 +43,10 @@ import {
|
|
|
40
43
|
UserReserveDtoToJSON,
|
|
41
44
|
} from '../models/index';
|
|
42
45
|
|
|
46
|
+
export interface CalculateServiceFeeRequest {
|
|
47
|
+
playSpotPriceId: string;
|
|
48
|
+
}
|
|
49
|
+
|
|
43
50
|
export interface CancelUserReservationRequest {
|
|
44
51
|
id: string;
|
|
45
52
|
}
|
|
@@ -73,6 +80,51 @@ export interface ProcessEmailMessageOperationRequest {
|
|
|
73
80
|
*/
|
|
74
81
|
export class ReservesApi extends runtime.BaseAPI {
|
|
75
82
|
|
|
83
|
+
/**
|
|
84
|
+
* Calculate Jugar Hoy platform service fee for a given play spot price
|
|
85
|
+
*/
|
|
86
|
+
async calculateServiceFeeRaw(requestParameters: CalculateServiceFeeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CalculateServiceFee200Response>> {
|
|
87
|
+
if (requestParameters['playSpotPriceId'] == null) {
|
|
88
|
+
throw new runtime.RequiredError(
|
|
89
|
+
'playSpotPriceId',
|
|
90
|
+
'Required parameter "playSpotPriceId" was null or undefined when calling calculateServiceFee().'
|
|
91
|
+
);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
const queryParameters: any = {};
|
|
95
|
+
|
|
96
|
+
if (requestParameters['playSpotPriceId'] != null) {
|
|
97
|
+
queryParameters['playSpotPriceId'] = requestParameters['playSpotPriceId'];
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
const headerParameters: runtime.HTTPHeaders = {};
|
|
101
|
+
|
|
102
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
103
|
+
const token = this.configuration.accessToken;
|
|
104
|
+
const tokenString = await token("bearerAuth", []);
|
|
105
|
+
|
|
106
|
+
if (tokenString) {
|
|
107
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
const response = await this.request({
|
|
111
|
+
path: `/api/reservations/calculate-service-fee`,
|
|
112
|
+
method: 'GET',
|
|
113
|
+
headers: headerParameters,
|
|
114
|
+
query: queryParameters,
|
|
115
|
+
}, initOverrides);
|
|
116
|
+
|
|
117
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => CalculateServiceFee200ResponseFromJSON(jsonValue));
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Calculate Jugar Hoy platform service fee for a given play spot price
|
|
122
|
+
*/
|
|
123
|
+
async calculateServiceFee(requestParameters: CalculateServiceFeeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CalculateServiceFee200Response> {
|
|
124
|
+
const response = await this.calculateServiceFeeRaw(requestParameters, initOverrides);
|
|
125
|
+
return await response.value();
|
|
126
|
+
}
|
|
127
|
+
|
|
76
128
|
/**
|
|
77
129
|
* Cancel a user reservation
|
|
78
130
|
*/
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Jugar Hoy - API
|
|
5
|
+
* API documentation for Jugar Hoy application
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.5.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface CalculateServiceFee200Response
|
|
20
|
+
*/
|
|
21
|
+
export interface CalculateServiceFee200Response {
|
|
22
|
+
/**
|
|
23
|
+
* Calculated platform fee in ARS
|
|
24
|
+
* @type {number}
|
|
25
|
+
* @memberof CalculateServiceFee200Response
|
|
26
|
+
*/
|
|
27
|
+
fee: number;
|
|
28
|
+
/**
|
|
29
|
+
* Fee rate (e.g. 0.0005 for 0.05%)
|
|
30
|
+
* @type {number}
|
|
31
|
+
* @memberof CalculateServiceFee200Response
|
|
32
|
+
*/
|
|
33
|
+
rate: number;
|
|
34
|
+
/**
|
|
35
|
+
* Maximum fee cap in ARS
|
|
36
|
+
* @type {number}
|
|
37
|
+
* @memberof CalculateServiceFee200Response
|
|
38
|
+
*/
|
|
39
|
+
cap: number;
|
|
40
|
+
/**
|
|
41
|
+
* Base play spot price before fee
|
|
42
|
+
* @type {number}
|
|
43
|
+
* @memberof CalculateServiceFee200Response
|
|
44
|
+
*/
|
|
45
|
+
basePrice: number;
|
|
46
|
+
/**
|
|
47
|
+
* basePrice + fee
|
|
48
|
+
* @type {number}
|
|
49
|
+
* @memberof CalculateServiceFee200Response
|
|
50
|
+
*/
|
|
51
|
+
total: number;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Check if a given object implements the CalculateServiceFee200Response interface.
|
|
56
|
+
*/
|
|
57
|
+
export function instanceOfCalculateServiceFee200Response(value: object): value is CalculateServiceFee200Response {
|
|
58
|
+
if (!('fee' in value) || value['fee'] === undefined) return false;
|
|
59
|
+
if (!('rate' in value) || value['rate'] === undefined) return false;
|
|
60
|
+
if (!('cap' in value) || value['cap'] === undefined) return false;
|
|
61
|
+
if (!('basePrice' in value) || value['basePrice'] === undefined) return false;
|
|
62
|
+
if (!('total' in value) || value['total'] === undefined) return false;
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export function CalculateServiceFee200ResponseFromJSON(json: any): CalculateServiceFee200Response {
|
|
67
|
+
return CalculateServiceFee200ResponseFromJSONTyped(json, false);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export function CalculateServiceFee200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): CalculateServiceFee200Response {
|
|
71
|
+
if (json == null) {
|
|
72
|
+
return json;
|
|
73
|
+
}
|
|
74
|
+
return {
|
|
75
|
+
|
|
76
|
+
'fee': json['fee'],
|
|
77
|
+
'rate': json['rate'],
|
|
78
|
+
'cap': json['cap'],
|
|
79
|
+
'basePrice': json['basePrice'],
|
|
80
|
+
'total': json['total'],
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export function CalculateServiceFee200ResponseToJSON(json: any): CalculateServiceFee200Response {
|
|
85
|
+
return CalculateServiceFee200ResponseToJSONTyped(json, false);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export function CalculateServiceFee200ResponseToJSONTyped(value?: CalculateServiceFee200Response | null, ignoreDiscriminator: boolean = false): any {
|
|
89
|
+
if (value == null) {
|
|
90
|
+
return value;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
return {
|
|
94
|
+
|
|
95
|
+
'fee': value['fee'],
|
|
96
|
+
'rate': value['rate'],
|
|
97
|
+
'cap': value['cap'],
|
|
98
|
+
'basePrice': value['basePrice'],
|
|
99
|
+
'total': value['total'],
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Jugar Hoy - API
|
|
5
|
+
* API documentation for Jugar Hoy application
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.5.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface CancellationPolicyDto
|
|
20
|
+
*/
|
|
21
|
+
export interface CancellationPolicyDto {
|
|
22
|
+
/**
|
|
23
|
+
* Refund policy type
|
|
24
|
+
* @type {string}
|
|
25
|
+
* @memberof CancellationPolicyDto
|
|
26
|
+
*/
|
|
27
|
+
policy: CancellationPolicyDtoPolicyEnum;
|
|
28
|
+
/**
|
|
29
|
+
* Percentage of total to refund (0-100)
|
|
30
|
+
* @type {number}
|
|
31
|
+
* @memberof CancellationPolicyDto
|
|
32
|
+
*/
|
|
33
|
+
refundPercentage: number;
|
|
34
|
+
/**
|
|
35
|
+
* Flat fee deducted from refund amount (shown to user when greater than 0)
|
|
36
|
+
* @type {number}
|
|
37
|
+
* @memberof CancellationPolicyDto
|
|
38
|
+
*/
|
|
39
|
+
processingFee: number;
|
|
40
|
+
/**
|
|
41
|
+
* Minimum hours before reservation start required for refund to apply
|
|
42
|
+
* @type {number}
|
|
43
|
+
* @memberof CancellationPolicyDto
|
|
44
|
+
*/
|
|
45
|
+
expiresAfterHours: number;
|
|
46
|
+
/**
|
|
47
|
+
* Whether the reservation is currently within the refund window
|
|
48
|
+
* @type {boolean}
|
|
49
|
+
* @memberof CancellationPolicyDto
|
|
50
|
+
*/
|
|
51
|
+
isEligibleNow: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Net refund amount after processingFee deduction (0 when not eligible)
|
|
54
|
+
* @type {number}
|
|
55
|
+
* @memberof CancellationPolicyDto
|
|
56
|
+
*/
|
|
57
|
+
estimatedRefundAmount: number;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* @export
|
|
63
|
+
*/
|
|
64
|
+
export const CancellationPolicyDtoPolicyEnum = {
|
|
65
|
+
NoRefund: 'NO_REFUND',
|
|
66
|
+
FullRefund: 'FULL_REFUND',
|
|
67
|
+
PartialRefund: 'PARTIAL_REFUND'
|
|
68
|
+
} as const;
|
|
69
|
+
export type CancellationPolicyDtoPolicyEnum = typeof CancellationPolicyDtoPolicyEnum[keyof typeof CancellationPolicyDtoPolicyEnum];
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Check if a given object implements the CancellationPolicyDto interface.
|
|
74
|
+
*/
|
|
75
|
+
export function instanceOfCancellationPolicyDto(value: object): value is CancellationPolicyDto {
|
|
76
|
+
if (!('policy' in value) || value['policy'] === undefined) return false;
|
|
77
|
+
if (!('refundPercentage' in value) || value['refundPercentage'] === undefined) return false;
|
|
78
|
+
if (!('processingFee' in value) || value['processingFee'] === undefined) return false;
|
|
79
|
+
if (!('expiresAfterHours' in value) || value['expiresAfterHours'] === undefined) return false;
|
|
80
|
+
if (!('isEligibleNow' in value) || value['isEligibleNow'] === undefined) return false;
|
|
81
|
+
if (!('estimatedRefundAmount' in value) || value['estimatedRefundAmount'] === undefined) return false;
|
|
82
|
+
return true;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export function CancellationPolicyDtoFromJSON(json: any): CancellationPolicyDto {
|
|
86
|
+
return CancellationPolicyDtoFromJSONTyped(json, false);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export function CancellationPolicyDtoFromJSONTyped(json: any, ignoreDiscriminator: boolean): CancellationPolicyDto {
|
|
90
|
+
if (json == null) {
|
|
91
|
+
return json;
|
|
92
|
+
}
|
|
93
|
+
return {
|
|
94
|
+
|
|
95
|
+
'policy': json['policy'],
|
|
96
|
+
'refundPercentage': json['refundPercentage'],
|
|
97
|
+
'processingFee': json['processingFee'],
|
|
98
|
+
'expiresAfterHours': json['expiresAfterHours'],
|
|
99
|
+
'isEligibleNow': json['isEligibleNow'],
|
|
100
|
+
'estimatedRefundAmount': json['estimatedRefundAmount'],
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
export function CancellationPolicyDtoToJSON(json: any): CancellationPolicyDto {
|
|
105
|
+
return CancellationPolicyDtoToJSONTyped(json, false);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export function CancellationPolicyDtoToJSONTyped(value?: CancellationPolicyDto | null, ignoreDiscriminator: boolean = false): any {
|
|
109
|
+
if (value == null) {
|
|
110
|
+
return value;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return {
|
|
114
|
+
|
|
115
|
+
'policy': value['policy'],
|
|
116
|
+
'refundPercentage': value['refundPercentage'],
|
|
117
|
+
'processingFee': value['processingFee'],
|
|
118
|
+
'expiresAfterHours': value['expiresAfterHours'],
|
|
119
|
+
'isEligibleNow': value['isEligibleNow'],
|
|
120
|
+
'estimatedRefundAmount': value['estimatedRefundAmount'],
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
|
|
@@ -20,6 +20,13 @@ import {
|
|
|
20
20
|
SportToJSON,
|
|
21
21
|
SportToJSONTyped,
|
|
22
22
|
} from './Sport';
|
|
23
|
+
import type { ClubProfileDtoProfileRefund } from './ClubProfileDtoProfileRefund';
|
|
24
|
+
import {
|
|
25
|
+
ClubProfileDtoProfileRefundFromJSON,
|
|
26
|
+
ClubProfileDtoProfileRefundFromJSONTyped,
|
|
27
|
+
ClubProfileDtoProfileRefundToJSON,
|
|
28
|
+
ClubProfileDtoProfileRefundToJSONTyped,
|
|
29
|
+
} from './ClubProfileDtoProfileRefund';
|
|
23
30
|
import type { ClubProfileDtoProfileLocationHoursInner } from './ClubProfileDtoProfileLocationHoursInner';
|
|
24
31
|
import {
|
|
25
32
|
ClubProfileDtoProfileLocationHoursInnerFromJSON,
|
|
@@ -215,6 +222,12 @@ export interface ClubProfileDtoProfile {
|
|
|
215
222
|
* @memberof ClubProfileDtoProfile
|
|
216
223
|
*/
|
|
217
224
|
serviceTypes?: Array<ServiceType> | null;
|
|
225
|
+
/**
|
|
226
|
+
*
|
|
227
|
+
* @type {ClubProfileDtoProfileRefund}
|
|
228
|
+
* @memberof ClubProfileDtoProfile
|
|
229
|
+
*/
|
|
230
|
+
refund?: ClubProfileDtoProfileRefund | null;
|
|
218
231
|
}
|
|
219
232
|
|
|
220
233
|
|
|
@@ -291,6 +304,7 @@ export function ClubProfileDtoProfileFromJSONTyped(json: any, ignoreDiscriminato
|
|
|
291
304
|
'courtCount': json['courtCount'] == null ? undefined : json['courtCount'],
|
|
292
305
|
'locationHours': json['locationHours'] == null ? undefined : ((json['locationHours'] as Array<any>).map(ClubProfileDtoProfileLocationHoursInnerFromJSON)),
|
|
293
306
|
'serviceTypes': json['serviceTypes'] == null ? undefined : ((json['serviceTypes'] as Array<any>).map(ServiceTypeFromJSON)),
|
|
307
|
+
'refund': json['refund'] == null ? undefined : ClubProfileDtoProfileRefundFromJSON(json['refund']),
|
|
294
308
|
};
|
|
295
309
|
}
|
|
296
310
|
|
|
@@ -334,6 +348,7 @@ export function ClubProfileDtoProfileToJSONTyped(value?: ClubProfileDtoProfile |
|
|
|
334
348
|
'courtCount': value['courtCount'],
|
|
335
349
|
'locationHours': value['locationHours'] == null ? undefined : ((value['locationHours'] as Array<any>).map(ClubProfileDtoProfileLocationHoursInnerToJSON)),
|
|
336
350
|
'serviceTypes': value['serviceTypes'] == null ? undefined : ((value['serviceTypes'] as Array<any>).map(ServiceTypeToJSON)),
|
|
351
|
+
'refund': ClubProfileDtoProfileRefundToJSON(value['refund']),
|
|
337
352
|
};
|
|
338
353
|
}
|
|
339
354
|
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Jugar Hoy - API
|
|
5
|
+
* API documentation for Jugar Hoy application
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.5.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
* Cancellation refund policy for this club
|
|
18
|
+
* @export
|
|
19
|
+
* @interface ClubProfileDtoProfileRefund
|
|
20
|
+
*/
|
|
21
|
+
export interface ClubProfileDtoProfileRefund {
|
|
22
|
+
/**
|
|
23
|
+
*
|
|
24
|
+
* @type {string}
|
|
25
|
+
* @memberof ClubProfileDtoProfileRefund
|
|
26
|
+
*/
|
|
27
|
+
policy?: ClubProfileDtoProfileRefundPolicyEnum;
|
|
28
|
+
/**
|
|
29
|
+
* Refund percentage (0-100), used when policy is PARTIAL_REFUND
|
|
30
|
+
* @type {number}
|
|
31
|
+
* @memberof ClubProfileDtoProfileRefund
|
|
32
|
+
*/
|
|
33
|
+
percentage?: number;
|
|
34
|
+
/**
|
|
35
|
+
* Flat fee deducted from refund amount (shown to user when greater than 0)
|
|
36
|
+
* @type {number}
|
|
37
|
+
* @memberof ClubProfileDtoProfileRefund
|
|
38
|
+
*/
|
|
39
|
+
processingFee?: number;
|
|
40
|
+
/**
|
|
41
|
+
* Minimum hours before reservation start required for refund to apply
|
|
42
|
+
* @type {number}
|
|
43
|
+
* @memberof ClubProfileDtoProfileRefund
|
|
44
|
+
*/
|
|
45
|
+
expiresAfterHours?: number;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* @export
|
|
51
|
+
*/
|
|
52
|
+
export const ClubProfileDtoProfileRefundPolicyEnum = {
|
|
53
|
+
NoRefund: 'NO_REFUND',
|
|
54
|
+
FullRefund: 'FULL_REFUND',
|
|
55
|
+
PartialRefund: 'PARTIAL_REFUND'
|
|
56
|
+
} as const;
|
|
57
|
+
export type ClubProfileDtoProfileRefundPolicyEnum = typeof ClubProfileDtoProfileRefundPolicyEnum[keyof typeof ClubProfileDtoProfileRefundPolicyEnum];
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Check if a given object implements the ClubProfileDtoProfileRefund interface.
|
|
62
|
+
*/
|
|
63
|
+
export function instanceOfClubProfileDtoProfileRefund(value: object): value is ClubProfileDtoProfileRefund {
|
|
64
|
+
return true;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export function ClubProfileDtoProfileRefundFromJSON(json: any): ClubProfileDtoProfileRefund {
|
|
68
|
+
return ClubProfileDtoProfileRefundFromJSONTyped(json, false);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export function ClubProfileDtoProfileRefundFromJSONTyped(json: any, ignoreDiscriminator: boolean): ClubProfileDtoProfileRefund {
|
|
72
|
+
if (json == null) {
|
|
73
|
+
return json;
|
|
74
|
+
}
|
|
75
|
+
return {
|
|
76
|
+
|
|
77
|
+
'policy': json['policy'] == null ? undefined : json['policy'],
|
|
78
|
+
'percentage': json['percentage'] == null ? undefined : json['percentage'],
|
|
79
|
+
'processingFee': json['processingFee'] == null ? undefined : json['processingFee'],
|
|
80
|
+
'expiresAfterHours': json['expiresAfterHours'] == null ? undefined : json['expiresAfterHours'],
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export function ClubProfileDtoProfileRefundToJSON(json: any): ClubProfileDtoProfileRefund {
|
|
85
|
+
return ClubProfileDtoProfileRefundToJSONTyped(json, false);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export function ClubProfileDtoProfileRefundToJSONTyped(value?: ClubProfileDtoProfileRefund | null, ignoreDiscriminator: boolean = false): any {
|
|
89
|
+
if (value == null) {
|
|
90
|
+
return value;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
return {
|
|
94
|
+
|
|
95
|
+
'policy': value['policy'],
|
|
96
|
+
'percentage': value['percentage'],
|
|
97
|
+
'processingFee': value['processingFee'],
|
|
98
|
+
'expiresAfterHours': value['expiresAfterHours'],
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
|
|
@@ -70,23 +70,11 @@ export interface CustomerPaymentConfig {
|
|
|
70
70
|
*/
|
|
71
71
|
bankCardId?: string | null;
|
|
72
72
|
/**
|
|
73
|
-
*
|
|
74
|
-
* @type {
|
|
75
|
-
* @memberof CustomerPaymentConfig
|
|
76
|
-
*/
|
|
77
|
-
accessToken?: string | null;
|
|
78
|
-
/**
|
|
79
|
-
* Refresh token for the payment provider (sensitive data, not exposed in DTOs)
|
|
80
|
-
* @type {string}
|
|
81
|
-
* @memberof CustomerPaymentConfig
|
|
82
|
-
*/
|
|
83
|
-
refreshToken?: string | null;
|
|
84
|
-
/**
|
|
85
|
-
* Provider-specific ID (sensitive data, not exposed in DTOs)
|
|
86
|
-
* @type {string}
|
|
73
|
+
* Whether the OAuth provider account is linked (e.g. MercadoPago account authorized)
|
|
74
|
+
* @type {boolean}
|
|
87
75
|
* @memberof CustomerPaymentConfig
|
|
88
76
|
*/
|
|
89
|
-
|
|
77
|
+
linked?: boolean;
|
|
90
78
|
/**
|
|
91
79
|
* Whether this payment configuration is enabled
|
|
92
80
|
* @type {boolean}
|
|
@@ -141,9 +129,7 @@ export function CustomerPaymentConfigFromJSONTyped(json: any, ignoreDiscriminato
|
|
|
141
129
|
'code': json['code'],
|
|
142
130
|
'discount': json['discount'],
|
|
143
131
|
'bankCardId': json['bankCardId'] == null ? undefined : json['bankCardId'],
|
|
144
|
-
'
|
|
145
|
-
'refreshToken': json['refreshToken'] == null ? undefined : json['refreshToken'],
|
|
146
|
-
'providerId': json['providerId'] == null ? undefined : json['providerId'],
|
|
132
|
+
'linked': json['linked'] == null ? undefined : json['linked'],
|
|
147
133
|
'enabled': json['enabled'],
|
|
148
134
|
'createdAt': (new Date(json['createdAt'])),
|
|
149
135
|
'updatedAt': (new Date(json['updatedAt'])),
|
|
@@ -168,9 +154,7 @@ export function CustomerPaymentConfigToJSONTyped(value?: CustomerPaymentConfig |
|
|
|
168
154
|
'code': value['code'],
|
|
169
155
|
'discount': value['discount'],
|
|
170
156
|
'bankCardId': value['bankCardId'],
|
|
171
|
-
'
|
|
172
|
-
'refreshToken': value['refreshToken'],
|
|
173
|
-
'providerId': value['providerId'],
|
|
157
|
+
'linked': value['linked'],
|
|
174
158
|
'enabled': value['enabled'],
|
|
175
159
|
'createdAt': ((value['createdAt']).toISOString()),
|
|
176
160
|
'updatedAt': ((value['updatedAt']).toISOString()),
|
package/models/PaymentDetail.ts
CHANGED
|
@@ -102,7 +102,13 @@ export interface PaymentDetail {
|
|
|
102
102
|
*/
|
|
103
103
|
discount: number;
|
|
104
104
|
/**
|
|
105
|
-
*
|
|
105
|
+
* Jugar Hoy platform commission fee
|
|
106
|
+
* @type {number}
|
|
107
|
+
* @memberof PaymentDetail
|
|
108
|
+
*/
|
|
109
|
+
platformFee: number;
|
|
110
|
+
/**
|
|
111
|
+
* Final total amount after discount (includes platform fee)
|
|
106
112
|
* @type {number}
|
|
107
113
|
* @memberof PaymentDetail
|
|
108
114
|
*/
|
|
@@ -139,6 +145,7 @@ export function instanceOfPaymentDetail(value: object): value is PaymentDetail {
|
|
|
139
145
|
if (!('status' in value) || value['status'] === undefined) return false;
|
|
140
146
|
if (!('amount' in value) || value['amount'] === undefined) return false;
|
|
141
147
|
if (!('discount' in value) || value['discount'] === undefined) return false;
|
|
148
|
+
if (!('platformFee' in value) || value['platformFee'] === undefined) return false;
|
|
142
149
|
if (!('total' in value) || value['total'] === undefined) return false;
|
|
143
150
|
if (!('currency' in value) || value['currency'] === undefined) return false;
|
|
144
151
|
return true;
|
|
@@ -164,6 +171,7 @@ export function PaymentDetailFromJSONTyped(json: any, ignoreDiscriminator: boole
|
|
|
164
171
|
'subscriptionId': json['subscriptionId'] == null ? undefined : json['subscriptionId'],
|
|
165
172
|
'amount': json['amount'],
|
|
166
173
|
'discount': json['discount'],
|
|
174
|
+
'platformFee': json['platformFee'],
|
|
167
175
|
'total': json['total'],
|
|
168
176
|
'currency': json['currency'],
|
|
169
177
|
'mobile': json['mobile'] == null ? undefined : json['mobile'],
|
|
@@ -192,6 +200,7 @@ export function PaymentDetailToJSONTyped(value?: PaymentDetail | null, ignoreDis
|
|
|
192
200
|
'subscriptionId': value['subscriptionId'],
|
|
193
201
|
'amount': value['amount'],
|
|
194
202
|
'discount': value['discount'],
|
|
203
|
+
'platformFee': value['platformFee'],
|
|
195
204
|
'total': value['total'],
|
|
196
205
|
'currency': value['currency'],
|
|
197
206
|
'mobile': value['mobile'],
|
package/models/UserReserveDto.ts
CHANGED
|
@@ -20,6 +20,13 @@ import {
|
|
|
20
20
|
PaymentDetailToJSON,
|
|
21
21
|
PaymentDetailToJSONTyped,
|
|
22
22
|
} from './PaymentDetail';
|
|
23
|
+
import type { CancellationPolicyDto } from './CancellationPolicyDto';
|
|
24
|
+
import {
|
|
25
|
+
CancellationPolicyDtoFromJSON,
|
|
26
|
+
CancellationPolicyDtoFromJSONTyped,
|
|
27
|
+
CancellationPolicyDtoToJSON,
|
|
28
|
+
CancellationPolicyDtoToJSONTyped,
|
|
29
|
+
} from './CancellationPolicyDto';
|
|
23
30
|
|
|
24
31
|
/**
|
|
25
32
|
*
|
|
@@ -135,6 +142,24 @@ export interface UserReserveDto {
|
|
|
135
142
|
* @memberof UserReserveDto
|
|
136
143
|
*/
|
|
137
144
|
price?: number | null;
|
|
145
|
+
/**
|
|
146
|
+
* Base play price before platform fee
|
|
147
|
+
* @type {number}
|
|
148
|
+
* @memberof UserReserveDto
|
|
149
|
+
*/
|
|
150
|
+
subtotal?: number | null;
|
|
151
|
+
/**
|
|
152
|
+
* Jugar Hoy platform commission fee
|
|
153
|
+
* @type {number}
|
|
154
|
+
* @memberof UserReserveDto
|
|
155
|
+
*/
|
|
156
|
+
platformFee?: number | null;
|
|
157
|
+
/**
|
|
158
|
+
* Total amount paid including platform fee
|
|
159
|
+
* @type {number}
|
|
160
|
+
* @memberof UserReserveDto
|
|
161
|
+
*/
|
|
162
|
+
totalPaid?: number | null;
|
|
138
163
|
/**
|
|
139
164
|
* Coach user ID (if this is a coach-led class)
|
|
140
165
|
* @type {string}
|
|
@@ -177,6 +202,12 @@ export interface UserReserveDto {
|
|
|
177
202
|
* @memberof UserReserveDto
|
|
178
203
|
*/
|
|
179
204
|
tournamentName?: string | null;
|
|
205
|
+
/**
|
|
206
|
+
*
|
|
207
|
+
* @type {CancellationPolicyDto}
|
|
208
|
+
* @memberof UserReserveDto
|
|
209
|
+
*/
|
|
210
|
+
cancellationPolicy?: CancellationPolicyDto;
|
|
180
211
|
}
|
|
181
212
|
|
|
182
213
|
|
|
@@ -244,6 +275,9 @@ export function UserReserveDtoFromJSONTyped(json: any, ignoreDiscriminator: bool
|
|
|
244
275
|
'clubId': json['clubId'],
|
|
245
276
|
'clubName': json['clubName'],
|
|
246
277
|
'price': json['price'] == null ? undefined : json['price'],
|
|
278
|
+
'subtotal': json['subtotal'] == null ? undefined : json['subtotal'],
|
|
279
|
+
'platformFee': json['platformFee'] == null ? undefined : json['platformFee'],
|
|
280
|
+
'totalPaid': json['totalPaid'] == null ? undefined : json['totalPaid'],
|
|
247
281
|
'coachId': json['coachId'] == null ? undefined : json['coachId'],
|
|
248
282
|
'coachName': json['coachName'] == null ? undefined : json['coachName'],
|
|
249
283
|
'coachAvatarUrl': json['coachAvatarUrl'] == null ? undefined : json['coachAvatarUrl'],
|
|
@@ -251,6 +285,7 @@ export function UserReserveDtoFromJSONTyped(json: any, ignoreDiscriminator: bool
|
|
|
251
285
|
'reserveType': json['reserveType'] == null ? undefined : json['reserveType'],
|
|
252
286
|
'playSearchId': json['playSearchId'] == null ? undefined : json['playSearchId'],
|
|
253
287
|
'tournamentName': json['tournamentName'] == null ? undefined : json['tournamentName'],
|
|
288
|
+
'cancellationPolicy': json['cancellationPolicy'] == null ? undefined : CancellationPolicyDtoFromJSON(json['cancellationPolicy']),
|
|
254
289
|
};
|
|
255
290
|
}
|
|
256
291
|
|
|
@@ -283,6 +318,9 @@ export function UserReserveDtoToJSONTyped(value?: UserReserveDto | null, ignoreD
|
|
|
283
318
|
'clubId': value['clubId'],
|
|
284
319
|
'clubName': value['clubName'],
|
|
285
320
|
'price': value['price'],
|
|
321
|
+
'subtotal': value['subtotal'],
|
|
322
|
+
'platformFee': value['platformFee'],
|
|
323
|
+
'totalPaid': value['totalPaid'],
|
|
286
324
|
'coachId': value['coachId'],
|
|
287
325
|
'coachName': value['coachName'],
|
|
288
326
|
'coachAvatarUrl': value['coachAvatarUrl'],
|
|
@@ -290,6 +328,7 @@ export function UserReserveDtoToJSONTyped(value?: UserReserveDto | null, ignoreD
|
|
|
290
328
|
'reserveType': value['reserveType'],
|
|
291
329
|
'playSearchId': value['playSearchId'],
|
|
292
330
|
'tournamentName': value['tournamentName'],
|
|
331
|
+
'cancellationPolicy': CancellationPolicyDtoToJSON(value['cancellationPolicy']),
|
|
293
332
|
};
|
|
294
333
|
}
|
|
295
334
|
|
package/models/index.ts
CHANGED
|
@@ -34,9 +34,11 @@ export * from './BulkImportResult';
|
|
|
34
34
|
export * from './BulkImportRowError';
|
|
35
35
|
export * from './BulkMarkBillsPaid200Response';
|
|
36
36
|
export * from './BulkMarkBillsPaid200ResponseErrorsInner';
|
|
37
|
+
export * from './CalculateServiceFee200Response';
|
|
37
38
|
export * from './CancelReservationParams';
|
|
38
39
|
export * from './CancelReservationRequest';
|
|
39
40
|
export * from './CancelReservationResult';
|
|
41
|
+
export * from './CancellationPolicyDto';
|
|
40
42
|
export * from './ChargeOn';
|
|
41
43
|
export * from './Check200Response';
|
|
42
44
|
export * from './CheckUserExists200Response';
|
|
@@ -48,6 +50,7 @@ export * from './ClubPlaceRegistrationStatus';
|
|
|
48
50
|
export * from './ClubProfileDto';
|
|
49
51
|
export * from './ClubProfileDtoProfile';
|
|
50
52
|
export * from './ClubProfileDtoProfileLocationHoursInner';
|
|
53
|
+
export * from './ClubProfileDtoProfileRefund';
|
|
51
54
|
export * from './ClubProfileNextMatchDto';
|
|
52
55
|
export * from './ClubSearchParams';
|
|
53
56
|
export * from './ClubSearchParamsGeo';
|