Files
intaleq/docs/05_transit_mawasalati/mawasalati_plan.md
T
Hamza-AyedandClaude Opus 5 0aab85c732 refactor: إعادة تسمية التطبيقات الأربعة siro_* → intaleq_*
المجلدات وأسماء حزم dart واستيراداتها:
  siro_rider → intaleq_rider    siro_driver  → intaleq_driver
  siro_admin → intaleq_admin    siro_service → intaleq_service

شمل ذلك `name:` في كل pubspec وكل `package:siro_*` في الاستيرادات
(115 ملفاً في rider وحده)، وإشارات أسماء المجلدات في docs/ وتعليق في
backend/Admin/notifications/broadcast.php. لم تبقَ إشارة واحدة (تحقّقت).

+ ضُمّت حزم get و get_storage داخل intaleq_driver/packages/ وحُوّلت
مساراتها الثلاثة من `../../Intaleq/packages/*` إلى `./packages/*`. كانت
تُحل عرضاً إلى مجلد App/Intaleq القديم المجاور — تبعية خارج المستودع
تنكسر بأول نقل. لم يبقَ في أي تطبيق تبعية مسار خارج الشجرة.

⚠️ لم تُمسّ بعد: هويات المتاجر (applicationId · PRODUCT_BUNDLE_IDENTIFIER ·
shorebird app_id) ولا الألوان ولا النصوص المرئية ولا النطاقات — كل منها
كوميت منفصل، والهويات تحتاج قرار المالك.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-27 16:10:58 +03:00

4.4 KiB

خطة مواصلاتي (Siro Transit) - ما تم إنجازه وما لم يتم

تُوثق هذه الوثيقة حالة ميزة "مواصلاتي" (النقل المؤسسي للجامعات والفنادق) في منصة سيرو، وتفصل ما تم بناءه حتى الآن وما يتبقى إكماله قبل الإطلاق النهائي.

✅ أولاً: ما تم إنجازه

1. البنية التحتية وقواعد البيانات (Backend)

  • تصميم قواعد البيانات وإضافة الجداول اللازمة (مؤسسات، خطوط، محطات، جداول زمنية، رحلات، واشتراكات الركاب).
  • بناء مسارات الـ API بلغة PHP لخدمة الراكب والسائق (جلب المؤسسات، المسارات، المحطات، الرحلات اليومية).

2. تطبيق الراكب (Rider App)

  • شاشة تصفح المؤسسات (TransitOrgBrowsePage) لعرض الجامعات والفنادق المتاحة.
  • شاشة مسارات المؤسسة (TransitRoutesPage) لعرض الخطوط والمحطات على الخريطة.
  • شاشة الصفحة الرئيسية للمواصلاتي (TransitHomePage) لعرض اشتراكات الراكب الحالية.
  • شاشة التتبع الحي (TransitLiveMapPage) المهيأة مبدئياً لتتبع الباص.
  • إصلاح مشاكل الـ UI (ParentDataWidget و initState).

3. تطبيق السائق (Driver App)

  • شاشة الرحلات المجدولة (TransitDriverHomePage) لعرض الرحلات المطلوبة من السائق اليوم، مع أزرار "بدء الرحلة" و"إنهاء الرحلة".
  • تحسين خريطة السائق الأساسية (home_captin.dart) وتفعيل ماركر السيارة الصحيح (car_icon) ليكون جاهزاً لبث الموقع الفعلي أثناء الرحلة، وإصلاح مشاكل الـ UI (Overflow).

⏳ ثانياً: ما لم يتم إنجازه (الخطوات القادمة والأولويات)

Important

تم تعليق (إخفاء) أزرار الوصول لخدمة "مواصلاتي" مؤقتاً من تطبيقي الراكب والسائق حتى يتم الانتهاء من هذه الخطوات واختبارها فعلياً على سيرفرات الإنتاج.

أولوية 1: الاختبار الميداني الحقيقي

  • بث واستقبال الموقع الحي (WebSockets): تشغيل واختبار driver_socket.php و passenger_socket.php على سيرفر الإنتاج الفعلي.
  • التأكد من إعدادات الـ Redis (REDIS_LOCATION_HOST) في الـ .env.
  • التأكد من أن "ماركر" الباص يتحرك بسلاسة على خريطة الراكب عندما يبدأ السائق الرحلة.

أولوية 2: دورة حياة الرحلة للسائق والتذاكر

  • وضع التوجيه للسائق (Active Trip Navigation): شاشة تظهر للسائق عند الضغط على "بدء الرحلة" لترشده للمحطات بالترتيب وتتبع تقدمه.
  • الاشتراكات والتذاكر (Ticketing): شراء الراكب للاشتراك وخصم الرصيد من المحفظة.
  • مسح كود الصعود (QR Boarding): آلية لكي يثبت الراكب صعوده للباص (إما السائق يمسح كود الراكب، أو يعلّم عليه في قائمة الركاب).

أولوية 3: لوحة تحكم المؤسسات والتنبيهات

  • واجهة الويب للمؤسسات (B2B Admin Dashboard): واجهة ويب تتيح لمدير الحركة في الجامعة إضافة المسارات، الباصات، وتتبع الأسطول.
  • استيراد كشف الركاب: واجهة لرفع ملفات CSV (import_roster.php) لتعريف طلاب الجامعة المسموح لهم بالركوب.
  • التنبيهات الجغرافية (Geofence Push Notifications): تفعيل إشعارات FCM ("الباص على بُعد 5 دقائق من محطتك").
  • إدارة العقود: زر في تطبيق intaleq_admin لتفعيل/تعليق عقود المؤسسات (contract_status).

سيتم الرجوع لهذه الخطة واستئناف العمل عليها في المرحلة القادمة بعد الانتهاء من الأولويات الحالية للنظام.