64 lines
2.7 KiB
PHP
64 lines
2.7 KiB
PHP
<?php
|
|
require_once 'Framework/Modele.php';
|
|
|
|
class Profil extends Modele {
|
|
public function getProfils($codeProfil=null,$libelle=null) {
|
|
$codeProfil = contruireParamLike($codeProfil);
|
|
$libelle = contruireParamLike($libelle);
|
|
|
|
$sql = 'SELECT A.id, A.codeSociete, A.codeProfil, A.libelle, A.codeProfilSysteme, B.libelle as profilSysteme
|
|
FROM profil A left join profilsysteme B on (B.codeProfilSysteme=A.codeProfilSysteme)
|
|
WHERE (A.codeSociete=? AND A.codeProfil LIKE ? AND A.libelle LIKE ?) order by A.libelle';
|
|
|
|
$profils = $this->executerRequete($sql, array($_SESSION['codeSociete'],$codeProfil,$libelle));
|
|
return $profils;
|
|
}
|
|
public function getProfil($id) {
|
|
$sql = 'SELECT A.id, A.codeSociete, A.codeProfil, A.libelle, A.codeProfilSysteme, B.libelle as profilSysteme
|
|
FROM profil A left join profilsysteme B on (B.codeProfilSysteme=A.codeProfilSysteme)
|
|
WHERE (A.codeSociete=?) AND (A.id=?)';
|
|
|
|
$profil = $this->executerRequete($sql, array($_SESSION['codeSociete'], $id));
|
|
if ($profil->rowCount() > 0)
|
|
return $profil->fetch();
|
|
else
|
|
throw new Exception("Aucun profil ne correspond à cet id : '$id'");
|
|
}
|
|
public function getNombreProfil()
|
|
{
|
|
$sql = 'select count(*) as nbProfil FROM profil A WHERE (A.codeSociete=?)';
|
|
$resultat = $this->executerRequete($sql, array($_SESSION['codeSociete']));
|
|
$ligne = $resultat->fetch();
|
|
return $ligne['nbProfil'];
|
|
}
|
|
|
|
public function ajouter($codeSociete, $codeProfil, $libelle, $codeProfilSysteme) {
|
|
$sql = 'INSERT INTO profil (codeSociete, codeProfil, libelle, codeProfilSysteme) VALUES (?, ?, ?, ?)';
|
|
$this->executerRequete($sql, array($codeSociete, $codeProfil, $libelle, $codeProfilSysteme));
|
|
}
|
|
|
|
public function modifier($id, $codeProfil, $libelle, $codeProfilSysteme) {
|
|
$sql = 'UPDATE profil SET codeProfil=?, libelle=?, codeProfilSysteme=? where (id=?)';
|
|
$this->executerRequete($sql, array($codeProfil, $libelle, $codeProfilSysteme, $id));
|
|
}
|
|
|
|
public function supprimer($id) {
|
|
$sql = 'DELETE FROM profil WHERE (id=?)';
|
|
$this->executerRequete($sql, array($id));
|
|
}
|
|
|
|
public function existeligne($codeProfil) {
|
|
$sql = 'select id FROM profil WHERE (codeSociete=?) and (codeProfil=?)';
|
|
$resultat = $this->executerRequete($sql, array($_SESSION['codeSociete'],$codeProfil));
|
|
return ($resultat->rowCount() > 0);
|
|
}
|
|
|
|
public function getListe() {
|
|
$sql = 'SELECT codeProfil as code, libelle
|
|
FROM profil WHERE (codeSociete=?) order by libelle';
|
|
|
|
$liste = $this->executerRequete($sql, array($_SESSION['codeSociete']));
|
|
return $liste->fetchAll(PDO::FETCH_ASSOC);
|
|
}
|
|
|
|
} |