Files
Siro/payment_server/v2/main/ride/passengerWallet/getWalletByPassenger.php
T

29 lines
978 B
PHP
Executable File

<?php
include "../../connect.php";
$passenger_id = filterRequest("passenger_id");
$sql = "SELECT
COALESCE(dummy.passenger_id, :passenger_id) AS passenger_id,
COALESCE(SUM(pw.balance), 0) AS total,
COALESCE(p.first_name, '') AS first_name,
COALESCE(p.last_name, '') AS last_name,
COALESCE(p.phone, '') AS phone
FROM
(SELECT :passenger_id2 AS passenger_id) AS dummy
LEFT JOIN `passengerWallet` pw ON pw.passenger_id = dummy.passenger_id
LEFT JOIN passengers p ON p.id = dummy.passenger_id
GROUP BY
dummy.passenger_id, p.first_name, p.last_name, p.phone
LIMIT 0, 25;
";
$stmt = $con->prepare($sql);
$stmt->execute(['passenger_id' => $passenger_id, 'passenger_id2' => $passenger_id]);
// LEFT JOIN يُرجع دائماً صفاً واحداً على الأقل (balance=0 إذا لم توجد محفظة)
$row = $stmt->fetchAll(PDO::FETCH_ASSOC);
if (!empty($row)) {
printSuccess($row);
} else {
printFailure("No wallet record found");
}
?>