prestation/Modele/Requetesperso.php
2025-12-01 18:54:33 +00:00

223 lines
6.1 KiB
PHP

<?php
require_once 'Framework/Modele.php';
class Requetesperso extends Modele
{
public function getListeEtatPerso()
{
$codeSociete = $_SESSION['codeSociete'];
if (est_anglophone())
{
$sql = 'SELECT codeRequete AS `code`, nomRequeteEng AS libelle FROM requetesperso WHERE (codeSociete=?) ORDER BY ordre;';
}
else
{
$sql = 'SELECT codeRequete AS `code`, nomRequete AS libelle FROM requetesperso WHERE (codeSociete=?) ORDER BY ordre;';
}
$resultat = $this->executerRequete($sql, array($codeSociete));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getsourcesrequeteperso()
{
$codeSociete = $_SESSION['codeSociete'];
$sql = 'call sp_source_requete_perso_liste(?)';
$resultat = $this->executerRequete($sql, array($codeSociete));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function creerrequeteperso($nomRequete, $nomRequeteEng, $descriptionRequete, $sourceDonnees, $ordre)
{
$codeSociete = $_SESSION['codeSociete'];
$user = $_SESSION['login'];
$sql = 'call sp_creer_requeteperso(?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($codeSociete, $nomRequete, $nomRequeteEng, $descriptionRequete,
$sourceDonnees, $ordre, $user));
}
public function getrequetesperso()
{
$codeSociete = $_SESSION['codeSociete'];
$sql = 'call sp_get_requetesperso(?)';
$resultat = $this->executerRequete($sql, array($codeSociete));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getunerequetesperso($idrequete)
{
$sql = 'call sp_afficher_une_requetesperso(?)';
$resultat = $this->executerRequete($sql, array($idrequete));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function desactiver($codeRequete)
{
$sql = 'call sp_r_desactiver_requetesperso(?)';
$this->executerRequete($sql, array($codeRequete));
}
public function activer($codeRequete)
{
$sql = 'call sp_r_activer_requetesperso(?)';
$this->executerRequete($sql, array($codeRequete));
}
public function getsourcerequetesperso()
{
$codeSociete = $_SESSION['codeSociete'];
$sql = 'call sp_get_sources_requetesperso(?)';
$resultat = $this->executerRequete($sql, array($codeSociete));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getunesourcedonneesrequetesperso($idsourcerequete)
{
$sql = 'call sp_afficher_une_sourcedonnees_requetesperso(?)';
$resultat = $this->executerRequete($sql, array($idsourcerequete));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function enregistrermodifsourcedonneesrequeteperso($idsourcerequete, $sourceDonnees)
{
$user = $_SESSION['login'];
$sql = 'call sp_modifier_sourcedonnees_requetesperso(?, ?, ?)';
$resultat = $this->executerRequete($sql, array($idsourcerequete, $sourceDonnees, $user));
}
public function desactiversourcedonnees($sourceDonnees)
{
$sql = 'call sp_r_desactiver_sourcedonnees_requetesperso(?)';
$this->executerRequete($sql, array($sourceDonnees));
}
public function activersourcedonnees($sourceDonnees)
{
$sql = 'call sp_r_activer_sourcedonnees_requetesperso(?)';
$this->executerRequete($sql, array($sourceDonnees));
}
public function creersourcedonneesrequeteperso($sourceDonnees)
{
$codeSociete = $_SESSION['codeSociete'];
$user = $_SESSION['login'];
$sql = 'call sp_creer_sourcedonnees_requetesperso(?, ?, ?)';
$resultat = $this->executerRequete($sql, array($codeSociete, $sourceDonnees, $user));
}
public function enregistrermodifrequeteperso($idrequete, $codeRequete, $nomRequete, $nomRequeteEng, $descriptionRequete, $sourceDonnees, $ordre)
{
$user = $_SESSION['login'];
$sql = 'call sp_modifier_requeteperso(?, ?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($idrequete, $codeRequete, $nomRequete, $nomRequeteEng, $descriptionRequete,
$sourceDonnees, $ordre, $user));
}
public function getparamrequetesperso($idsourcerequete)
{
$codeSociete = $_SESSION['codeSociete'];
$sql = 'call sp_param_requete_perso_id(?)';
$resultat = $this->executerRequete($sql, array($idsourcerequete));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function reconstruireparamrequeteperso($idsourcerequete)
{
$user = $_SESSION['login'];
$sql = 'call sp_reconstruire_param_requetesperso(?, ?)';
$resultat = $this->executerRequete($sql, array($idsourcerequete, $user));
}
public function getparamrequetesperso_cd($sourceDonnees)
{
$codeSociete = $_SESSION['codeSociete'];
$sql = 'CALL sp_param_requete_perso_cd(?, ?);';
$resultat = $this->executerRequete($sql, array($codeSociete, $sourceDonnees));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getparamrequetesperso_rq($codeRequete)
{
$codeSociete = $_SESSION['codeSociete'];
$sql = 'CALL sp_param_requete_perso_rq(?, ?);';
$resultat = $this->executerRequete($sql, array($codeSociete, $codeRequete));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getsourcedonnees($codeRequete)
{
$codeSociete = $_SESSION['codeSociete'];
$sql = 'select fn_getsourceDonnees(?, ?) as sourceDonnees';
$resultat = $this->executerRequete($sql, array($codeSociete, $codeRequete));
$ligne = $resultat->fetch(PDO::FETCH_ASSOC);
return $ligne['sourceDonnees'];
}
// ICI, ON VA EXECUTER TOUTES LES REQUETES PERSO
public function executerrequeteperso($paramrequetes)
{
$codeRequete = $_SESSION['codeRequete'];
$sourceDonnees = $this->getsourcedonnees($codeRequete);
$nbParams = count($paramrequetes);
if ($nbParams==0)
{
$sql = "call $sourceDonnees();";
$resultat = $this->executerRequete($sql);
}
else
{
$sql = "call $sourceDonnees(?";
$sql .= str_repeat(', ?', $nbParams-1);
$sql .= ');';
$resultat = $this->executerRequete($sql, array_values($paramrequetes));
}
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
}