Ajout de la gateway
continuous-integration/drone/push Build is passing Details

permettant de récolter les données pour le dashboard
ServeurDeTest
Johan LACHENAL 2 years ago
parent bf668612f4
commit 5b6b259b81

@ -56,6 +56,39 @@ class PartieGateway
return $listePartie; return $listePartie;
} }
public function getDashBoardData(Partie $partie) : array{
$query="SELECT joueur
FROM Participer p
WHERE p.partie=:idPartie";
$this->con->executeQuery($query,array(
'idPartie' => array($partie->getIdPartie(),PDO::PARAM_INT)));
$listeIdJoueur=$this->con->getResults();
$DashboardData=array();
foreach($listeIdJoueur as $joueur){
$points=0;
$query="SELECT pe.utilisateur,pe.points,pe.temps,u.pseudo
FROM Utilisateur u,PasserEnigme pe,Partie p
WHERE points IS NOT NULL
AND u.email=pe.utilisateur
AND pe.partie=:idPartie
AND pe.utilisateur=:joueur
GROUP BY pe.utilisateur,pe.points,pe.temps,u.pseudo
ORDER BY u.pseudo,pe.temps ASC";
$this->con->executequery($query,array(
'idPartie' => array($partie->getIdPartie(),PDO::PARAM_INT),
'joueur' => array($joueur,PDO::PARAM_STR)));
$results=$this->con->getResults();
$joueurDashboardData=array();
foreach($results as $row)
{
$points+=$row['pe.points'];
$joueurDashboardData[]=array($points,$row['pe.temps']);
}
$DashboardData[]=array($results[0]['u.pseudo'] => $joueurDashboardData);
}
return $DashboardData;
}
public function showAll() : void{ public function showAll() : void{
$query= "SELECT * FROM Partie"; $query= "SELECT * FROM Partie";
$this->con->executeQuery($query); $this->con->executeQuery($query);

@ -1,5 +1,5 @@
<?php <?php
include_once "../Factory/PartieFactory.php";
class UtilisateurGateway class UtilisateurGateway
{ {
private Connection $con; private Connection $con;
@ -51,7 +51,7 @@ class UtilisateurGateway
if ($results == null){ if ($results == null){
return new Utilisateur("null", "null", "null", false); return new Utilisateur("null", "null", "null", false);
} }
return new Utilisateur($email, $pseudo, $mdp, $estAdmin); return new Utilisateur($email, $pseudo, $mdp, $estAdmin,false);
} }
public function getMdpByEmail(string $email) : string{ public function getMdpByEmail(string $email) : string{

Loading…
Cancel
Save