إضافة الهوية الجديدة Tripz
This commit is contained in:
@@ -1,25 +1,25 @@
|
||||
-- تُنشأ القواعد فارغة عند أول إقلاع فقط (volume جديد).
|
||||
-- ⚠️ الأسماء مطابقة لبيئة اللايف الخاصة بك.
|
||||
CREATE DATABASE IF NOT EXISTS `jorSiroDB` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
CREATE DATABASE IF NOT EXISTS `intaleqDB1` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
-- ⚠️ تم تحديث الأسماء وتوليد كلمات مرور جديدة بناءً على طلبك
|
||||
CREATE DATABASE IF NOT EXISTS `mainDB` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
CREATE DATABASE IF NOT EXISTS `locationDB` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
CREATE DATABASE IF NOT EXISTS `intaleq-ridesDB` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
CREATE DATABASE IF NOT EXISTS `siroTransitDb` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
CREATE DATABASE IF NOT EXISTS `ridesDB` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
CREATE DATABASE IF NOT EXISTS `transitDB` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
CREATE DATABASE IF NOT EXISTS `paymentDB` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- إنشاء المستخدمين وإعطائهم الصلاحيات لكي تتطابق البيئة مع اللايف 100%
|
||||
CREATE USER IF NOT EXISTS 'intaleqapp-jordan-siro'@'%' IDENTIFIED BY '7B7skfibrexQrGCUG1Y8';
|
||||
GRANT ALL PRIVILEGES ON `jorSiroDB`.* TO 'intaleqapp-jordan-siro'@'%';
|
||||
-- إنشاء المستخدمين وإعطائهم الصلاحيات
|
||||
CREATE USER IF NOT EXISTS 'mainUser'@'%' IDENTIFIED BY 'M4in_Tr!pz_P@ss2026';
|
||||
GRANT ALL PRIVILEGES ON `mainDB`.* TO 'mainUser'@'%';
|
||||
|
||||
CREATE USER IF NOT EXISTS 'intaleqUserDB1'@'%' IDENTIFIED BY 'NANatr7j4d8HzZjAcp00bbsjkdhfjsn';
|
||||
GRANT ALL PRIVILEGES ON `intaleqDB1`.* TO 'intaleqUserDB1'@'%';
|
||||
CREATE USER IF NOT EXISTS 'locationUser'@'%' IDENTIFIED BY 'L0c_Tr!pz_P@ss2026';
|
||||
GRANT ALL PRIVILEGES ON `locationDB`.* TO 'locationUser'@'%';
|
||||
|
||||
CREATE USER IF NOT EXISTS 'intaleqLocation'@'%' IDENTIFIED BY '9otdMyiExMTXwnoA32sP';
|
||||
GRANT ALL PRIVILEGES ON `locationDB`.* TO 'intaleqLocation'@'%';
|
||||
CREATE USER IF NOT EXISTS 'ridesUser'@'%' IDENTIFIED BY 'R!des_Tr!pz_P@ss2026';
|
||||
GRANT ALL PRIVILEGES ON `ridesDB`.* TO 'ridesUser'@'%';
|
||||
|
||||
CREATE USER IF NOT EXISTS 'intaleq-rides'@'%' IDENTIFIED BY '0bHHMALEj4sqSmdT0avT';
|
||||
GRANT ALL PRIVILEGES ON `intaleq-ridesDB`.* TO 'intaleq-rides'@'%';
|
||||
CREATE USER IF NOT EXISTS 'transitUser'@'%' IDENTIFIED BY 'Tr4ns!t_Tr!pz_P@ss2026';
|
||||
GRANT ALL PRIVILEGES ON `transitDB`.* TO 'transitUser'@'%';
|
||||
|
||||
CREATE USER IF NOT EXISTS 'siroTransitUser'@'%' IDENTIFIED BY 'eZiDYxCJ2yyGfC32zG0Z';
|
||||
GRANT ALL PRIVILEGES ON `siroTransitDb`.* TO 'siroTransitUser'@'%';
|
||||
CREATE USER IF NOT EXISTS 'paymentUser'@'%' IDENTIFIED BY 'P4ym3nt_Tr!pz_P@ss2026';
|
||||
GRANT ALL PRIVILEGES ON `paymentDB`.* TO 'paymentUser'@'%';
|
||||
|
||||
FLUSH PRIVILEGES;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,359 @@
|
||||
USE transitDB;
|
||||
-- =============================================================
|
||||
-- schema_transit.sql — قاعدة بيانات منصة مواصلاتي (siroTransitDb)
|
||||
-- عزل كامل عن main/ride/tracking — ممنوع أي JOIN خارجي
|
||||
-- الربط بالنظام الرئيسي عبر passenger_id / driver_id فقط
|
||||
-- =============================================================
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
|
||||
SET time_zone = "+00:00";
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 1. transit_orgs — المؤسسات (جامعات، مدارس، فنادق، شركات، ناقلون)
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_orgs` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`type` ENUM('university','school','hotel','company','transporter') NOT NULL,
|
||||
`country` CHAR(2) NOT NULL COMMENT 'JO | SY | EG | ...',
|
||||
`city` VARCHAR(80) NOT NULL,
|
||||
`name_ar` VARCHAR(200) NOT NULL,
|
||||
`name_en` VARCHAR(200) NOT NULL,
|
||||
`logo_url` VARCHAR(500) DEFAULT NULL,
|
||||
`campus_polygon` JSON DEFAULT NULL COMMENT 'حدود الحرم — مصفوفة [{lat,lng}]',
|
||||
`website` VARCHAR(300) DEFAULT NULL,
|
||||
`contact_phone` VARCHAR(30) DEFAULT NULL,
|
||||
`contact_email` VARCHAR(150) DEFAULT NULL,
|
||||
`contract_status` ENUM('trial','active','suspended','terminated') NOT NULL DEFAULT 'trial',
|
||||
`trial_ends_at` DATE DEFAULT NULL,
|
||||
`notes` TEXT DEFAULT NULL,
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_country_type` (`country`, `type`),
|
||||
KEY `idx_contract_status` (`contract_status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 2. transit_org_links — ربط ناقل ↔ مؤسسة (النمط الثاني)
|
||||
-- جامعة حكومية لا تملك أسطولاً → تُخدَم بناقل مسجّل
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_org_links` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`institution_id` INT UNSIGNED NOT NULL COMMENT 'org_id للمؤسسة (جامعة/مدرسة)',
|
||||
`transporter_id` INT UNSIGNED NOT NULL COMMENT 'org_id للناقل (type=transporter)',
|
||||
`status` ENUM('active','inactive') NOT NULL DEFAULT 'active',
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uq_link` (`institution_id`, `transporter_id`),
|
||||
KEY `idx_transporter` (`transporter_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 3. transit_org_admins — مشرفو المؤسسة (لوحة تحكم الويب)
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_org_admins` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`name` VARCHAR(120) NOT NULL,
|
||||
`phone` VARCHAR(25) NOT NULL,
|
||||
`role` ENUM('owner','transport_manager','dispatcher') NOT NULL DEFAULT 'transport_manager',
|
||||
`permissions` JSON DEFAULT NULL COMMENT '{"routes":true,"drivers":true,"roster":true,"broadcast":true}',
|
||||
`is_active` TINYINT(1) NOT NULL DEFAULT 1,
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uq_phone_org` (`phone`, `org_id`),
|
||||
KEY `idx_org` (`org_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 4. transit_sessions — جلسات تسجيل دخول مشرف الويب (OTP-based)
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_sessions` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`admin_id` INT UNSIGNED NOT NULL,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`token_hash` VARCHAR(64) NOT NULL COMMENT 'sha256 للـ session token',
|
||||
`ip` VARCHAR(45) DEFAULT NULL,
|
||||
`user_agent` VARCHAR(300) DEFAULT NULL,
|
||||
`expires_at` TIMESTAMP NOT NULL,
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uq_token` (`token_hash`),
|
||||
KEY `idx_admin` (`admin_id`),
|
||||
KEY `idx_expires` (`expires_at`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 5. transit_vehicles — الباصات والفانات المملوكة للمؤسسة
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_vehicles` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`plate` VARCHAR(30) NOT NULL,
|
||||
`make` VARCHAR(50) DEFAULT NULL,
|
||||
`model` VARCHAR(50) DEFAULT NULL,
|
||||
`year` SMALLINT DEFAULT NULL,
|
||||
`color` VARCHAR(30) DEFAULT NULL,
|
||||
`capacity` TINYINT NOT NULL DEFAULT 30,
|
||||
`vehicle_type` ENUM('bus','minibus','van','other') NOT NULL DEFAULT 'bus',
|
||||
`is_active` TINYINT(1) NOT NULL DEFAULT 1,
|
||||
`notes` VARCHAR(300) DEFAULT NULL,
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uq_plate` (`plate`),
|
||||
KEY `idx_org` (`org_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 6. transit_drivers — سائقو الباصات (يُنشئهم مشرف المؤسسة)
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_drivers` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`name` VARCHAR(120) NOT NULL,
|
||||
`phone` VARCHAR(25) NOT NULL,
|
||||
`license_number` VARCHAR(50) DEFAULT NULL,
|
||||
`license_img_url` VARCHAR(500) DEFAULT NULL,
|
||||
`main_driver_id` VARCHAR(100) DEFAULT NULL COMMENT 'معرّف في جدول driver الرئيسي إن كان كابتن مشاوير أيضاً',
|
||||
`invite_token` VARCHAR(64) DEFAULT NULL COMMENT 'رمز الدعوة للتفعيل الأولي',
|
||||
`invite_sent_at` TIMESTAMP DEFAULT NULL,
|
||||
`activated_at` TIMESTAMP DEFAULT NULL,
|
||||
`status` ENUM('invited','active','suspended') NOT NULL DEFAULT 'invited',
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uq_phone_org` (`phone`, `org_id`),
|
||||
KEY `idx_org` (`org_id`),
|
||||
KEY `idx_invite_token` (`invite_token`),
|
||||
KEY `idx_main_driver` (`main_driver_id`) -- يُستعلم في transitResolveDriver + driver/me.php
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 7. transit_routes — خطوط النقل
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_routes` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`name_ar` VARCHAR(150) NOT NULL,
|
||||
`name_en` VARCHAR(150) DEFAULT NULL,
|
||||
`direction` ENUM('outbound','inbound','circular') NOT NULL DEFAULT 'outbound',
|
||||
`polyline` TEXT DEFAULT NULL COMMENT 'Encoded polyline للمسار',
|
||||
`distance_km` DECIMAL(7,2) DEFAULT NULL,
|
||||
`duration_min` SMALLINT DEFAULT NULL,
|
||||
`status` ENUM('draft','active','suspended','rejected') NOT NULL DEFAULT 'draft',
|
||||
`created_by` INT UNSIGNED DEFAULT NULL COMMENT 'admin_id من أنشأه',
|
||||
`approved_by` INT UNSIGNED DEFAULT NULL COMMENT 'admin_id من اعتمده (فريق سيرو)',
|
||||
`approved_at` TIMESTAMP DEFAULT NULL,
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_org_status` (`org_id`, `status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 8. transit_stops — محطات الخط مع جيوفينس
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_stops` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`route_id` INT UNSIGNED NOT NULL,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`sequence` TINYINT NOT NULL COMMENT 'ترتيب المحطة في الخط (1، 2، 3…)',
|
||||
`name_ar` VARCHAR(120) NOT NULL,
|
||||
`name_en` VARCHAR(120) DEFAULT NULL,
|
||||
`latitude` DECIMAL(10,7) NOT NULL,
|
||||
`longitude` DECIMAL(10,7) NOT NULL,
|
||||
`geofence_radius` SMALLINT NOT NULL DEFAULT 150 COMMENT 'نصف قطر الجيوفينس بالمتر',
|
||||
`eta_offset_min` SMALLINT DEFAULT NULL COMMENT 'الإزاحة الزمنية عن وقت الانطلاق بالدقائق',
|
||||
`is_major` TINYINT(1) NOT NULL DEFAULT 0 COMMENT 'محطة رئيسية (تظهر بارزة للطالب)',
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_route_seq` (`route_id`, `sequence`),
|
||||
KEY `idx_org` (`org_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 9. transit_schedules — جداول انطلاق الخطوط
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_schedules` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`route_id` INT UNSIGNED NOT NULL,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`vehicle_id` INT UNSIGNED DEFAULT NULL COMMENT 'الباص المخصص لهذا الجدول (NULL = يُحدد يومياً)',
|
||||
`driver_id` INT UNSIGNED DEFAULT NULL COMMENT 'السائق المخصص (NULL = يُحدد يومياً)',
|
||||
`days_mask` TINYINT NOT NULL DEFAULT 62 COMMENT 'قناع الأيام: bit0=أحد…bit6=سبت (62=الأحد–الخميس)',
|
||||
`departure_time` TIME NOT NULL,
|
||||
`valid_from` DATE NOT NULL,
|
||||
`valid_until` DATE DEFAULT NULL,
|
||||
`is_active` TINYINT(1) NOT NULL DEFAULT 1,
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_route_active` (`route_id`, `is_active`),
|
||||
KEY `idx_org` (`org_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 10. transit_trips — الرحلات اليومية الفعلية
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_trips` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`schedule_id` INT UNSIGNED NOT NULL,
|
||||
`route_id` INT UNSIGNED NOT NULL,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`driver_id` INT UNSIGNED NOT NULL,
|
||||
`vehicle_id` INT UNSIGNED DEFAULT NULL COMMENT 'NULL إن كان الجدول بلا باص مخصص',
|
||||
`trip_date` DATE NOT NULL,
|
||||
`status` ENUM('scheduled','started','completed','cancelled','no_show') NOT NULL DEFAULT 'scheduled',
|
||||
`started_at` TIMESTAMP DEFAULT NULL,
|
||||
`completed_at` TIMESTAMP DEFAULT NULL,
|
||||
`delay_minutes` TINYINT DEFAULT 0,
|
||||
`delay_reason` VARCHAR(300) DEFAULT NULL,
|
||||
`current_stop_seq` TINYINT DEFAULT NULL COMMENT 'آخر محطة جيوفينس مرّ عليها الباص',
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uq_schedule_date` (`schedule_id`, `trip_date`),
|
||||
KEY `idx_route_date` (`route_id`, `trip_date`),
|
||||
KEY `idx_org_date` (`org_id`, `trip_date`),
|
||||
KEY `idx_driver_date` (`driver_id`, `trip_date`),
|
||||
KEY `idx_status` (`status`) -- cron_approaching_alerts يستعلم WHERE status='started' كل دقيقة
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 11. transit_enrollments — عضويات الطلاب/الموظفين في المؤسسة
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_enrollments` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`passenger_id` VARCHAR(100) DEFAULT NULL COMMENT 'معرّف في جدول passengers الرئيسي — NULL لصفوف الكشف قبل تفعيل الطالب',
|
||||
`student_id` VARCHAR(50) NOT NULL COMMENT 'الرقم الجامعي/الوظيفي (encrypted)',
|
||||
`member_name` VARCHAR(120) DEFAULT NULL COMMENT 'الاسم من كشف الجامعة',
|
||||
`preferred_stop_id` INT UNSIGNED DEFAULT NULL COMMENT 'محطتي المفضلة',
|
||||
`preferred_route_id` INT UNSIGNED DEFAULT NULL,
|
||||
`verify_method` ENUM('api','roster_phone_match','roster_manual','manual_admin') NOT NULL DEFAULT 'roster_manual',
|
||||
`status` ENUM('pending','active','suspended','expired') NOT NULL DEFAULT 'pending',
|
||||
`verified_at` TIMESTAMP DEFAULT NULL,
|
||||
`expires_at` DATE DEFAULT NULL COMMENT 'نهاية الفصل الدراسي',
|
||||
`roster_id` INT UNSIGNED DEFAULT NULL COMMENT 'الكشف الذي جاءت منه العضوية',
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uq_org_passenger` (`org_id`, `passenger_id`),
|
||||
KEY `idx_org_status` (`org_id`, `status`),
|
||||
KEY `idx_passenger` (`passenger_id`),
|
||||
KEY `idx_preferred_route` (`preferred_route_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 12. transit_rosters — سجلات استيراد كشوف الطلاب
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_rosters` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`uploaded_by` INT UNSIGNED NOT NULL COMMENT 'admin_id',
|
||||
`filename` VARCHAR(200) DEFAULT NULL,
|
||||
`total_rows` INT DEFAULT 0,
|
||||
`matched_rows` INT DEFAULT 0 COMMENT 'طلاب طابق هاتفهم حساباً موجوداً',
|
||||
`new_enrollments` INT DEFAULT 0,
|
||||
`expired_count` INT DEFAULT 0 COMMENT 'طلاب تخرجوا وأُوقفت عضويتهم',
|
||||
`semester` VARCHAR(30) DEFAULT NULL COMMENT 'مثال: 2026-S1',
|
||||
`notes` VARCHAR(300) DEFAULT NULL,
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_org` (`org_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 13. transit_guardians — أولياء الأمور (للمدارس)
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_guardians` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`enrollment_id` INT UNSIGNED NOT NULL,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`guardian_passenger_id` VARCHAR(100) NOT NULL COMMENT 'معرّف ولي الأمر في passengers الرئيسي',
|
||||
`relation` ENUM('father','mother','guardian') NOT NULL DEFAULT 'guardian',
|
||||
`notify_depart` TINYINT(1) NOT NULL DEFAULT 1 COMMENT 'إشعار عند انطلاق الباص',
|
||||
`notify_board` TINYINT(1) NOT NULL DEFAULT 1 COMMENT 'إشعار عند صعود الطفل',
|
||||
`notify_arrive` TINYINT(1) NOT NULL DEFAULT 1 COMMENT 'إشعار عند وصول الباص للمدرسة',
|
||||
`notify_return` TINYINT(1) NOT NULL DEFAULT 1 COMMENT 'إشعار عند العودة للبيت',
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uq_enrollment_guardian` (`enrollment_id`, `guardian_passenger_id`),
|
||||
KEY `idx_org` (`org_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 14. transit_broadcasts — إعلانات المشرف للمشتركين
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_broadcasts` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`org_id` INT UNSIGNED NOT NULL,
|
||||
`sent_by` INT UNSIGNED NOT NULL COMMENT 'admin_id',
|
||||
`target_type` ENUM('all','route','role') NOT NULL DEFAULT 'all',
|
||||
`target_id` INT UNSIGNED DEFAULT NULL COMMENT 'route_id عند target_type=route',
|
||||
`title_ar` VARCHAR(200) DEFAULT NULL,
|
||||
`body_ar` TEXT NOT NULL,
|
||||
`fcm_topic` VARCHAR(150) DEFAULT NULL COMMENT 'الموضوع المستخدم للإرسال',
|
||||
`sent_at` TIMESTAMP DEFAULT NULL,
|
||||
`delivery_count` INT DEFAULT NULL,
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_org` (`org_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 15. transit_boardings — إثبات الصعود والنزول (مرحلة ثانية)
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_boardings` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`trip_id` INT UNSIGNED NOT NULL,
|
||||
`enrollment_id` INT UNSIGNED NOT NULL,
|
||||
`stop_id` INT UNSIGNED DEFAULT NULL,
|
||||
`boarded_at` TIMESTAMP DEFAULT NULL,
|
||||
`alighted_at` TIMESTAMP DEFAULT NULL,
|
||||
`method` ENUM('geofence','qr','driver_tap') NOT NULL DEFAULT 'geofence',
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_trip` (`trip_id`),
|
||||
KEY `idx_enrollment` (`enrollment_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- 16. transit_otp_log — سجل OTPs لمشرفي الويب (تنظيف دوري)
|
||||
-- -----------------------------------------------------------------
|
||||
CREATE TABLE IF NOT EXISTS `transit_otp_log` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`phone` VARCHAR(25) NOT NULL,
|
||||
`otp_hash` VARCHAR(64) NOT NULL COMMENT 'sha256 للكود',
|
||||
`expires_at` TIMESTAMP NOT NULL,
|
||||
`used` TINYINT(1) NOT NULL DEFAULT 0,
|
||||
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_phone` (`phone`),
|
||||
KEY `idx_expires` (`expires_at`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- ترحيل (Migration) لقاعدة أُنشئت قبل 2026-07-12 — نفّذ مرة واحدة:
|
||||
-- ALTER TABLE transit_enrollments MODIFY passenger_id VARCHAR(100) DEFAULT NULL
|
||||
-- COMMENT 'معرّف في جدول passengers الرئيسي — NULL لصفوف الكشف قبل تفعيل الطالب';
|
||||
-- ALTER TABLE transit_trips MODIFY vehicle_id INT UNSIGNED DEFAULT NULL
|
||||
-- COMMENT 'NULL إن كان الجدول بلا باص مخصص';
|
||||
-- ALTER TABLE transit_routes MODIFY status ENUM('draft','active','suspended','rejected') NOT NULL DEFAULT 'draft';
|
||||
-- (بدونها: Admin/transit/route/approve.php بإجراء reject يفشل بخطأ SQL دائماً)
|
||||
-- ALTER TABLE transit_drivers ADD KEY idx_main_driver (main_driver_id);
|
||||
-- (بدونها: كل استعلام transitResolveDriver / driver/me.php = مسح جدول كامل)
|
||||
-- ALTER TABLE transit_trips ADD KEY idx_status (status);
|
||||
-- (بدونها: cron_approaching_alerts كل دقيقة = مسح جدول transit_trips كامل)
|
||||
-- -----------------------------------------------------------------
|
||||
|
||||
-- -----------------------------------------------------------------
|
||||
-- ملاحظات الـ Redis (keys تُكتب من PHP — ليست في SQL)
|
||||
-- transit:trip:{trip_id}:pos → آخر موقع GPS للباص (Hash: lat,lng,ts)
|
||||
-- transit:trip:{trip_id}:status → حالة الرحلة الحية
|
||||
-- transit:otp:{phone} → OTP مشرف الويب (TTL 300s)
|
||||
-- transit:session:{token_hash} → admin_id+org_id (TTL 86400s)
|
||||
-- transit:driver_mode:{driver_id} → وضع السائق الحالي (bus/ride), TTL session
|
||||
-- FCM Topics: transit_route_{route_id} ← كل مشتركي خط
|
||||
-- -----------------------------------------------------------------
|
||||
@@ -0,0 +1,971 @@
|
||||
USE paymentDB;
|
||||
-- phpMyAdmin SQL Dump
|
||||
-- version 5.2.2
|
||||
-- https://www.phpmyadmin.net/
|
||||
--
|
||||
-- Host: 127.0.0.1:3306
|
||||
-- Generation Time: Jun 16, 2026 at 05:29 PM
|
||||
-- Server version: 8.0.43-0ubuntu0.22.04.2
|
||||
-- PHP Version: 8.1.33
|
||||
|
||||
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
|
||||
START TRANSACTION;
|
||||
SET time_zone = "+00:00";
|
||||
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8mb4 */;
|
||||
|
||||
--
|
||||
-- Database: `WalletIntaleqDB`
|
||||
--
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `adminUser`
|
||||
--
|
||||
|
||||
CREATE TABLE `adminUser` (
|
||||
`id` int NOT NULL,
|
||||
`device_number` varchar(300) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
|
||||
`name` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `cliq_invoices`
|
||||
--
|
||||
|
||||
CREATE TABLE `cliq_invoices` (
|
||||
`id` int NOT NULL,
|
||||
`invoice_number` varchar(50) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`user_id` varchar(50) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`user_type` varchar(20) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`cliq_phone` varchar(50) COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`status` varchar(20) COLLATE utf8mb4_general_ci DEFAULT 'pending',
|
||||
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `driver`
|
||||
--
|
||||
|
||||
CREATE TABLE `driver` (
|
||||
`id` varchar(100) NOT NULL,
|
||||
`phone` varchar(20) NOT NULL,
|
||||
`email` varchar(255) NOT NULL,
|
||||
`password` varchar(255) NOT NULL,
|
||||
`gender` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL DEFAULT 'Male',
|
||||
`license_type` varchar(255) DEFAULT NULL,
|
||||
`national_number` varchar(255) DEFAULT NULL,
|
||||
`name_arabic` varchar(255) DEFAULT NULL,
|
||||
`name_english` varchar(255) DEFAULT NULL,
|
||||
`issue_date` date DEFAULT NULL,
|
||||
`expiry_date` date DEFAULT NULL,
|
||||
`license_categories` varchar(255) DEFAULT NULL,
|
||||
`address` text,
|
||||
`card_id` varchar(255) DEFAULT NULL,
|
||||
`occupation` varchar(255) DEFAULT NULL,
|
||||
`licenseIssueDate` varchar(50) DEFAULT NULL,
|
||||
`religion` varchar(255) DEFAULT NULL,
|
||||
`status` varchar(20) NOT NULL DEFAULT 'notDeleted',
|
||||
`birthdate` varchar(20) NOT NULL,
|
||||
`site` varchar(255) NOT NULL,
|
||||
`first_name` varchar(255) NOT NULL,
|
||||
`last_name` varchar(255) NOT NULL,
|
||||
`accountBank` varchar(55) NOT NULL DEFAULT 'yet',
|
||||
`bankCode` varchar(20) NOT NULL DEFAULT 'CIB',
|
||||
`education` varchar(255) DEFAULT NULL,
|
||||
`employmentType` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL,
|
||||
`maritalStatus` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL,
|
||||
`fullNameMaritial` varchar(255) DEFAULT NULL,
|
||||
`expirationDate` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL,
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `driverToken`
|
||||
--
|
||||
|
||||
CREATE TABLE `driverToken` (
|
||||
`id` int NOT NULL,
|
||||
`token` varchar(255) NOT NULL,
|
||||
`captain_id` varchar(255) NOT NULL,
|
||||
`fingerPrint` varchar(100) NOT NULL,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `driverWallet`
|
||||
--
|
||||
|
||||
CREATE TABLE `driverWallet` (
|
||||
`id` int NOT NULL,
|
||||
`driverID` varchar(100) NOT NULL,
|
||||
`paymentID` varchar(200) NOT NULL,
|
||||
`dateCreated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`amount` decimal(12,3) NOT NULL,
|
||||
`paymentMethod` varchar(20) NOT NULL,
|
||||
`dateUpdated` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `driver_withdrawal_requests`
|
||||
--
|
||||
|
||||
CREATE TABLE `driver_withdrawal_requests` (
|
||||
`id` int NOT NULL,
|
||||
`driver_id` varchar(255) NOT NULL,
|
||||
`driver_name` varchar(255) NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`wallet_type` varchar(50) NOT NULL,
|
||||
`wallet_number` varchar(50) NOT NULL,
|
||||
`status` varchar(50) NOT NULL DEFAULT 'pending',
|
||||
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `ecash_transactions`
|
||||
--
|
||||
|
||||
CREATE TABLE `ecash_transactions` (
|
||||
`id` bigint UNSIGNED NOT NULL,
|
||||
`order_ref` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||
`passenger_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`status` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
|
||||
`ecash_transaction_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `ecash_transactions_driver`
|
||||
--
|
||||
|
||||
CREATE TABLE `ecash_transactions_driver` (
|
||||
`id` bigint UNSIGNED NOT NULL,
|
||||
`order_ref` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`driver_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`status` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
|
||||
`ecash_transaction_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `invoices_shamcash`
|
||||
--
|
||||
|
||||
CREATE TABLE `invoices_shamcash` (
|
||||
`id` int NOT NULL,
|
||||
`invoice_number` int NOT NULL,
|
||||
`driverID` varchar(44) NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`status` enum('pending','processing','completed','failed') NOT NULL DEFAULT 'pending',
|
||||
`transaction_id` varchar(50) DEFAULT NULL COMMENT 'رقم عملية شام كاش لمنع التكرار',
|
||||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`paid_at` datetime DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `invoices_shamcash_passenger`
|
||||
--
|
||||
|
||||
CREATE TABLE `invoices_shamcash_passenger` (
|
||||
`id` int NOT NULL,
|
||||
`invoice_number` int NOT NULL,
|
||||
`passengerID` varchar(33) NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`status` enum('pending','processing','completed','failed') NOT NULL DEFAULT 'pending',
|
||||
`transaction_id` varchar(50) DEFAULT NULL,
|
||||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`paid_at` datetime DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `invoices_sms`
|
||||
--
|
||||
|
||||
CREATE TABLE `invoices_sms` (
|
||||
`id` int NOT NULL,
|
||||
`invoice_number` varchar(20) NOT NULL,
|
||||
`user_phone` varchar(20) NOT NULL,
|
||||
`amount` decimal(10,3) NOT NULL,
|
||||
`status` enum('pending','completed','failed') NOT NULL DEFAULT 'pending',
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`driverID` varchar(33) DEFAULT NULL,
|
||||
`currency` varchar(8) DEFAULT 'SYP'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `invoices_sms_passenger`
|
||||
--
|
||||
|
||||
CREATE TABLE `invoices_sms_passenger` (
|
||||
`id` int NOT NULL,
|
||||
`invoice_number` varchar(20) NOT NULL,
|
||||
`user_phone` varchar(20) NOT NULL,
|
||||
`amount` decimal(10,0) NOT NULL,
|
||||
`status` enum('pending','completed','failed') NOT NULL DEFAULT 'pending',
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`passengerID` varchar(33) NOT NULL,
|
||||
`currency` varchar(8) NOT NULL DEFAULT 'SYP'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `kazan`
|
||||
--
|
||||
|
||||
CREATE TABLE `kazan` (
|
||||
`id` int NOT NULL,
|
||||
`country` varchar(30) NOT NULL,
|
||||
`kazan` varchar(10) NOT NULL,
|
||||
`comfortPrice` varchar(10) NOT NULL,
|
||||
`speedPrice` varchar(10) NOT NULL,
|
||||
`deliveryPrice` varchar(11) NOT NULL,
|
||||
`freePrice` varchar(11) NOT NULL,
|
||||
`latePrice` varchar(10) NOT NULL,
|
||||
`heavyPrice` varchar(10) NOT NULL,
|
||||
`adminId` varchar(100) NOT NULL,
|
||||
`createdAt` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`naturePrice` varchar(10) NOT NULL,
|
||||
`fuelPrice` varchar(6) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `mtn_invoices`
|
||||
--
|
||||
|
||||
CREATE TABLE `mtn_invoices` (
|
||||
`id` int NOT NULL,
|
||||
`invoice_number` varchar(20) NOT NULL,
|
||||
`user_id` varchar(50) NOT NULL,
|
||||
`user_type` enum('driver','passenger') NOT NULL COMMENT 'يحدد هل المستخدم سائق أم راكب',
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`mtn_phone` varchar(80) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'رقم MTN الذي سيتم الدفع منه',
|
||||
`status` enum('pending','completed','failed','expired') NOT NULL DEFAULT 'pending',
|
||||
`mtn_transaction_id` varchar(255) DEFAULT NULL COMMENT 'معرّف العملية من طرف MTN بعد الدفع',
|
||||
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `passengers`
|
||||
--
|
||||
|
||||
CREATE TABLE `passengers` (
|
||||
`id` varchar(100) NOT NULL,
|
||||
`phone` varchar(15) NOT NULL,
|
||||
`email` varchar(255) NOT NULL,
|
||||
`password` varchar(100) NOT NULL,
|
||||
`gender` varchar(25) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL,
|
||||
`status` varchar(20) NOT NULL DEFAULT 'notDeleted',
|
||||
`birthdate` varchar(44) NOT NULL,
|
||||
`site` varchar(255) NOT NULL,
|
||||
`first_name` varchar(255) NOT NULL,
|
||||
`last_name` varchar(255) NOT NULL,
|
||||
`sosPhone` varchar(33) NOT NULL DEFAULT 'sos',
|
||||
`education` varchar(30) NOT NULL DEFAULT 'none',
|
||||
`employmentType` varchar(30) NOT NULL DEFAULT 'none',
|
||||
`maritalStatus` varchar(30) NOT NULL DEFAULT 'none',
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `passengerWallet`
|
||||
--
|
||||
|
||||
CREATE TABLE `passengerWallet` (
|
||||
`id` int NOT NULL,
|
||||
`passenger_id` varchar(100) NOT NULL,
|
||||
`balance` decimal(10,2) NOT NULL,
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `payments`
|
||||
--
|
||||
|
||||
CREATE TABLE `payments` (
|
||||
`id` varchar(111) NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`payment_method` varchar(255) NOT NULL,
|
||||
`passengerID` varchar(100) NOT NULL,
|
||||
`rideId` varchar(100) NOT NULL,
|
||||
`driverID` varchar(100) NOT NULL,
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`isGiven` varchar(20) NOT NULL DEFAULT 'waiting'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `paymentsDriverPoints`
|
||||
--
|
||||
|
||||
CREATE TABLE `paymentsDriverPoints` (
|
||||
`id` int NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`payment_method` varchar(50) NOT NULL,
|
||||
`driverID` varchar(60) NOT NULL,
|
||||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `paymentsLog`
|
||||
--
|
||||
|
||||
CREATE TABLE `paymentsLog` (
|
||||
`id` int NOT NULL,
|
||||
`payment_id` varchar(255) NOT NULL,
|
||||
`user_id` char(40) NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`status` tinyint NOT NULL DEFAULT '0',
|
||||
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `paymentsLogSyria`
|
||||
--
|
||||
|
||||
CREATE TABLE `paymentsLogSyria` (
|
||||
`id` int NOT NULL,
|
||||
`user_id` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`status` tinyint NOT NULL DEFAULT '0',
|
||||
`order_ref` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`payment_method` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT 'ecash',
|
||||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NULL DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `paymentsLogSyriaDriver`
|
||||
--
|
||||
|
||||
CREATE TABLE `paymentsLogSyriaDriver` (
|
||||
`id` int NOT NULL,
|
||||
`user_id` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL DEFAULT '0.00',
|
||||
`status` tinyint NOT NULL DEFAULT '2',
|
||||
`processed_wallet` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`order_ref` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`payment_method` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT 'ecash',
|
||||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `payment_log_driver`
|
||||
--
|
||||
|
||||
CREATE TABLE `payment_log_driver` (
|
||||
`id` int NOT NULL,
|
||||
`payment_id` varchar(255) NOT NULL,
|
||||
`user_id` char(70) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`status` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `payment_tokens`
|
||||
--
|
||||
|
||||
CREATE TABLE `payment_tokens` (
|
||||
`id` int NOT NULL,
|
||||
`token` varchar(255) NOT NULL,
|
||||
`driverID` varchar(255) NOT NULL,
|
||||
`dateCreated` datetime NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`isUsed` tinyint(1) DEFAULT '0'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `payment_tokens_passenger`
|
||||
--
|
||||
|
||||
CREATE TABLE `payment_tokens_passenger` (
|
||||
`id` int NOT NULL,
|
||||
`token` varchar(255) NOT NULL,
|
||||
`passengerId` varchar(255) NOT NULL,
|
||||
`dateCreated` datetime NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`isUsed` tinyint(1) DEFAULT '0'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `payout_requests`
|
||||
--
|
||||
|
||||
CREATE TABLE `payout_requests` (
|
||||
`id` int NOT NULL,
|
||||
`driver_id` varchar(35) NOT NULL,
|
||||
`driver_phone` varchar(20) NOT NULL,
|
||||
`amount` decimal(10,2) NOT NULL,
|
||||
`wallet_type` varchar(50) DEFAULT NULL,
|
||||
`status` enum('pending','completed','failed') NOT NULL DEFAULT 'pending',
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`completed_at` timestamp NULL DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `phone_verification`
|
||||
--
|
||||
|
||||
CREATE TABLE `phone_verification` (
|
||||
`id` int NOT NULL,
|
||||
`phone_number` varchar(20) NOT NULL,
|
||||
`driverId` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'yet',
|
||||
`email` varchar(50) NOT NULL DEFAULT 'yet',
|
||||
`token_code` varchar(10) NOT NULL,
|
||||
`expiration_time` datetime NOT NULL,
|
||||
`is_verified` tinyint(1) DEFAULT '0',
|
||||
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `phone_verification_passenger`
|
||||
--
|
||||
|
||||
CREATE TABLE `phone_verification_passenger` (
|
||||
`id` int NOT NULL,
|
||||
`phone_number` varchar(15) NOT NULL,
|
||||
`token` varchar(6) NOT NULL,
|
||||
`expiration_time` datetime NOT NULL,
|
||||
`verified` tinyint(1) DEFAULT '0',
|
||||
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `raw_sms_log`
|
||||
--
|
||||
|
||||
CREATE TABLE `raw_sms_log` (
|
||||
`id` int NOT NULL,
|
||||
`sender` varchar(50) NOT NULL,
|
||||
`message_body` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
|
||||
`status` enum('pending','processed','failed') NOT NULL DEFAULT 'pending',
|
||||
`gemini_result` json DEFAULT NULL,
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `siroWallet`
|
||||
--
|
||||
|
||||
CREATE TABLE `siroWallet` (
|
||||
`id` int NOT NULL,
|
||||
`driverId` varchar(100) NOT NULL,
|
||||
`passengerId` varchar(100) NOT NULL,
|
||||
`amount` decimal(12,3) NOT NULL,
|
||||
`paymentMethod` varchar(50) NOT NULL,
|
||||
`token` varchar(100) NOT NULL,
|
||||
`createdAt` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `smsSender`
|
||||
--
|
||||
|
||||
CREATE TABLE `smsSender` (
|
||||
`id` int NOT NULL,
|
||||
`senderId` varchar(20) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure for table `tokens`
|
||||
--
|
||||
|
||||
CREATE TABLE `tokens` (
|
||||
`id` int NOT NULL,
|
||||
`token` varchar(333) NOT NULL,
|
||||
`passengerID` varchar(111) NOT NULL,
|
||||
`fingerPrint` varchar(300) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
--
|
||||
-- Indexes for dumped tables
|
||||
--
|
||||
|
||||
--
|
||||
-- Indexes for table `adminUser`
|
||||
--
|
||||
ALTER TABLE `adminUser`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `cliq_invoices`
|
||||
--
|
||||
ALTER TABLE `cliq_invoices`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `invoice_number` (`invoice_number`);
|
||||
|
||||
--
|
||||
-- Indexes for table `driver`
|
||||
--
|
||||
ALTER TABLE `driver`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `phone` (`phone`,`email`),
|
||||
ADD UNIQUE KEY `national_number` (`national_number`);
|
||||
|
||||
--
|
||||
-- Indexes for table `driverToken`
|
||||
--
|
||||
ALTER TABLE `driverToken`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `driverWallet`
|
||||
--
|
||||
ALTER TABLE `driverWallet`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `driver_withdrawal_requests`
|
||||
--
|
||||
ALTER TABLE `driver_withdrawal_requests`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `ecash_transactions`
|
||||
--
|
||||
ALTER TABLE `ecash_transactions`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `order_ref_unique` (`order_ref`),
|
||||
ADD KEY `user_id_index` (`user_id`),
|
||||
ADD KEY `passenger_id_index` (`passenger_id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `ecash_transactions_driver`
|
||||
--
|
||||
ALTER TABLE `ecash_transactions_driver`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `order_ref_unique_driver` (`order_ref`),
|
||||
ADD KEY `driver_id_index` (`driver_id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `invoices_shamcash`
|
||||
--
|
||||
ALTER TABLE `invoices_shamcash`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD KEY `invoice_number` (`invoice_number`),
|
||||
ADD KEY `status` (`status`);
|
||||
|
||||
--
|
||||
-- Indexes for table `invoices_shamcash_passenger`
|
||||
--
|
||||
ALTER TABLE `invoices_shamcash_passenger`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD KEY `invoice_number` (`invoice_number`),
|
||||
ADD KEY `status` (`status`);
|
||||
|
||||
--
|
||||
-- Indexes for table `invoices_sms`
|
||||
--
|
||||
ALTER TABLE `invoices_sms`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `invoice_number` (`invoice_number`),
|
||||
ADD KEY `idx_user_phone` (`user_phone`),
|
||||
ADD KEY `idx_status` (`status`);
|
||||
|
||||
--
|
||||
-- Indexes for table `invoices_sms_passenger`
|
||||
--
|
||||
ALTER TABLE `invoices_sms_passenger`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `uniq_invoice_number_passenger` (`invoice_number`);
|
||||
|
||||
--
|
||||
-- Indexes for table `kazan`
|
||||
--
|
||||
ALTER TABLE `kazan`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `mtn_invoices`
|
||||
--
|
||||
ALTER TABLE `mtn_invoices`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `invoice_number` (`invoice_number`),
|
||||
ADD KEY `idx_user` (`user_id`,`user_type`),
|
||||
ADD KEY `idx_status` (`status`);
|
||||
|
||||
--
|
||||
-- Indexes for table `passengers`
|
||||
--
|
||||
ALTER TABLE `passengers`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `phone` (`phone`,`email`);
|
||||
|
||||
--
|
||||
-- Indexes for table `passengerWallet`
|
||||
--
|
||||
ALTER TABLE `passengerWallet`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD KEY `passenger_id` (`passenger_id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `payments`
|
||||
--
|
||||
ALTER TABLE `payments`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `rideId` (`rideId`);
|
||||
|
||||
--
|
||||
-- Indexes for table `paymentsDriverPoints`
|
||||
--
|
||||
ALTER TABLE `paymentsDriverPoints`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `paymentsLog`
|
||||
--
|
||||
ALTER TABLE `paymentsLog`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `payment_id` (`payment_id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `paymentsLogSyria`
|
||||
--
|
||||
ALTER TABLE `paymentsLogSyria`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `paymentsLogSyriaDriver`
|
||||
--
|
||||
ALTER TABLE `paymentsLogSyriaDriver`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD KEY `order_ref_index` (`order_ref`);
|
||||
|
||||
--
|
||||
-- Indexes for table `payment_log_driver`
|
||||
--
|
||||
ALTER TABLE `payment_log_driver`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `payment_id` (`payment_id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `payment_tokens`
|
||||
--
|
||||
ALTER TABLE `payment_tokens`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `payment_tokens_passenger`
|
||||
--
|
||||
ALTER TABLE `payment_tokens_passenger`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `payout_requests`
|
||||
--
|
||||
ALTER TABLE `payout_requests`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD KEY `driver_id_status` (`driver_id`,`status`);
|
||||
|
||||
--
|
||||
-- Indexes for table `phone_verification`
|
||||
--
|
||||
ALTER TABLE `phone_verification`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `phone_verification_passenger`
|
||||
--
|
||||
ALTER TABLE `phone_verification_passenger`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `phone_number` (`phone_number`);
|
||||
|
||||
--
|
||||
-- Indexes for table `raw_sms_log`
|
||||
--
|
||||
ALTER TABLE `raw_sms_log`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `siroWallet`
|
||||
--
|
||||
ALTER TABLE `siroWallet`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `smsSender`
|
||||
--
|
||||
ALTER TABLE `smsSender`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indexes for table `tokens`
|
||||
--
|
||||
ALTER TABLE `tokens`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD UNIQUE KEY `passengerID` (`passengerID`);
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for dumped tables
|
||||
--
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `adminUser`
|
||||
--
|
||||
ALTER TABLE `adminUser`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `cliq_invoices`
|
||||
--
|
||||
ALTER TABLE `cliq_invoices`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `driverToken`
|
||||
--
|
||||
ALTER TABLE `driverToken`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `driverWallet`
|
||||
--
|
||||
ALTER TABLE `driverWallet`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `driver_withdrawal_requests`
|
||||
--
|
||||
ALTER TABLE `driver_withdrawal_requests`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `ecash_transactions`
|
||||
--
|
||||
ALTER TABLE `ecash_transactions`
|
||||
MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `ecash_transactions_driver`
|
||||
--
|
||||
ALTER TABLE `ecash_transactions_driver`
|
||||
MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `invoices_shamcash`
|
||||
--
|
||||
ALTER TABLE `invoices_shamcash`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `invoices_shamcash_passenger`
|
||||
--
|
||||
ALTER TABLE `invoices_shamcash_passenger`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `invoices_sms`
|
||||
--
|
||||
ALTER TABLE `invoices_sms`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `invoices_sms_passenger`
|
||||
--
|
||||
ALTER TABLE `invoices_sms_passenger`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `kazan`
|
||||
--
|
||||
ALTER TABLE `kazan`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `mtn_invoices`
|
||||
--
|
||||
ALTER TABLE `mtn_invoices`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `passengerWallet`
|
||||
--
|
||||
ALTER TABLE `passengerWallet`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `paymentsDriverPoints`
|
||||
--
|
||||
ALTER TABLE `paymentsDriverPoints`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `paymentsLog`
|
||||
--
|
||||
ALTER TABLE `paymentsLog`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `paymentsLogSyria`
|
||||
--
|
||||
ALTER TABLE `paymentsLogSyria`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `paymentsLogSyriaDriver`
|
||||
--
|
||||
ALTER TABLE `paymentsLogSyriaDriver`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `payment_log_driver`
|
||||
--
|
||||
ALTER TABLE `payment_log_driver`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `payment_tokens`
|
||||
--
|
||||
ALTER TABLE `payment_tokens`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `payment_tokens_passenger`
|
||||
--
|
||||
ALTER TABLE `payment_tokens_passenger`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `payout_requests`
|
||||
--
|
||||
ALTER TABLE `payout_requests`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `phone_verification`
|
||||
--
|
||||
ALTER TABLE `phone_verification`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `phone_verification_passenger`
|
||||
--
|
||||
ALTER TABLE `phone_verification_passenger`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `raw_sms_log`
|
||||
--
|
||||
ALTER TABLE `raw_sms_log`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `siroWallet`
|
||||
--
|
||||
ALTER TABLE `siroWallet`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `smsSender`
|
||||
--
|
||||
ALTER TABLE `smsSender`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT for table `tokens`
|
||||
--
|
||||
ALTER TABLE `tokens`
|
||||
MODIFY `id` int NOT NULL AUTO_INCREMENT;
|
||||
--
|
||||
-- Table structure for table `admin_audit_log`
|
||||
--
|
||||
|
||||
CREATE TABLE `admin_audit_log` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`admin_id` varchar(150) NOT NULL,
|
||||
`action` varchar(255) NOT NULL,
|
||||
`table_name` varchar(255) DEFAULT NULL,
|
||||
`record_id` varchar(255) DEFAULT NULL,
|
||||
`details` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
COMMIT;
|
||||
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
Reference in New Issue
Block a user