class DashboardMetrics { final int totalReservations; final int activeReservations; final double totalRevenue; final int totalVehicles; final int availableVehicles; final int totalCustomers; final double occupancyRate; const DashboardMetrics({ required this.totalReservations, required this.activeReservations, required this.totalRevenue, required this.totalVehicles, required this.availableVehicles, required this.totalCustomers, required this.occupancyRate, }); factory DashboardMetrics.fromJson(Map json) => DashboardMetrics( totalReservations: json['totalReservations'] as int? ?? 0, activeReservations: json['activeReservations'] as int? ?? 0, totalRevenue: (json['totalRevenue'] as num?)?.toDouble() ?? 0, totalVehicles: json['totalVehicles'] as int? ?? 0, availableVehicles: json['availableVehicles'] as int? ?? 0, totalCustomers: json['totalCustomers'] as int? ?? 0, occupancyRate: (json['occupancyRate'] as num?)?.toDouble() ?? 0, ); factory DashboardMetrics.empty() => const DashboardMetrics( totalReservations: 0, activeReservations: 0, totalRevenue: 0, totalVehicles: 0, availableVehicles: 0, totalCustomers: 0, occupancyRate: 0, ); }