Food delivery driver module + masked calls + TURN

This commit is contained in:
Hamza-Ayed
2026-08-04 01:50:50 +03:00
parent 04c214bdf6
commit f01e408ba6
35 changed files with 3029 additions and 212 deletions
+14 -2
View File
@@ -4,8 +4,11 @@ require_once __DIR__ . '/../connect_courier.php';
$st = $food_con->prepare(
"SELECT o.id, o.status, o.merchant_id, m.name_ar AS merchant_name_ar, m.latitude AS merchant_lat,
m.longitude AS merchant_lng, m.address AS merchant_address, o.delivery_fee,
o.delivery_address, o.delivery_lat, o.delivery_lng, o.created_at,
m.longitude AS merchant_lng, m.address AS merchant_address, m.avg_prep_minutes,
o.delivery_fee, o.items_total, o.service_fee, o.discount, o.grand_total, o.payment_method,
o.customer_note, o.delivery_address, o.delivery_lat, o.delivery_lng,
o.created_at, o.ready_at, o.courier_assigned_at, o.picked_up_at,
(SELECT COALESCE(SUM(quantity),0) FROM food_order_items WHERE order_id=o.id) AS items_count,
CASE WHEN o.status IN ('courier_assigned','picked_up') THEN o.delivery_address ELSE NULL END AS visible_address
FROM food_orders o
JOIN food_merchants m ON m.id = o.merchant_id
@@ -20,6 +23,15 @@ foreach ($orders as &$o) {
unset($o['delivery_address']);
$o['delivery_address'] = $o['visible_address'];
unset($o['visible_address']);
$o['items_count'] = (int)$o['items_count'];
// نقداً: السائق يحصّل grand_total من الزبون ويحتفظ بأجرته (delivery_fee)،
// والباقي يبقى ديناً عليه حتى التسوية — نُظهر الرقمين صراحةً في التطبيق
// كي لا يجتهد السائق في الحساب على باب الزبون.
$o['cash_to_collect'] = $o['payment_method'] === 'cash' ? (int)$o['grand_total'] : 0;
$o['courier_owes'] = $o['payment_method'] === 'cash'
? (int)$o['grand_total'] - (int)$o['delivery_fee']
: 0;
}
unset($o);