Files
Siro/backend/food/courier/status.php
T

33 lines
1.3 KiB
PHP

<?php
// food/courier/status.php — حالة السائق في وحدة التوصيل عند فتح التبويب
// (وضع التوصيل مخزَّن في Redis لا في التطبيق — بدون هذا النداء يفتح التطبيق
// على "مغلق" بينما السائق ما زال فعلياً في food:couriers:opted_in ويستقبل عروضاً)
require_once __DIR__ . '/../connect_courier.php';
$enabled = false;
if ($redis) {
$enabled = (bool)$redis->sIsMember('food:couriers:opted_in', $food_courier_id);
}
$activeSt = $food_con->prepare(
"SELECT COUNT(*) AS c FROM food_orders
WHERE courier_id=? AND status IN ('courier_assigned','picked_up')"
);
$activeSt->execute([$food_courier_id]);
$activeCount = (int)($activeSt->fetch()['c'] ?? 0);
$todaySt = $food_con->prepare(
"SELECT COUNT(*) AS orders_count, COALESCE(SUM(delivery_fee),0) AS earnings
FROM food_orders
WHERE courier_id=? AND status='delivered' AND DATE(delivered_at)=CURDATE()"
);
$todaySt->execute([$food_courier_id]);
$today = $todaySt->fetch();
jsonSuccess([
'delivery_mode_enabled' => $enabled,
'active_orders_count' => $activeCount,
'today_orders_count' => (int)$today['orders_count'],
'today_earnings' => (int)$today['earnings'],
]);