From ac50598ee07dfd2d378fd5e102c27cb5ec8c71fa Mon Sep 17 00:00:00 2001 From: Hamza-Ayed Date: Mon, 6 Jul 2026 02:07:30 +0300 Subject: [PATCH] Update: 2026-07-06 02:07:30 --- backend/bot/add_start_price.php | 16 ++++++++++++++++ backend/bot/update_jordan_kazan.php | 3 ++- backend/ride/pricing/get.php | 5 +++-- backend/schema_primary.sql | 1 + 4 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 backend/bot/add_start_price.php diff --git a/backend/bot/add_start_price.php b/backend/bot/add_start_price.php new file mode 100644 index 00000000..6325bbc6 --- /dev/null +++ b/backend/bot/add_start_price.php @@ -0,0 +1,16 @@ +exec($sql); + echo "Successfully added startPrice to kazan table.\n"; +} catch (PDOException $e) { + echo "Error adding column: " . $e->getMessage() . "\n"; +} diff --git a/backend/bot/update_jordan_kazan.php b/backend/bot/update_jordan_kazan.php index 0d9360c6..9f392d06 100644 --- a/backend/bot/update_jordan_kazan.php +++ b/backend/bot/update_jordan_kazan.php @@ -17,7 +17,8 @@ echo "Updating Kazan pricing for Jordan...\n"; // Update the kazan table where country is Jordan $sql = "UPDATE kazan - SET speedPrice = '0.22', + SET startPrice = '0.35', + speedPrice = '0.22', fixedPrice = '0.22', awfarPrice = '0.19', normalMinPrice = '0.05', diff --git a/backend/ride/pricing/get.php b/backend/ride/pricing/get.php index c735e863..fd001311 100644 --- a/backend/ride/pricing/get.php +++ b/backend/ride/pricing/get.php @@ -165,6 +165,7 @@ function calculateDynamicPrice($country, $minFare, $distance, $duration, $kazanR $heavyPrice = (float) ($kazanRow['peakMinPrice'] ?? 0); $latePrice = (float) ($kazanRow['lateMinPrice'] ?? 0); $kazanPercent = (float) ($kazanRow['kazanPercent'] ?? 10); + $startPrice = (float) ($kazanRow['startPrice'] ?? 0); // === General Settings === $minBillableKm = 0.2; @@ -268,11 +269,11 @@ function calculateDynamicPrice($country, $minFare, $distance, $duration, $kazanR $baseFareForDistance = $billableDistance * $perKmSpeed; // 1. حساب التسعيرة مع الذروة (للسائق) - $fareWithSurge = $baseFareForDistance + ($billableMinutes * $effectivePerMin); + $fareWithSurge = $startPrice + $baseFareForDistance + ($billableMinutes * $effectivePerMin); $fareWithSurge *= $surgeMultiplier; // 2. حساب التسعيرة الطبيعية بدون ذروة (لراكب Prime) - $fareNoSurge = $baseFareForDistance + ($billableMinutes * $naturePrice); + $fareNoSurge = $startPrice + $baseFareForDistance + ($billableMinutes * $naturePrice); // نحدد التسعيرة الأساسية حسب حالة الراكب $fare = $isPrime ? $fareNoSurge : $fareWithSurge; diff --git a/backend/schema_primary.sql b/backend/schema_primary.sql index 5cdfcc2d..55a1bdbd 100644 --- a/backend/schema_primary.sql +++ b/backend/schema_primary.sql @@ -830,6 +830,7 @@ CREATE TABLE `kazan` ( `kazanPercent` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '10' COMMENT 'نسبة الكازان (عمولة المنصة) %', `fuelPrice` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'سعر الوقود المرجعي', `currency` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'SYP' COMMENT 'رمز العملة: SYP, EGP, JOD, IQD, ...', + `startPrice` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT 'فتحة العداد', -- ========== 🚗 أسعار الكيلومتر لكل نوع سيارة ========== `speedPrice` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'سعر الكيلومتر - Speed',