Update: 2026-07-09 01:55:25

This commit is contained in:
Hamza-Ayed
2026-07-09 01:55:25 +03:00
parent ac0c343f18
commit 7dff7b6973
12 changed files with 374 additions and 28 deletions
@@ -24,6 +24,10 @@ class OrderData {
final String? rawStartCoordinates;
final String? rawEndCoordinates;
// 🆕 "أرباحك أعلى" — الفرق الإيجابي بأجرة السائق مقارنة بالمنافس (إن وُجد)
final double? driverEarningsExtra;
final String? driverEarningsCurrency;
OrderData({
required this.customerName,
required this.customerToken,
@@ -40,6 +44,8 @@ class OrderData {
required this.passengerRate,
this.rawStartCoordinates,
this.rawEndCoordinates,
this.driverEarningsExtra,
this.driverEarningsCurrency,
});
// --- NEW: Factory constructor to create an instance from a Map ---
@@ -74,6 +80,8 @@ class OrderData {
// For nullable strings, direct access is fine as it returns null if the key doesn't exist
rawStartCoordinates: map['rawStartCoordinates'],
rawEndCoordinates: map['rawEndCoordinates'],
driverEarningsExtra: (map['driverEarningsExtra'] as num?)?.toDouble(),
driverEarningsCurrency: map['driverEarningsCurrency']?.toString(),
);
}
@@ -118,6 +126,15 @@ class OrderData {
rawStartCoordinates: list.isNotEmpty ? list[0].toString() : null,
rawEndCoordinates: list.length > 1 ? list[1].toString() : null,
// 🆕 Index 35/36: "أرباحك أعلى"
driverEarningsExtra: list.length > 35 && list[35].toString().isNotEmpty
? double.tryParse(list[35].toString())
: null,
driverEarningsCurrency:
list.length > 36 && list[36].toString().isNotEmpty
? list[36].toString()
: null,
);
}
@@ -182,6 +199,8 @@ class OrderData {
'passengerRate': passengerRate,
'rawStartCoordinates': rawStartCoordinates,
'rawEndCoordinates': rawEndCoordinates,
'driverEarningsExtra': driverEarningsExtra,
'driverEarningsCurrency': driverEarningsCurrency,
};
}
}