Update: 2026-08-07 06:00:56

This commit is contained in:
Hamza-Ayed
2026-08-07 06:00:56 +03:00
parent 67465df000
commit 92a6aa5c0f
11 changed files with 443 additions and 15 deletions
@@ -35,9 +35,17 @@ class OrderData {
/// ثواني السبق الحصري كما حددها الخادم (DISPATCH_HEAD_START_SECONDS).
final int offerExpiresIn;
/// رحلة محجوزة مسبقاً — موعد مضبوط لا طلب فوري.
final bool isScheduled;
/// موعد الانطلاق كما حجزه الراكب. فارغ في الرحلات العادية.
final String scheduledAt;
OrderData({
this.offerType,
this.offerExpiresIn = 0,
this.isScheduled = false,
this.scheduledAt = '',
required this.customerName,
required this.customerToken,
required this.tripDistanceKm,
@@ -151,6 +159,11 @@ class OrderData {
: null,
offerExpiresIn:
list.length > 38 ? (int.tryParse(list[38].toString()) ?? 0) : 0,
// ‏الفهرسان 39/40 — يضيفهما add_ride.php للرحلات المحجوزة.
isScheduled: list.length > 39 &&
(list[39].toString() == '1' || list[39].toString() == 'true'),
scheduledAt: list.length > 40 ? list[40].toString() : '',
);
}
@@ -197,6 +210,8 @@ class OrderData {
: null,
offerType: str('offer_type').isNotEmpty ? str('offer_type') : null,
offerExpiresIn: int.tryParse(str('offer_expires_in', '0')) ?? 0,
isScheduled: str('is_scheduled') == '1' || str('is_scheduled') == 'true',
scheduledAt: str('scheduled_at'),
);
}