feat: add ETC records and bill drilldowns
This commit is contained in:
@@ -5,6 +5,7 @@ import type {
|
||||
ElectricKpi, ElectricDailyRow, ElectricMonthGroup,
|
||||
ElectricChargeOrderResponse,
|
||||
EtcOverviewResponse,
|
||||
EtcBillResponse, EtcTollRecordResponse,
|
||||
CustomerType, DateQuickPick, ElectricVehicleScope,
|
||||
} from './types';
|
||||
|
||||
@@ -73,3 +74,31 @@ export function fetchElectricOrders(date: string, customer: ElectricVehicleScope
|
||||
export function fetchEtcOverview(force = false): Promise<EtcOverviewResponse> {
|
||||
return fetchJson<EtcOverviewResponse>(`${BASE}/etc/overview${force ? '?force=1' : ''}`);
|
||||
}
|
||||
|
||||
export interface EtcListQuery {
|
||||
page?: number;
|
||||
limit?: number;
|
||||
startDate?: string;
|
||||
endDate?: string;
|
||||
search?: string;
|
||||
}
|
||||
|
||||
function etcListParams(query: EtcListQuery): string {
|
||||
const params = new URLSearchParams();
|
||||
if (query.page) params.set('page', String(query.page));
|
||||
if (query.limit) params.set('limit', String(query.limit));
|
||||
if (query.startDate) params.set('startDate', query.startDate);
|
||||
if (query.endDate) params.set('endDate', query.endDate);
|
||||
if (query.search) params.set('search', query.search);
|
||||
return params.toString();
|
||||
}
|
||||
|
||||
export function fetchEtcRecords(query: EtcListQuery): Promise<EtcTollRecordResponse> {
|
||||
const params = etcListParams(query);
|
||||
return fetchJson<EtcTollRecordResponse>(`${BASE}/etc/records${params ? `?${params}` : ''}`);
|
||||
}
|
||||
|
||||
export function fetchEtcBills(query: EtcListQuery): Promise<EtcBillResponse> {
|
||||
const params = etcListParams(query);
|
||||
return fetchJson<EtcBillResponse>(`${BASE}/etc/bills${params ? `?${params}` : ''}`);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user