From e7453cb6f9b890d13706ba896643254bacabc323 Mon Sep 17 00:00:00 2001 From: Hamza-Ayed Date: Mon, 6 Jul 2026 01:31:53 +0300 Subject: [PATCH] Update: 2026-07-06 01:31:52 --- backend/bot/generate_price_tasks.php | 39 ++++++++++++++++++++++++++-- backend/ride/pricing/get.php | 4 +++ 2 files changed, 41 insertions(+), 2 deletions(-) diff --git a/backend/bot/generate_price_tasks.php b/backend/bot/generate_price_tasks.php index c40476cd..1e73d126 100644 --- a/backend/bot/generate_price_tasks.php +++ b/backend/bot/generate_price_tasks.php @@ -94,12 +94,43 @@ $countriesConfig = [ ['name' => 'Jabal Amman', 'lat' => 31.9511, 'lng' => 35.9189], ['name' => 'Sweileh', 'lat' => 32.0167, 'lng' => 35.8333], ['name' => 'Khalda', 'lat' => 31.9861, 'lng' => 35.8450], - ['name' => 'Al-Jubaiha', 'lat' => 32.0194, 'lng' => 35.8753], + ['name' => 'Al-Jubaiha', 'lat' => 32.0194, 'lng' => 35.8753], ['name' => 'Tla Al-Ali', 'lat' => 31.9961, 'lng' => 35.8647], ['name' => 'Shmeisani', 'lat' => 31.9680, 'lng' => 35.9020], ['name' => 'Um Uthaina', 'lat' => 31.9610, 'lng' => 35.8770], ['name' => 'Jabal Al-Weibdeh', 'lat' => 31.9560, 'lng' => 35.9220], ['name' => 'Marj Al-Hamam', 'lat' => 31.9000, 'lng' => 35.8500], + ['name' => '7th Circle', 'lat' => 31.9525, 'lng' => 35.8600], + ['name' => 'Zarqa New', 'lat' => 32.0833, 'lng' => 36.1000], + ['name' => 'Zarqa Camp', 'lat' => 32.0667, 'lng' => 36.0833], + ['name' => 'Russeifa', 'lat' => 32.0167, 'lng' => 36.0500], + ['name' => 'Marka', 'lat' => 31.9833, 'lng' => 35.9833], + ['name' => 'Taj Mall', 'lat' => 31.9423, 'lng' => 35.9038], + ['name' => 'City Mall', 'lat' => 31.9806, 'lng' => 35.8353], + ['name' => 'Mecca Mall', 'lat' => 31.9792, 'lng' => 35.8464], + ['name' => 'Abdali Mall', 'lat' => 31.9644, 'lng' => 35.9117], + ['name' => 'Alrabieh', 'lat' => 31.9722, 'lng' => 35.8814], + ['name' => 'Dabouq', 'lat' => 31.9989, 'lng' => 35.8153], + ['name' => 'Al-Fuheis', 'lat' => 32.0125, 'lng' => 35.7761], + ['name' => 'Wadi Al-Seer', 'lat' => 31.9533, 'lng' => 35.8197], + ['name' => 'Bayader', 'lat' => 31.9472, 'lng' => 35.8236], + ['name' => 'Tariq', 'lat' => 32.0083, 'lng' => 35.9417], + ['name' => 'Hashmi Shamali', 'lat' => 31.9800, 'lng' => 35.9556], + ['name' => 'Jabal Al-Hussein', 'lat' => 31.9639, 'lng' => 35.9231], + ['name' => 'Downtown Amman', 'lat' => 31.9517, 'lng' => 35.9333], + ['name' => 'Al-Ashrafiyeh', 'lat' => 31.9361, 'lng' => 35.9417], + ['name' => 'Al-Muqabalain', 'lat' => 31.9011, 'lng' => 35.9228], + ['name' => 'Al-Wehdat', 'lat' => 31.9250, 'lng' => 35.9417], + ['name' => 'Abu Nuseir', 'lat' => 32.0469, 'lng' => 35.8750], + ['name' => 'Shafa Badran', 'lat' => 32.0417, 'lng' => 35.9083], + ['name' => 'Al-Zaytoonah Uni', 'lat' => 31.8319, 'lng' => 35.9281], + ['name' => 'German Jordan Uni','lat' => 31.7778, 'lng' => 35.8114], + ['name' => 'Queen Alia Airport','lat'=> 31.7225, 'lng' => 35.9933], + ['name' => 'Irbid Center', 'lat' => 32.5514, 'lng' => 35.8500], + ['name' => 'Jerash', 'lat' => 32.2817, 'lng' => 35.8917], + ['name' => 'Salt', 'lat' => 32.0333, 'lng' => 35.7333], + ['name' => 'Madaba', 'lat' => 31.7167, 'lng' => 35.7950], + ['name' => 'Dead Sea Hotels', 'lat' => 31.7161, 'lng' => 35.5878] ] ] ]; @@ -129,8 +160,12 @@ $tasksCreated = 0; foreach ($countriesConfig as $countryCode => $config) { $competitors = $config['competitors']; $regions = $config['regions']; + + // Randomly select 20 regions (or all if less than 20) + shuffle($regions); + $selectedRegions = array_slice($regions, 0, 20); - foreach ($regions as $region) { + foreach ($selectedRegions as $region) { // A. Generate Start Point (within 2km of region center) $start = generateRandomPoint($region['lat'], $region['lng'], 2); diff --git a/backend/ride/pricing/get.php b/backend/ride/pricing/get.php index 15b2edc8..58ff0c63 100644 --- a/backend/ride/pricing/get.php +++ b/backend/ride/pricing/get.php @@ -190,10 +190,14 @@ function calculateDynamicPrice($country, $minFare, $distance, $duration, $kazanR // Damascus bounds to roughly estimate if we are in Syria vs Jordan/Egypt $isSyria = ($passengerLat > 32.0 && $passengerLat < 37.0 && $passengerLng > 35.0 && $passengerLng < 42.0 && $kazanRow['country'] === 'Syria'); $isJordan = ($kazanRow['country'] === 'Jordan' || $kazanRow['country'] === 'JO'); + $isEgypt = ($kazanRow['country'] === 'Egypt' || $kazanRow['country'] === 'EG'); if ($isJordan) { $longSpeedPerKm = 0.30; // Reasonable long distance speed price for Jordan $longTripPerMin = 0.06; // Reasonable long distance minute price for Jordan + } else if ($isEgypt) { + $longSpeedPerKm = 18.0; // Reasonable long distance speed price for Egypt + $longTripPerMin = 3.0; // Reasonable long distance minute price for Egypt } else { $longSpeedPerKm = 26.0; // Syrian Pound $longTripPerMin = 6.0; // Syrian Pound