Files
Siro/walletintaleq.intaleq.xyz/v2/main/Admin/getPassengerDetailsByPassengerID.php
2026-06-11 18:22:59 +03:00

111 lines
2.4 KiB
PHP

<?php
include "../connect.php";
$passengerID = filterRequest("passengerID");
$sql = "SELECT
`passengers`.`id`,
`passengers`.`phone`,
`passengers`.`email`,
`passengers`.`gender`,
`passengers`.`status`,
`passengers`.`birthdate`,
`passengers`.`site`,
`passengers`.`first_name`,
`passengers`.`last_name`,
`passengers`.`sosPhone`,
`passengers`.`education`,
`passengers`.`employmentType`,
`passengers`.`maritalStatus`,
`passengers`.`created_at`,
`passengers`.`updated_at`,
(
SELECT
COUNT(`passengers`.`id`)
FROM
`passengers`
) AS countPassenger,
(
SELECT
COUNT(`feedBack`.id)
FROM
`feedBack`
) AS countFeedback,
(
SELECT
CAST(AVG(`rating`) as DECIMAL(10,2))
FROM
`ratingPassenger`
WHERE
`ratingPassenger`.`passenger_id` = `passengers`.`id`
) AS ratingPassenger,
(
SELECT
COUNT(`ratingPassenger`.`driverID`)
FROM
`ratingPassenger`
WHERE
`ratingPassenger`.`passenger_id` = `passengers`.`id`
) AS countDriverRate,
(
SELECT
COUNT(`canecl`.`passengerID`)
FROM
`canecl`
WHERE
`canecl`.`passengerID` = `passengers`.`id`
) AS countPassengerCancel,
(
SELECT
CAST(AVG(`ratingDriver`.`rating`) as DECIMAL(10,2))
FROM
`ratingDriver`
WHERE
`ratingDriver`.`passenger_iD` = `passengers`.`id`
) AS passengerAverageRating,
(
SELECT
COUNT(`ratingDriver`.`driver_id`)
FROM
`ratingDriver`
WHERE
`ratingDriver`.`passenger_id` = `passengers`.`id`
) AS countPassengerRate,
(
SELECT
COUNT(`ride`.`passenger_id`)
FROM
`ride`
WHERE
`ride`.`passenger_id` = `passengers`.`id`
) AS countPassengerRide,
(
SELECT
`tokens`.`token`
FROM
`tokens`
WHERE
`tokens`.`passengerID` = `passengers`.`id`
) AS passengerToken
FROM
`passengers` WHERE passengers.id='$passengerID'
GROUP BY
`passengers`.`id`
ORDER BY
countPassengerRide
DESC
";
$stmt = $con->prepare($sql);
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
if ($stmt->rowCount() > 0) {
// Print all the records
// printData($result);
printSuccess($data = $result);
} else {
// Print a failure message
printFailure($message = "No records found");
}
?>