44 lines
1017 B
Dart
44 lines
1017 B
Dart
class DeliveryRecord {
|
|
final int? id;
|
|
final int routeId;
|
|
final int stopId;
|
|
final String date; // YYYY-MM-DD
|
|
final DateTime deliveredAt;
|
|
|
|
DeliveryRecord({
|
|
this.id,
|
|
required this.routeId,
|
|
required this.stopId,
|
|
required this.date,
|
|
required this.deliveredAt,
|
|
});
|
|
|
|
Map<String, dynamic> toMap() => {
|
|
if (id != null) 'id': id,
|
|
'route_id': routeId,
|
|
'stop_id': stopId,
|
|
'date': date,
|
|
'delivered_at': deliveredAt.toIso8601String(),
|
|
};
|
|
|
|
factory DeliveryRecord.fromMap(Map<String, dynamic> map) => DeliveryRecord(
|
|
id: map['id'] as int?,
|
|
routeId: map['route_id'] as int,
|
|
stopId: map['stop_id'] as int,
|
|
date: map['date'] as String,
|
|
deliveredAt: DateTime.parse(map['delivered_at'] as String),
|
|
);
|
|
}
|
|
|
|
class DailyStats {
|
|
final String date;
|
|
final int deliveredCount;
|
|
final int totalCount;
|
|
|
|
DailyStats({
|
|
required this.date,
|
|
required this.deliveredCount,
|
|
required this.totalCount,
|
|
});
|
|
}
|