المجلدات وأسماء حزم 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>
4.4 KiB
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).
سيتم الرجوع لهذه الخطة واستئناف العمل عليها في المرحلة القادمة بعد الانتهاء من الأولويات الحالية للنظام.