diff --git a/project/public/getPendingRequests.php b/project/public/getPendingRequests.php index 54dac05..859e602 100644 --- a/project/public/getPendingRequests.php +++ b/project/public/getPendingRequests.php @@ -55,7 +55,7 @@ function getWorkingDays($startDate, $endDate) { } try { - // D'abord, récupérer le service du manager + // Récupérer le service du manager $queryManagerService = "SELECT ServiceId FROM Users WHERE ID = ?"; $stmtManager = $conn->prepare($queryManagerService); $stmtManager->bind_param("i", $managerId); @@ -66,7 +66,7 @@ try { $serviceId = $managerRow['ServiceId']; error_log("getPendingRequests - Service ID du manager: $serviceId"); - // Récupérer les demandes en attente de l'équipe + // Récupérer les demandes en attente (multi-types) $queryRequests = " SELECT dc.Id, @@ -78,13 +78,16 @@ try { dc.EmployeeId, CONCAT(u.Prenom, ' ', u.Nom) as employee_name, u.Email as employee_email, - tc.Nom as type + GROUP_CONCAT(tc.Nom ORDER BY tc.Nom SEPARATOR ', ') as types FROM DemandeConge dc JOIN Users u ON dc.EmployeeId = u.ID - JOIN TypeConge tc ON dc.TypeCongeId = tc.Id + JOIN TypeConge tc ON FIND_IN_SET(tc.Id, dc.TypeCongeId) WHERE u.ServiceId = ? AND dc.Statut = 'En attente' AND u.ID != ? + GROUP BY + dc.Id, dc.DateDebut, dc.DateFin, dc.Statut, dc.DateDemande, + dc.Commentaire, dc.EmployeeId, u.Prenom, u.Nom, u.Email ORDER BY dc.DateDemande ASC "; @@ -112,7 +115,7 @@ try { 'employee_id' => (int)$row['EmployeeId'], 'employee_name' => $row['employee_name'], 'employee_email' => $row['employee_email'], - 'type' => $row['type'], + 'type' => $row['types'], // ex: "Congé payé, RTT" 'start_date' => $row['DateDebut'], 'end_date' => $row['DateFin'], 'date_display' => $dateDisplay, @@ -153,4 +156,4 @@ try { } $conn->close(); -?> \ No newline at end of file +?>