spotcharge-types 1.0.347 → 1.0.349
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/.cursor/rules/enum-organization.mdc +31 -0
- package/dist/enum/fee-component-type.enum.d.ts +5 -0
- package/dist/enum/fee-component-type.enum.d.ts.map +1 -0
- package/dist/enum/fee-component-type.enum.js +9 -0
- package/dist/enum/fee-component-type.enum.js.map +1 -0
- package/dist/enum/fee-unit.enum.d.ts +6 -0
- package/dist/enum/fee-unit.enum.d.ts.map +1 -0
- package/dist/enum/fee-unit.enum.js +10 -0
- package/dist/enum/fee-unit.enum.js.map +1 -0
- package/dist/enum/index.d.ts +1 -0
- package/dist/enum/index.d.ts.map +1 -1
- package/dist/enum/index.js +8 -2
- package/dist/enum/index.js.map +1 -1
- package/dist/enum/pricing/connector-output-type.enum.d.ts +5 -0
- package/dist/enum/pricing/connector-output-type.enum.d.ts.map +1 -0
- package/dist/enum/pricing/connector-output-type.enum.js +9 -0
- package/dist/enum/pricing/connector-output-type.enum.js.map +1 -0
- package/dist/enum/pricing/fee-component-type.enum.d.ts +5 -0
- package/dist/enum/pricing/fee-component-type.enum.d.ts.map +1 -0
- package/dist/enum/pricing/fee-component-type.enum.js +9 -0
- package/dist/enum/pricing/fee-component-type.enum.js.map +1 -0
- package/dist/enum/pricing/fee-unit.enum.d.ts +6 -0
- package/dist/enum/pricing/fee-unit.enum.d.ts.map +1 -0
- package/dist/enum/pricing/fee-unit.enum.js +10 -0
- package/dist/enum/pricing/fee-unit.enum.js.map +1 -0
- package/dist/enum/pricing/index.d.ts +6 -0
- package/dist/enum/pricing/index.d.ts.map +1 -0
- package/dist/enum/pricing/index.js +14 -0
- package/dist/enum/pricing/index.js.map +1 -0
- package/dist/enum/pricing/rate-duration-unit.enum.d.ts +6 -0
- package/dist/enum/pricing/rate-duration-unit.enum.d.ts.map +1 -0
- package/dist/enum/pricing/rate-duration-unit.enum.js +10 -0
- package/dist/enum/pricing/rate-duration-unit.enum.js.map +1 -0
- package/dist/enum/pricing/tariff-rule-type.enum.d.ts +5 -0
- package/dist/enum/pricing/tariff-rule-type.enum.d.ts.map +1 -0
- package/dist/enum/pricing/tariff-rule-type.enum.js +9 -0
- package/dist/enum/pricing/tariff-rule-type.enum.js.map +1 -0
- package/dist/enum/pricing-connector-output-type.enum.d.ts +5 -0
- package/dist/enum/pricing-connector-output-type.enum.d.ts.map +1 -0
- package/dist/enum/pricing-connector-output-type.enum.js +9 -0
- package/dist/enum/pricing-connector-output-type.enum.js.map +1 -0
- package/dist/enum/rate-duration-unit.enum.d.ts +6 -0
- package/dist/enum/rate-duration-unit.enum.d.ts.map +1 -0
- package/dist/enum/rate-duration-unit.enum.js +10 -0
- package/dist/enum/rate-duration-unit.enum.js.map +1 -0
- package/dist/enum/tariff-rule-type.enum.d.ts +5 -0
- package/dist/enum/tariff-rule-type.enum.d.ts.map +1 -0
- package/dist/enum/tariff-rule-type.enum.js +9 -0
- package/dist/enum/tariff-rule-type.enum.js.map +1 -0
- package/dist/models/api/index.d.ts +3 -0
- package/dist/models/api/index.d.ts.map +1 -1
- package/dist/models/api/index.js +3 -1
- package/dist/models/api/index.js.map +1 -1
- package/dist/models/api/partner-inquiries/partner-inquiry.api.model.d.ts +67 -0
- package/dist/models/api/partner-inquiries/partner-inquiry.api.model.d.ts.map +1 -0
- package/dist/models/api/partner-inquiries/partner-inquiry.api.model.js +12 -0
- package/dist/models/api/partner-inquiries/partner-inquiry.api.model.js.map +1 -0
- package/dist/models/api/pricing/pricing.api.model.d.ts +139 -0
- package/dist/models/api/pricing/pricing.api.model.d.ts.map +1 -0
- package/dist/models/api/pricing/pricing.api.model.js +3 -0
- package/dist/models/api/pricing/pricing.api.model.js.map +1 -0
- package/dist/models/api/stations/station-picker.api.model.d.ts +19 -0
- package/dist/models/api/stations/station-picker.api.model.d.ts.map +1 -0
- package/dist/models/api/stations/station-picker.api.model.js +3 -0
- package/dist/models/api/stations/station-picker.api.model.js.map +1 -0
- package/package.json +1 -1
- package/src/enum/index.ts +7 -0
- package/src/enum/pricing/connector-output-type.enum.ts +4 -0
- package/src/enum/pricing/fee-component-type.enum.ts +4 -0
- package/src/enum/pricing/fee-unit.enum.ts +5 -0
- package/src/enum/pricing/index.ts +5 -0
- package/src/enum/pricing/rate-duration-unit.enum.ts +5 -0
- package/src/enum/pricing/tariff-rule-type.enum.ts +4 -0
- package/src/models/api/index.ts +34 -0
- package/src/models/api/partner-inquiries/partner-inquiry.api.model.ts +89 -0
- package/src/models/api/pricing/pricing.api.model.ts +167 -0
- package/src/models/api/stations/station-picker.api.model.ts +20 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { FeeComponentType, FeeUnit, ConnectorOutputType, RateDurationUnit, TariffRuleType } from '../../../enum/pricing';
|
|
2
|
+
import { AuditActor } from '../../audit-actor.model';
|
|
3
|
+
import { AuditTimestampsApiModel, IsoDateTime } from '../users/shared.api.model';
|
|
4
|
+
import { ApiSortDirection } from '../users/admin-user.api.model';
|
|
5
|
+
/** GET /api/fee-catalog */
|
|
6
|
+
export type FeeCatalogListOrderBy = 'name' | 'componentType' | 'createdAt';
|
|
7
|
+
export interface FeeCatalogListItemApiModel {
|
|
8
|
+
id: string;
|
|
9
|
+
name: string;
|
|
10
|
+
componentType: FeeComponentType;
|
|
11
|
+
rate: number;
|
|
12
|
+
unit: FeeUnit;
|
|
13
|
+
rateDurationValue: number | null;
|
|
14
|
+
rateDurationUnit: RateDurationUnit | null;
|
|
15
|
+
createdAt: IsoDateTime;
|
|
16
|
+
}
|
|
17
|
+
export interface FeeCatalogListApiModel {
|
|
18
|
+
rows: FeeCatalogListItemApiModel[];
|
|
19
|
+
totalCount: number;
|
|
20
|
+
pageIndex: number;
|
|
21
|
+
pageSize: number;
|
|
22
|
+
orderBy: FeeCatalogListOrderBy;
|
|
23
|
+
sortDirection: ApiSortDirection;
|
|
24
|
+
}
|
|
25
|
+
export interface FeeCatalogDetailApiModel extends FeeCatalogListItemApiModel, AuditTimestampsApiModel {
|
|
26
|
+
isDeleted: boolean;
|
|
27
|
+
createdBy: AuditActor | null;
|
|
28
|
+
updatedBy: AuditActor | null;
|
|
29
|
+
deletedBy: AuditActor | null;
|
|
30
|
+
}
|
|
31
|
+
export interface CreateFeeCatalogRequest {
|
|
32
|
+
name: string;
|
|
33
|
+
componentType: FeeComponentType;
|
|
34
|
+
rate: number;
|
|
35
|
+
unit: FeeUnit;
|
|
36
|
+
rateDurationValue?: number | null;
|
|
37
|
+
rateDurationUnit?: RateDurationUnit | null;
|
|
38
|
+
}
|
|
39
|
+
export interface UpdateFeeCatalogRequest {
|
|
40
|
+
name?: string;
|
|
41
|
+
rate?: number;
|
|
42
|
+
unit?: FeeUnit;
|
|
43
|
+
rateDurationValue?: number | null;
|
|
44
|
+
rateDurationUnit?: RateDurationUnit | null;
|
|
45
|
+
}
|
|
46
|
+
/** Summary embedded on tariff detail/list */
|
|
47
|
+
export interface FeeCatalogSummaryApiModel {
|
|
48
|
+
id: string;
|
|
49
|
+
name: string;
|
|
50
|
+
componentType: FeeComponentType;
|
|
51
|
+
rate: number;
|
|
52
|
+
unit: FeeUnit;
|
|
53
|
+
rateDurationValue: number | null;
|
|
54
|
+
rateDurationUnit: RateDurationUnit | null;
|
|
55
|
+
}
|
|
56
|
+
/** GET /api/tariffs */
|
|
57
|
+
export type TariffListOrderBy = 'name' | 'createdAt';
|
|
58
|
+
export interface TariffListItemApiModel {
|
|
59
|
+
id: string;
|
|
60
|
+
name: string;
|
|
61
|
+
description: string | null;
|
|
62
|
+
isActive: boolean;
|
|
63
|
+
components: FeeCatalogSummaryApiModel[];
|
|
64
|
+
createdAt: IsoDateTime;
|
|
65
|
+
}
|
|
66
|
+
export interface TariffListApiModel {
|
|
67
|
+
rows: TariffListItemApiModel[];
|
|
68
|
+
totalCount: number;
|
|
69
|
+
pageIndex: number;
|
|
70
|
+
pageSize: number;
|
|
71
|
+
orderBy: TariffListOrderBy;
|
|
72
|
+
sortDirection: ApiSortDirection;
|
|
73
|
+
}
|
|
74
|
+
export interface TariffDetailApiModel extends TariffListItemApiModel, AuditTimestampsApiModel {
|
|
75
|
+
isDeleted: boolean;
|
|
76
|
+
createdBy: AuditActor | null;
|
|
77
|
+
updatedBy: AuditActor | null;
|
|
78
|
+
deletedBy: AuditActor | null;
|
|
79
|
+
}
|
|
80
|
+
export interface CreateTariffRequest {
|
|
81
|
+
name: string;
|
|
82
|
+
description?: string | null;
|
|
83
|
+
isActive?: boolean;
|
|
84
|
+
/** Fee catalog IDs — exactly one energy, at most one session */
|
|
85
|
+
feeCatalogIds: string[];
|
|
86
|
+
}
|
|
87
|
+
export interface UpdateTariffRequest {
|
|
88
|
+
name?: string;
|
|
89
|
+
description?: string | null;
|
|
90
|
+
isActive?: boolean;
|
|
91
|
+
feeCatalogIds?: string[];
|
|
92
|
+
}
|
|
93
|
+
/** GET /api/tariff-rules */
|
|
94
|
+
export type TariffRuleListOrderBy = 'validFrom' | 'createdAt';
|
|
95
|
+
export interface TariffRuleListItemApiModel {
|
|
96
|
+
id: string;
|
|
97
|
+
ruleType: TariffRuleType;
|
|
98
|
+
tariffId: string;
|
|
99
|
+
tariffName: string;
|
|
100
|
+
stationId: string | null;
|
|
101
|
+
stationName: string | null;
|
|
102
|
+
outputType: ConnectorOutputType | null;
|
|
103
|
+
validFrom: IsoDateTime;
|
|
104
|
+
validTo: IsoDateTime | null;
|
|
105
|
+
isActive: boolean;
|
|
106
|
+
createdAt: IsoDateTime;
|
|
107
|
+
}
|
|
108
|
+
export interface TariffRuleListApiModel {
|
|
109
|
+
rows: TariffRuleListItemApiModel[];
|
|
110
|
+
totalCount: number;
|
|
111
|
+
pageIndex: number;
|
|
112
|
+
pageSize: number;
|
|
113
|
+
orderBy: TariffRuleListOrderBy;
|
|
114
|
+
sortDirection: ApiSortDirection;
|
|
115
|
+
}
|
|
116
|
+
export interface TariffRuleDetailApiModel extends TariffRuleListItemApiModel, AuditTimestampsApiModel {
|
|
117
|
+
isDeleted: boolean;
|
|
118
|
+
createdBy: AuditActor | null;
|
|
119
|
+
updatedBy: AuditActor | null;
|
|
120
|
+
deletedBy: AuditActor | null;
|
|
121
|
+
}
|
|
122
|
+
export interface CreateTariffRuleRequest {
|
|
123
|
+
ruleType: TariffRuleType;
|
|
124
|
+
tariffId: string;
|
|
125
|
+
stationId?: string | null;
|
|
126
|
+
outputType?: ConnectorOutputType | null;
|
|
127
|
+
validFrom?: IsoDateTime;
|
|
128
|
+
validTo?: IsoDateTime | null;
|
|
129
|
+
isActive?: boolean;
|
|
130
|
+
}
|
|
131
|
+
export interface UpdateTariffRuleRequest {
|
|
132
|
+
tariffId?: string;
|
|
133
|
+
stationId?: string | null;
|
|
134
|
+
outputType?: ConnectorOutputType | null;
|
|
135
|
+
validFrom?: IsoDateTime;
|
|
136
|
+
validTo?: IsoDateTime | null;
|
|
137
|
+
isActive?: boolean;
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=pricing.api.model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pricing.api.model.d.ts","sourceRoot":"","sources":["../../../../src/models/api/pricing/pricing.api.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pricing.api.model.js","sourceRoot":"","sources":["../../../../src/models/api/pricing/pricing.api.model.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { StationStatus } from '../../../enum';
|
|
2
|
+
/** GET /api/admin/stations/picker — autocomplete / admin search row. */
|
|
3
|
+
export interface StationPickerItemApiModel {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
stationCode: string;
|
|
7
|
+
status: StationStatus;
|
|
8
|
+
city: string;
|
|
9
|
+
stateName: string;
|
|
10
|
+
companyId: string | null;
|
|
11
|
+
businessUnitId: string | null;
|
|
12
|
+
}
|
|
13
|
+
export interface StationPickerListApiModel {
|
|
14
|
+
rows: StationPickerItemApiModel[];
|
|
15
|
+
totalCount: number;
|
|
16
|
+
pageIndex: number;
|
|
17
|
+
pageSize: number;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=station-picker.api.model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"station-picker.api.model.d.ts","sourceRoot":"","sources":["../../../../src/models/api/stations/station-picker.api.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,wEAAwE;AACxE,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,yBAAyB,EAAE,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"station-picker.api.model.js","sourceRoot":"","sources":["../../../../src/models/api/stations/station-picker.api.model.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
package/src/enum/index.ts
CHANGED
|
@@ -39,6 +39,13 @@ export {RefundStatus} from './refund-status.enum';
|
|
|
39
39
|
export {RefundReason} from './refund-reason.enum';
|
|
40
40
|
export {RefundDestination} from './refund-destination.enum';
|
|
41
41
|
export {TariffScope} from './tariff-scope.enum';
|
|
42
|
+
export {
|
|
43
|
+
FeeComponentType,
|
|
44
|
+
FeeUnit,
|
|
45
|
+
RateDurationUnit,
|
|
46
|
+
TariffRuleType,
|
|
47
|
+
ConnectorOutputType,
|
|
48
|
+
} from './pricing';
|
|
42
49
|
export {CompanyType} from './company-type.enum';
|
|
43
50
|
export {CompanyStatus} from './company-status.enum';
|
|
44
51
|
/** @deprecated Use UserRoleStatus instead */
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export {FeeComponentType} from './fee-component-type.enum';
|
|
2
|
+
export {FeeUnit} from './fee-unit.enum';
|
|
3
|
+
export {RateDurationUnit} from './rate-duration-unit.enum';
|
|
4
|
+
export {TariffRuleType} from './tariff-rule-type.enum';
|
|
5
|
+
export {ConnectorOutputType} from './connector-output-type.enum';
|
package/src/models/api/index.ts
CHANGED
|
@@ -73,6 +73,10 @@ export {
|
|
|
73
73
|
AssignStationChargersResponse,
|
|
74
74
|
RemoveStationChargersResponse,
|
|
75
75
|
} from './stations/station.api.model';
|
|
76
|
+
export {
|
|
77
|
+
StationPickerItemApiModel,
|
|
78
|
+
StationPickerListApiModel,
|
|
79
|
+
} from './stations/station-picker.api.model';
|
|
76
80
|
export {StationApiModel, StationChargerCounts, StationAmenities, StationPhotoModel} from './station.api.model';
|
|
77
81
|
export {StationSearchApiModel} from './station-search.api.model';
|
|
78
82
|
export {StationSearchSource} from '../../enum';
|
|
@@ -98,6 +102,27 @@ export {FleetUserV2ApiModel} from './fleet-user-v2.api.model';
|
|
|
98
102
|
export {FleetUserAccessApiModel} from './fleet-user-access.api.model';
|
|
99
103
|
export {TariffApiModel} from './tariff.api.model';
|
|
100
104
|
export {TariffAssignmentApiModel} from './tariff-assignment.api.model';
|
|
105
|
+
export {
|
|
106
|
+
FeeCatalogDetailApiModel,
|
|
107
|
+
FeeCatalogListApiModel,
|
|
108
|
+
FeeCatalogListItemApiModel,
|
|
109
|
+
FeeCatalogListOrderBy,
|
|
110
|
+
FeeCatalogSummaryApiModel,
|
|
111
|
+
CreateFeeCatalogRequest,
|
|
112
|
+
UpdateFeeCatalogRequest,
|
|
113
|
+
TariffDetailApiModel,
|
|
114
|
+
TariffListApiModel,
|
|
115
|
+
TariffListItemApiModel,
|
|
116
|
+
TariffListOrderBy,
|
|
117
|
+
CreateTariffRequest,
|
|
118
|
+
UpdateTariffRequest,
|
|
119
|
+
TariffRuleDetailApiModel,
|
|
120
|
+
TariffRuleListApiModel,
|
|
121
|
+
TariffRuleListItemApiModel,
|
|
122
|
+
TariffRuleListOrderBy,
|
|
123
|
+
CreateTariffRuleRequest,
|
|
124
|
+
UpdateTariffRuleRequest,
|
|
125
|
+
} from './pricing/pricing.api.model';
|
|
101
126
|
export {CompanyApiModel} from './company.api.model';
|
|
102
127
|
export {
|
|
103
128
|
CompanyDetailApiModel,
|
|
@@ -133,6 +158,15 @@ export {
|
|
|
133
158
|
} from './contact-submissions/contact-submission.api.model';
|
|
134
159
|
export {ContactSubmissionApiModel} from './contact-submission.api.model';
|
|
135
160
|
export {PartnerInquiryApiModel, PartnerInquiryInvestmentRange, PartnerInquiryLocationReadiness, PartnerInquiryTimeline} from './partner-inquiry.api.model';
|
|
161
|
+
export {
|
|
162
|
+
PartnerInquiryDetailApiModel,
|
|
163
|
+
PartnerInquiryListApiModel,
|
|
164
|
+
PartnerInquiryListItemApiModel,
|
|
165
|
+
PartnerInquiryListOrderBy,
|
|
166
|
+
CreatePartnerInquiryRequest,
|
|
167
|
+
UpdatePartnerInquiryRequest,
|
|
168
|
+
PartnerInquiryStatus
|
|
169
|
+
} from './partner-inquiries/partner-inquiry.api.model';
|
|
136
170
|
export {
|
|
137
171
|
ChannelPartnerApplicationDetailApiModel,
|
|
138
172
|
ChannelPartnerApplicationListApiModel,
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { AuditTimestampsApiModel, ApiSortDirection } from '../users';
|
|
2
|
+
import {
|
|
3
|
+
PartnerInquiryInvestmentRange,
|
|
4
|
+
PartnerInquiryLocationReadiness,
|
|
5
|
+
PartnerInquiryTimeline,
|
|
6
|
+
} from '../partner-inquiry.api.model';
|
|
7
|
+
|
|
8
|
+
/** partner-inquiries stats enum */
|
|
9
|
+
export enum PartnerInquiryStatus {
|
|
10
|
+
NEW = 'new',
|
|
11
|
+
CONTACTED = 'contacted',
|
|
12
|
+
IN_PROGRESS = 'in_progress',
|
|
13
|
+
CLOSED = 'closed',
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
/** GET /api/partner-inquiries */
|
|
18
|
+
export type PartnerInquiryListOrderBy =
|
|
19
|
+
| 'fullName'
|
|
20
|
+
| 'email'
|
|
21
|
+
| 'phone'
|
|
22
|
+
| 'city'
|
|
23
|
+
| 'investmentRange'
|
|
24
|
+
| 'locationReadiness'
|
|
25
|
+
| 'timeline'
|
|
26
|
+
| 'status'
|
|
27
|
+
| 'createdAt';
|
|
28
|
+
|
|
29
|
+
export interface PartnerInquiryListItemApiModel {
|
|
30
|
+
/** partner_inquiries.id (uuid). */
|
|
31
|
+
id: string;
|
|
32
|
+
fullName: string;
|
|
33
|
+
email: string;
|
|
34
|
+
phone: string;
|
|
35
|
+
city: string;
|
|
36
|
+
postCode: string;
|
|
37
|
+
investmentRange: PartnerInquiryInvestmentRange;
|
|
38
|
+
locationReadiness: PartnerInquiryLocationReadiness;
|
|
39
|
+
timeline: PartnerInquiryTimeline;
|
|
40
|
+
status: string;
|
|
41
|
+
source: string;
|
|
42
|
+
createdAt: string;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/** GET /api/partner-inquiries — paginated list response */
|
|
46
|
+
export interface PartnerInquiryListApiModel {
|
|
47
|
+
rows: PartnerInquiryListItemApiModel[];
|
|
48
|
+
totalCount: number;
|
|
49
|
+
pageIndex: number;
|
|
50
|
+
pageSize: number;
|
|
51
|
+
orderBy: PartnerInquiryListOrderBy;
|
|
52
|
+
sortDirection: ApiSortDirection;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/** GET /api/partner-inquiries/:id */
|
|
56
|
+
export interface PartnerInquiryDetailApiModel
|
|
57
|
+
extends Omit<PartnerInquiryListItemApiModel, 'createdAt'>,
|
|
58
|
+
AuditTimestampsApiModel {
|
|
59
|
+
siteLocationLink?: string | null;
|
|
60
|
+
hasParkingSpace?: boolean | null;
|
|
61
|
+
spaceSize?: string | null;
|
|
62
|
+
previousExperience?: string | null;
|
|
63
|
+
additionalComments?: string | null;
|
|
64
|
+
legacyFirestoreId?: string | null;
|
|
65
|
+
isDeleted: boolean;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/** POST /api/partner-inquiries */
|
|
69
|
+
export interface CreatePartnerInquiryRequest {
|
|
70
|
+
fullName: string;
|
|
71
|
+
email: string;
|
|
72
|
+
phone: string;
|
|
73
|
+
city: string;
|
|
74
|
+
postCode: string;
|
|
75
|
+
investmentRange: PartnerInquiryInvestmentRange;
|
|
76
|
+
locationReadiness: PartnerInquiryLocationReadiness;
|
|
77
|
+
timeline: PartnerInquiryTimeline;
|
|
78
|
+
siteLocationLink?: string | null;
|
|
79
|
+
hasParkingSpace?: boolean | null;
|
|
80
|
+
spaceSize?: string | null;
|
|
81
|
+
previousExperience?: string | null;
|
|
82
|
+
additionalComments?: string | null;
|
|
83
|
+
source?: string;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/** PATCH /api/partner-inquiries/:id */
|
|
87
|
+
export interface UpdatePartnerInquiryRequest {
|
|
88
|
+
status?: PartnerInquiryStatus | string;
|
|
89
|
+
}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
import {
|
|
2
|
+
FeeComponentType,
|
|
3
|
+
FeeUnit,
|
|
4
|
+
ConnectorOutputType,
|
|
5
|
+
RateDurationUnit,
|
|
6
|
+
TariffRuleType,
|
|
7
|
+
} from '../../../enum/pricing';
|
|
8
|
+
import { AuditActor } from '../../audit-actor.model';
|
|
9
|
+
import { AuditTimestampsApiModel, IsoDateTime } from '../users/shared.api.model';
|
|
10
|
+
import { ApiSortDirection } from '../users/admin-user.api.model';
|
|
11
|
+
|
|
12
|
+
/** GET /api/fee-catalog */
|
|
13
|
+
export type FeeCatalogListOrderBy = 'name' | 'componentType' | 'createdAt';
|
|
14
|
+
|
|
15
|
+
export interface FeeCatalogListItemApiModel {
|
|
16
|
+
id: string;
|
|
17
|
+
name: string;
|
|
18
|
+
componentType: FeeComponentType;
|
|
19
|
+
rate: number;
|
|
20
|
+
unit: FeeUnit;
|
|
21
|
+
rateDurationValue: number | null;
|
|
22
|
+
rateDurationUnit: RateDurationUnit | null;
|
|
23
|
+
createdAt: IsoDateTime;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface FeeCatalogListApiModel {
|
|
27
|
+
rows: FeeCatalogListItemApiModel[];
|
|
28
|
+
totalCount: number;
|
|
29
|
+
pageIndex: number;
|
|
30
|
+
pageSize: number;
|
|
31
|
+
orderBy: FeeCatalogListOrderBy;
|
|
32
|
+
sortDirection: ApiSortDirection;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export interface FeeCatalogDetailApiModel
|
|
36
|
+
extends FeeCatalogListItemApiModel,
|
|
37
|
+
AuditTimestampsApiModel {
|
|
38
|
+
isDeleted: boolean;
|
|
39
|
+
createdBy: AuditActor | null;
|
|
40
|
+
updatedBy: AuditActor | null;
|
|
41
|
+
deletedBy: AuditActor | null;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export interface CreateFeeCatalogRequest {
|
|
45
|
+
name: string;
|
|
46
|
+
componentType: FeeComponentType;
|
|
47
|
+
rate: number;
|
|
48
|
+
unit: FeeUnit;
|
|
49
|
+
rateDurationValue?: number | null;
|
|
50
|
+
rateDurationUnit?: RateDurationUnit | null;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export interface UpdateFeeCatalogRequest {
|
|
54
|
+
name?: string;
|
|
55
|
+
rate?: number;
|
|
56
|
+
unit?: FeeUnit;
|
|
57
|
+
rateDurationValue?: number | null;
|
|
58
|
+
rateDurationUnit?: RateDurationUnit | null;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/** Summary embedded on tariff detail/list */
|
|
62
|
+
export interface FeeCatalogSummaryApiModel {
|
|
63
|
+
id: string;
|
|
64
|
+
name: string;
|
|
65
|
+
componentType: FeeComponentType;
|
|
66
|
+
rate: number;
|
|
67
|
+
unit: FeeUnit;
|
|
68
|
+
rateDurationValue: number | null;
|
|
69
|
+
rateDurationUnit: RateDurationUnit | null;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/** GET /api/tariffs */
|
|
73
|
+
export type TariffListOrderBy = 'name' | 'createdAt';
|
|
74
|
+
|
|
75
|
+
export interface TariffListItemApiModel {
|
|
76
|
+
id: string;
|
|
77
|
+
name: string;
|
|
78
|
+
description: string | null;
|
|
79
|
+
isActive: boolean;
|
|
80
|
+
components: FeeCatalogSummaryApiModel[];
|
|
81
|
+
createdAt: IsoDateTime;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export interface TariffListApiModel {
|
|
85
|
+
rows: TariffListItemApiModel[];
|
|
86
|
+
totalCount: number;
|
|
87
|
+
pageIndex: number;
|
|
88
|
+
pageSize: number;
|
|
89
|
+
orderBy: TariffListOrderBy;
|
|
90
|
+
sortDirection: ApiSortDirection;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export interface TariffDetailApiModel extends TariffListItemApiModel, AuditTimestampsApiModel {
|
|
94
|
+
isDeleted: boolean;
|
|
95
|
+
createdBy: AuditActor | null;
|
|
96
|
+
updatedBy: AuditActor | null;
|
|
97
|
+
deletedBy: AuditActor | null;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export interface CreateTariffRequest {
|
|
101
|
+
name: string;
|
|
102
|
+
description?: string | null;
|
|
103
|
+
isActive?: boolean;
|
|
104
|
+
/** Fee catalog IDs — exactly one energy, at most one session */
|
|
105
|
+
feeCatalogIds: string[];
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export interface UpdateTariffRequest {
|
|
109
|
+
name?: string;
|
|
110
|
+
description?: string | null;
|
|
111
|
+
isActive?: boolean;
|
|
112
|
+
feeCatalogIds?: string[];
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/** GET /api/tariff-rules */
|
|
116
|
+
export type TariffRuleListOrderBy = 'validFrom' | 'createdAt';
|
|
117
|
+
|
|
118
|
+
export interface TariffRuleListItemApiModel {
|
|
119
|
+
id: string;
|
|
120
|
+
ruleType: TariffRuleType;
|
|
121
|
+
tariffId: string;
|
|
122
|
+
tariffName: string;
|
|
123
|
+
stationId: string | null;
|
|
124
|
+
stationName: string | null;
|
|
125
|
+
outputType: ConnectorOutputType | null;
|
|
126
|
+
validFrom: IsoDateTime;
|
|
127
|
+
validTo: IsoDateTime | null;
|
|
128
|
+
isActive: boolean;
|
|
129
|
+
createdAt: IsoDateTime;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
export interface TariffRuleListApiModel {
|
|
133
|
+
rows: TariffRuleListItemApiModel[];
|
|
134
|
+
totalCount: number;
|
|
135
|
+
pageIndex: number;
|
|
136
|
+
pageSize: number;
|
|
137
|
+
orderBy: TariffRuleListOrderBy;
|
|
138
|
+
sortDirection: ApiSortDirection;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
export interface TariffRuleDetailApiModel
|
|
142
|
+
extends TariffRuleListItemApiModel,
|
|
143
|
+
AuditTimestampsApiModel {
|
|
144
|
+
isDeleted: boolean;
|
|
145
|
+
createdBy: AuditActor | null;
|
|
146
|
+
updatedBy: AuditActor | null;
|
|
147
|
+
deletedBy: AuditActor | null;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export interface CreateTariffRuleRequest {
|
|
151
|
+
ruleType: TariffRuleType;
|
|
152
|
+
tariffId: string;
|
|
153
|
+
stationId?: string | null;
|
|
154
|
+
outputType?: ConnectorOutputType | null;
|
|
155
|
+
validFrom?: IsoDateTime;
|
|
156
|
+
validTo?: IsoDateTime | null;
|
|
157
|
+
isActive?: boolean;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
export interface UpdateTariffRuleRequest {
|
|
161
|
+
tariffId?: string;
|
|
162
|
+
stationId?: string | null;
|
|
163
|
+
outputType?: ConnectorOutputType | null;
|
|
164
|
+
validFrom?: IsoDateTime;
|
|
165
|
+
validTo?: IsoDateTime | null;
|
|
166
|
+
isActive?: boolean;
|
|
167
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { StationStatus } from '../../../enum';
|
|
2
|
+
|
|
3
|
+
/** GET /api/admin/stations/picker — autocomplete / admin search row. */
|
|
4
|
+
export interface StationPickerItemApiModel {
|
|
5
|
+
id: string;
|
|
6
|
+
name: string;
|
|
7
|
+
stationCode: string;
|
|
8
|
+
status: StationStatus;
|
|
9
|
+
city: string;
|
|
10
|
+
stateName: string;
|
|
11
|
+
companyId: string | null;
|
|
12
|
+
businessUnitId: string | null;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface StationPickerListApiModel {
|
|
16
|
+
rows: StationPickerItemApiModel[];
|
|
17
|
+
totalCount: number;
|
|
18
|
+
pageIndex: number;
|
|
19
|
+
pageSize: number;
|
|
20
|
+
}
|