prestation/Modele/Medecin.php
2025-12-05 10:42:46 +00:00

188 lines
5.7 KiB
PHP
Executable File

<?php
require_once 'Framework/Modele.php';
class Medecin extends Modele {
public function getmedeconspossibles($codePrestataire, $nomsearch, $codeMedecin)
{
$nomsearch = contruireParamLike($nomsearch);
$codeMedecin = contruireParamLike($codeMedecin);
$filtreMedecin = $_SESSION['p_filtreMedecin'];
//var_dump($filtreMedecin);
//die();
if (isset($_SESSION['p_lang']) && $_SESSION['p_lang']=="en_US")
{
$sql = 'call sp_p_medecins_possibles_eng(?, ?, ?, ?)';
}
else
{
$sql = 'call sp_p_medecins_possibles(?, ?, ?, ?)';
}
$medecins = $this->executerRequete($sql, array($codePrestataire, $nomsearch, $codeMedecin, $filtreMedecin));
return $medecins;
}
public function getmedecinsvide() {
$sql = 'call sp_p_medecins_vide()';
$medecins = $this->executerRequete($sql);
return $medecins;
}
public function getMedecins($codeMedecin=null,$nom=null,$prenoms=null) {
$codeMedecin = contruireParamLike($codeMedecin);
$nom = contruireParamLike($nom);
$prenoms = contruireParamLike($prenoms);
$sql = 'SELECT A.*, B.libelle as specialite FROM p_medecin A left join specialite B on (B.codeSpecialite=A.codeSpecialite)
WHERE (A.codeMedecin LIKE ? AND A.nom LIKE ? AND A.prenoms LIKE ?)
order by A.nom, A.prenoms';
$medecins = $this->executerRequete($sql, array($codeMedecin,$nom,$prenoms));
return $medecins;
}
public function getMedecin($id) {
$sql = 'SELECT A.*, B.libelle as specialite FROM p_medecin A
left join specialite B on (B.codeSpecialite=A.codeSpecialite)
WHERE (A.id=?)';
$medecin = $this->executerRequete($sql, array($id));
if ($medecin->rowCount() > 0)
return $medecin->fetch(PDO::FETCH_ASSOC);
else
throw new Exception("Aucun médecin ne correspond à cet id : '$id'");
}
public function ajouter($codeMedecin, $nom, $prenoms, $telephone, $email, $noOrdreMedecin, $codeSpecialite) {
$sql = 'INSERT INTO p_medecin (codeMedecin, nom, prenoms, telephone, email, noOrdreMedecin, codeSpecialite)
VALUES (?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($codeMedecin, $nom, $prenoms, $telephone, $email, $noOrdreMedecin, $codeSpecialite));
}
public function modifier($id, $codeMedecin, $nom, $prenoms, $telephone, $email, $noOrdreMedecin, $codeSpecialite) {
$sql = 'UPDATE p_medecin SET codeMedecin=? , nom=?, prenoms=?, telephone=?, email=?, noOrdreMedecin=? , codeSpecialite=? where (id=?)';
$this->executerRequete($sql, array($codeMedecin, $nom, $prenoms, $telephone, $email, $noOrdreMedecin, $codeSpecialite, $id));
}
public function supprimer($id) {
$sql = 'DELETE FROM p_medecin WHERE (id=?)';
$this->executerRequete($sql, array($id));
}
public function existeligne($codeMedecin) {
$sql = 'select id FROM p_medecin WHERE (codeMedecin=?)';
$resultat = $this->executerRequete($sql, array($codeMedecin));
return ($resultat->rowCount() > 0);
}
public function getpraticiensprestataire($codePrestataire)
{
$filtreMedecin = $_SESSION['p_filtreMedecin'];
if (isset($_SESSION['p_lang']) && $_SESSION['p_lang']=="en_US")
{
$sql = 'call sp_p_praticiens_possibles_eng(?, ?)';
}
else
{
$sql = 'call sp_p_praticiens_possibles(?, ?)';
}
$medecins = $this->executerRequete($sql, array($codePrestataire, $filtreMedecin));
return $medecins->fetchAll(PDO::FETCH_ASSOC);
}
public function getspecialitemedecin($codeMedecin)
{
$sql="SELECT fn_code_specialite_medecin(?) AS codeSpecialite;";
$resultat = $this->executerRequete($sql, array($codeMedecin))->fetch(PDO::FETCH_ASSOC);
return $resultat['codeSpecialite'];
}
/*
public function getactesconsultation($codeSpecialite)
{
$codeSociete = $_SESSION['p_codeSociete'];
$codePrestataire = $_SESSION['p_codePrestataire_C'];
if(isset($_SESSION['p_lang']) && $_SESSION['p_lang']=="en_US")
{
$sql = 'call sp_p_actes_consultation_eng(?, ?);';
}
else
{
$sql = 'call sp_p_actes_consultation(?, ?);';
}
$resultat = $this->executerRequete($sql, array($codeSociete, $codeSpecialite));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
*/
public function getactesconsultation()
{
$codeSociete = $_SESSION['p_codeSociete'];
if(isset($_SESSION['p_lang']) && $_SESSION['p_lang']=="en_US")
{
$sql = 'call sp_p_actes_consultation_eng(?);';
}
else
{
$sql = 'call sp_p_actes_consultation(?);';
}
$resultat = $this->executerRequete($sql, array($codeSociete));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function specialiteEstPossible($codeSpecialite)
{
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$sql = "SELECT fn_specialite_possible_beneficiaire(?, ?) AS specialiteEstPossible;";
$resultat = $this->executerRequete($sql, array($idBeneficiaire, $codeSpecialite))->fetch(PDO::FETCH_ASSOC);
return $resultat['specialiteEstPossible'];
}
public function getpraticiensprestataireconsultation($codePrestataire, $codeSpecialite)
{
$filtreMedecin = $_SESSION['p_filtreMedecin'];
if (isset($_SESSION['p_lang']) && $_SESSION['p_lang']=="en_US")
{
$sql = 'call sp_p_praticiens_consultation_eng(?, ?, ?)';
}
else
{
$sql = 'call sp_p_praticiens_consultation(?, ?, ?)';
}
$medecins = $this->executerRequete($sql, array($codePrestataire, $filtreMedecin, $codeSpecialite));
return $medecins->fetchAll(PDO::FETCH_ASSOC);
}
}