Update codebase

This commit is contained in:
Hamza-Ayed
2026-08-09 16:56:13 +03:00
parent 95e2e4f35d
commit b64debaa88
1058 changed files with 164327 additions and 113928 deletions
@@ -1,14 +1,14 @@
import 'dart:convert';
import 'dart:io';
import 'package:tripz_driver/controller/home/captin/home_captain_controller.dart';
import 'package:tripz_driver/views/home/Captin/orderCaptin/order_speed_request.dart';
import 'package:tripz_driver/views/widgets/error_snakbar.dart';
import 'package:tripz_driver/views/widgets/mydialoug.dart';
import 'package:tripz_driver/controller/voice_call_controller.dart';
import 'package:siro_driver/controller/home/captin/home_captain_controller.dart';
import 'package:siro_driver/views/home/Captin/orderCaptin/order_speed_request.dart';
import 'package:siro_driver/views/widgets/error_snakbar.dart';
import 'package:siro_driver/views/widgets/mydialoug.dart';
import 'package:siro_driver/controller/voice_call_controller.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:tripz_driver/views/widgets/elevated_btn.dart';
import 'package:siro_driver/views/widgets/elevated_btn.dart';
import '../../constant/box_name.dart';
import '../../constant/colors.dart';
@@ -233,7 +233,7 @@ class FirebaseMessagesController extends GetxController {
case 'token change':
case 'TOKEN_CHANGE':
box.remove(BoxName.jwt);
await storage.delete(key: BoxName.jwt);
break;
case 'face detect':
@@ -1,4 +1,4 @@
import 'package:tripz_driver/constant/currency.dart';
import 'package:siro_driver/constant/currency.dart';
import 'dart:async';
import 'dart:convert';
import 'dart:io';
@@ -15,8 +15,13 @@ import '../../constant/box_name.dart';
import '../../constant/links.dart';
import '../../main.dart'; // للوصول لـ box
import '../../print.dart';
import '../../views/food_delivery/food_delivery_home_page.dart';
import '../../views/food_delivery/food_offer_page.dart';
import '../../views/food_delivery/food_task_details_page.dart';
import '../../views/home/Captin/driver_map_page.dart';
import '../../views/home/Captin/orderCaptin/order_request_page.dart';
import '../food_delivery/food_delivery_controller.dart';
import '../food_delivery/food_notification_service.dart';
import '../functions/crud.dart';
import '../home/captin/home_captain_controller.dart';
@@ -213,6 +218,14 @@ class NotificationController extends GetxController {
if (payload == null) return;
final payloadData = jsonDecode(payload) as Map<String, dynamic>;
// إشعارات وحدة التوصيل لها حمولة وأزرار خاصة بها — نفرزها قبل أي شيء
// لأن باقي هذه الدالة يفترض حمولة رحلة (مصفوفة add_ride.php).
if (payloadData.containsKey('food_event')) {
await _handleFoodNotificationResponse(response, payloadData);
return;
}
final rawData = payloadData['data'];
List<dynamic> listData = [];
@@ -248,6 +261,38 @@ class NotificationController extends GetxController {
}
}
// ── فرع وحدة التوصيل — مسار مستقل تماماً عن مسار الرحلات أعلاه ──────────
Future<void> _handleFoodNotificationResponse(
NotificationResponse response, Map<String, dynamic> payloadData) async {
final orderId = int.tryParse(payloadData['order_id']?.toString() ?? '') ?? 0;
if (orderId == 0) return;
await FoodNotificationService.instance.cancelOfferNotification();
// الكنترولر قد لا يكون مسجَّلاً (الضغط على الإشعار والتطبيق مغلق)، فنسجّله
// ليعيد بناء حالته من الخادم قبل عرض أي شاشة.
final controller = Get.isRegistered<FoodDeliveryController>()
? Get.find<FoodDeliveryController>()
: Get.put(FoodDeliveryController());
if (response.actionId == 'FOOD_ACCEPT') {
await controller.respondToOffer(orderId, true);
Get.to(() => FoodTaskDetailsPage(orderId: orderId));
return;
}
if (response.actionId == 'FOOD_REJECT') {
await controller.respondToOffer(orderId, false);
return;
}
if (payloadData['food_event'] == 'offer') {
Get.to(() => const FoodOfferPage(), fullscreenDialog: true);
} else {
Get.to(() => const FoodDeliveryHomePage());
}
}
// ==============================================================================
// 4. منطق القبول الآمن (Safe Accept Logic)
// ==============================================================================
@@ -1,7 +1,7 @@
import 'package:tripz_driver/constant/links.dart';
import 'package:tripz_driver/controller/functions/crud.dart';
import 'package:tripz_driver/views/home/Captin/home_captain/home_captin.dart';
import 'package:tripz_driver/views/widgets/elevated_btn.dart';
import 'package:siro_driver/constant/links.dart';
import 'package:siro_driver/controller/functions/crud.dart';
import 'package:siro_driver/views/home/Captin/home_captain/home_captin.dart';
import 'package:siro_driver/views/widgets/elevated_btn.dart';
import 'package:flutter/material.dart';
class OverlayContent1 extends StatelessWidget {