feat: 推广 V3.5 实时氢耗并完善导出
This commit is contained in:
@@ -24,6 +24,7 @@ import type {
|
||||
AlertRuleRevision,
|
||||
AlertSummary,
|
||||
DailyMileageRow,
|
||||
HydrogenDailyEvidence,
|
||||
DashboardSummary,
|
||||
HistoryLocationRow,
|
||||
HistoryDataResponse,
|
||||
@@ -487,6 +488,10 @@ export const api = {
|
||||
dailyMileage: (query: MileageQuery, signal?: AbortSignal) => request<Page<DailyMileageRow>>('/api/mileage/daily', withSignal({
|
||||
method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(query)
|
||||
}, signal)),
|
||||
hydrogenDailyEvidence: (vin: string, date: string, signal?: AbortSignal) => request<HydrogenDailyEvidence>(
|
||||
`/api/v2/vehicles/${encodeURIComponent(vin)}/hydrogen-evidence?date=${encodeURIComponent(date)}`,
|
||||
withSignal(undefined, signal)
|
||||
),
|
||||
mileageStatistics: (query: MileageQuery, signal?: AbortSignal) => request<MileageStatistics>('/api/v2/statistics/mileage', withSignal({
|
||||
method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(query)
|
||||
}, signal)),
|
||||
|
||||
@@ -470,6 +470,8 @@ export interface VehicleCoverageRow {
|
||||
plate: string;
|
||||
phone: string;
|
||||
oem: string;
|
||||
brandName?: string;
|
||||
modelName?: string;
|
||||
protocols: string[];
|
||||
missingProtocols: string[];
|
||||
sourceStatus: VehicleSourceStatus[];
|
||||
@@ -908,10 +910,40 @@ export interface DailyMileageRow {
|
||||
pureHydrogenMileageKm?: number;
|
||||
hydrogenConsumptionKg?: number | null;
|
||||
hydrogenConsumptionKgPer100Km?: number | null;
|
||||
hydrogenSocBalancedKg?: number | null;
|
||||
hydrogenSocBalancedKgPer100Km?: number | null;
|
||||
hydrogenEvidenceAvailable?: boolean;
|
||||
hydrogenQualityStatus?: string;
|
||||
hydrogenAlgorithmVersion?: string;
|
||||
source: string;
|
||||
anomalySeverity?: string;
|
||||
}
|
||||
|
||||
export interface HydrogenIntervalEvidence {
|
||||
index: number; type: 'MIXED' | 'PURE_ELECTRIC'; startTime: string; endTime: string;
|
||||
startEventId: string; endEventId: string; source: string;
|
||||
startPressureMpa: number; endPressureMpa: number; startTemperatureC: number; endTemperatureC: number;
|
||||
startMassKg: number; endMassKg: number; rawHydrogenConsumptionKg: number;
|
||||
startSocPercent?: number; endSocPercent?: number; batteryDischargeKWh?: number; batteryEquivalentKg?: number;
|
||||
socBalancedConsumptionKg?: number; startMileageKm?: number; endMileageKm?: number; mileageKm?: number;
|
||||
consumptionKgPer100Km?: number; sampleCount: number; qualityStatus: string; qualityReason: string;
|
||||
}
|
||||
|
||||
export interface HydrogenDailyEvidence {
|
||||
vin: string; plate: string; date: string; source: string; rawConsumptionKg: number;
|
||||
batterySocDeltaPct?: number; batteryDischargeKWh?: number; batteryEquivalentKg?: number;
|
||||
socBalancedConsumptionKg?: number; mixedMileageKm: number; pureElectricMileageKm: number;
|
||||
consumptionKgPer100Km?: number; socBalancedKgPer100Km?: number; sampleCount: number;
|
||||
refuelCount: number; chargeCount: number; validSegmentCount: number; invalidSegmentCount: number;
|
||||
qualityStatus: string; qualityReason: string; algorithmVersion: string; calculatedAt: string;
|
||||
parameters: {
|
||||
batteryCapacityKWh: number; hydrogenEnergyKWhPerKg: number; powerOnDelaySeconds: number;
|
||||
powerOffLeadSeconds: number; refuelRiseMpa: number; refuelSustainSeconds: number;
|
||||
pureElectricDropMpa: number; pureElectricWindowSeconds: number; algorithmVersion: string;
|
||||
};
|
||||
intervals: HydrogenIntervalEvidence[];
|
||||
}
|
||||
|
||||
export interface MileageSummary {
|
||||
vehicleCount: number;
|
||||
recordCount: number;
|
||||
|
||||
Reference in New Issue
Block a user