26-1-22/1

This commit is contained in:
Hamza-Ayed
2026-01-22 19:30:31 +03:00
parent fbfde115a8
commit 12c5ce31a2
9 changed files with 504 additions and 502 deletions

View File

@@ -513,11 +513,12 @@ class OrderRequestController extends GetxController
}
}
// Accept Order Logic
// Accept Order Logic
Future<void> acceptOrder() async {
endTimer();
_stopAudio();
// 1. إرسال الطلب
var res = await CRUD()
.post(link: "${AppLink.ride}/rides/acceptRide.php", payload: {
'id': _safeGet(16),
@@ -527,13 +528,35 @@ class OrderRequestController extends GetxController
'driver_id': box.read(BoxName.driverID),
});
if (res == 'failure') {
Log.print('res from orderrequestpage: ${res}');
// ============================================================
// تصحيح: فحص الرد بدقة (Map أو String)
// ============================================================
bool isFailure = false;
if (res is Map && res['status'] == 'failure') {
isFailure = true;
} else if (res == 'failure') {
isFailure = true;
}
if (isFailure) {
// ⛔ حالة الفشل: الطلب مأخوذ
MyDialog().getDialog("عذراً، الطلب أخذه سائق آخر.", '', () {
Get.back();
Get.back();
Get.back(); // إغلاق الديالوج
Get.back(); // العودة للصفحة الرئيسية (إغلاق صفحة الطلب)
});
} else {
Get.put(HomeCaptainController()).changeRideId();
// ✅ حالة النجاح
// حماية من الكراش: التأكد من وجود HomeCaptainController قبل استخدامه
if (!Get.isRegistered<HomeCaptainController>()) {
Get.put(HomeCaptainController());
} else {
Get.find<HomeCaptainController>().changeRideId();
}
box.write(BoxName.statusDriverLocation, 'on');
changeApplied();
@@ -573,6 +596,8 @@ class OrderRequestController extends GetxController
};
box.write(BoxName.rideArguments, rideArgs);
// الانتقال النهائي
Get.off(() => PassengerLocationMapPage(), arguments: rideArgs);
}
}