feat: Add simulation analyzer component for comprehensive performance tracking and metric calculation.
This commit is contained in:
@@ -1007,7 +1007,7 @@ function Analyzer() {
|
||||
const materialFlow = calculateMaterialFlowMetricsForAsset(vehicle.modelUuid);
|
||||
const tripsCompleted = completedActionsRef.current[vehicle.modelUuid] || 0;
|
||||
const totalLoadsDelivered = completedActionsRef.current[`${vehicle.modelUuid}_loads`] || 0;
|
||||
const defects = errorCountsRef.current[`${vehicle.modelUuid}_defects`] || 0;
|
||||
const defects = errorCount; // Use main error count directly
|
||||
const qualityMetrics = calculateQualityMetrics(vehicle.modelUuid, totalLoadsDelivered, defects);
|
||||
|
||||
// Performance calculations
|
||||
@@ -1123,7 +1123,7 @@ function Analyzer() {
|
||||
maintenanceCost: costMetrics.maintenanceCost,
|
||||
energyCost: energyMetrics.energyCost,
|
||||
totalCost: costMetrics.totalCost,
|
||||
costPerMile: actualDistance > 0 ? costMetrics.totalCost / actualDistance : 0,
|
||||
costPerMile: actualDistance > 0 ? costMetrics.totalCost / (actualDistance / 1609.34) : 0, // Convert meters to miles
|
||||
costPerTrip: tripsCompleted > 0 ? costMetrics.totalCost / tripsCompleted : 0,
|
||||
costPerLoad: totalLoadsDelivered > 0 ? costMetrics.totalCost / totalLoadsDelivered : 0,
|
||||
roi: costMetrics.roi,
|
||||
@@ -2475,6 +2475,12 @@ function Analyzer() {
|
||||
completedActionsRef.current[vehicle.modelUuid] = 0;
|
||||
}
|
||||
completedActionsRef.current[vehicle.modelUuid]++;
|
||||
|
||||
// Track loads delivered (assuming 1 load per trip for now, or use vehicle.currentLoad if available/reliable at this point)
|
||||
if (!completedActionsRef.current[`${vehicle.modelUuid}_loads`]) {
|
||||
completedActionsRef.current[`${vehicle.modelUuid}_loads`] = 0;
|
||||
}
|
||||
completedActionsRef.current[`${vehicle.modelUuid}_loads`] += 1;
|
||||
}
|
||||
|
||||
previousVehiclePhasesRef.current[vehicle.modelUuid] = currentPhase;
|
||||
|
||||
Reference in New Issue
Block a user