71 lines
3.3 KiB
PHP
Executable File
71 lines
3.3 KiB
PHP
Executable File
<?php
|
|
require_once 'Framework/Modele.php';
|
|
|
|
class Localite extends Modele {
|
|
public function getLocalites($codeLocalite=null,$libelle=null,$ville=null) {
|
|
$codeLocalite = contruireParamLike($codeLocalite);
|
|
$libelle = contruireParamLike($libelle);
|
|
$ville = contruireParamLike($ville);
|
|
|
|
$sql = 'SELECT A.id, A.codeSociete, A.codeLocalite, A.libelle, A.codePays, A.codeVille,
|
|
B.libelle as pays, C.libelle as libelleVille
|
|
FROM localite A left join pays B on (B.codeSociete=A.codeSociete AND B.codePays=A.codePays)
|
|
left join ville C on (C.codeSociete=A.codeSociete AND C.codeVille=A.codeVille)
|
|
WHERE (A.codeSociete=? AND A.codeLocalite LIKE ? AND A.libelle LIKE ? AND C.libelle LIKE ?) order by A.libelle';
|
|
|
|
$localite = $this->executerRequete($sql, array($_SESSION['codeSociete'],$codeLocalite,$libelle,$ville));
|
|
return $localite;
|
|
}
|
|
public function getLocalite($id) {
|
|
$sql = 'SELECT A.id, A.codeSociete, A.codeLocalite, A.libelle, A.codePays, A.codeVille,
|
|
B.libelle as pays, C.libelle as libelleVille
|
|
FROM localite A left join pays B on (B.codeSociete=A.codeSociete AND B.codePays=A.codePays)
|
|
left join ville C on (C.codeSociete=A.codeSociete AND C.codeVille=A.codeVille)
|
|
WHERE (A.codeSociete=?) AND (A.id=?)';
|
|
|
|
$localite = $this->executerRequete($sql, array($_SESSION['codeSociete'], $id));
|
|
if ($localite->rowCount() > 0)
|
|
return $localite->fetch();
|
|
else
|
|
throw new Exception("Aucune localité ne correspond à cet id : '$id'");
|
|
}
|
|
public function getNombreLocalite()
|
|
{
|
|
$sql = 'select count(*) as nbLocalite FROM localite A WHERE (A.codeSociete=?)';
|
|
$resultat = $this->executerRequete($sql, array($_SESSION['codeSociete']));
|
|
$ligne = $resultat->fetch();
|
|
return $ligne['nbLocalite'];
|
|
}
|
|
|
|
public function ajouter($codeSociete, $codeLocalite, $libelle, $codePays, $codeVille) {
|
|
$sql = 'INSERT INTO localite (codeSociete, codeLocalite, libelle, codePays, codeVille) VALUES (?, ?, ?, ?, ?)';
|
|
$this->executerRequete($sql, array($codeSociete, $codeLocalite, $libelle, $codePays, $codeVille));
|
|
}
|
|
|
|
public function modifier($id, $codeLocalite, $libelle, $codePays, $codeVille) {
|
|
$sql = 'UPDATE localite SET codeLocalite=?, libelle=?, codePays=?, codeVille=? where (id=?)';
|
|
$this->executerRequete($sql, array($codeLocalite, $libelle, $codePays, $codeVille, $id));
|
|
}
|
|
|
|
public function supprimer($id) {
|
|
$sql = 'DELETE FROM localite WHERE (id=?)';
|
|
$this->executerRequete($sql, array($id));
|
|
}
|
|
|
|
public function existeligne($codeLocalite) {
|
|
$sql = 'select id FROM localite WHERE (codeSociete=?) and (codeLocalite=?)';
|
|
$resultat = $this->executerRequete($sql, array($_SESSION['codeSociete'],$codeLocalite));
|
|
return ($resultat->rowCount() > 0);
|
|
}
|
|
|
|
public function getListe($codePays=null, $codeVille=null) {
|
|
$codePays = contruireParam($codePays);
|
|
$codeVille = contruireParam($codeVille);
|
|
$sql = 'SELECT codeLocalite as code, libelle FROM localite
|
|
WHERE (codeSociete=? AND codePays=? AND codeVille=?) order by libelle';
|
|
|
|
$liste = $this->executerRequete($sql, array($_SESSION['codeSociete'], $codePays, $codeVille));
|
|
return $liste->fetchAll(PDO::FETCH_ASSOC);
|
|
}
|
|
|
|
} |