33 lines
1.3 KiB
PHP
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'],
|
|
]);
|