production/Modele/Prestataire.php
2025-12-01 16:12:12 +00:00

972 lines
39 KiB
PHP
Executable File

<?php
require_once 'Framework/Modele.php';
class Prestataire extends Modele {
public function getPrestataireCode($codePrestataire)
{
$sql = "SELECT * from vw_r_prestataire WHERE codePrestataire=?";
$resultat = $this->executerRequete($sql, array($codePrestataire));
$context = $resultat->fetch(PDO::FETCH_ASSOC);
if($context){
$_SESSION['codePrestataire_C'] = $context['codePrestataire'];
$_SESSION['prestataire_C'] = $context['prestataire'];
$_SESSION['categoriePresataire_C'] = $context['categoriePresataire'];
$_SESSION['codeTypePrestataire_C'] = $context['codeTypePrestataire'];
$_SESSION['codeTypeDecompte_C'] = $context['codeTypeDecompte'];
$_SESSION['typeprestataire_C'] = $context['typeprestataire'];
$_SESSION['reseausoinPrestataire_C'] = $context['reseausoinPrestataire'];
$_SESSION['conventionne_C'] = $context['conventionne'];
$_SESSION['estconventionne_C'] = $context['estconventionne'];
$_SESSION['adresseGeoPrestataire_C'] = $context['adresseGeoPrestataire'];
$_SESSION['adressePostPrestataire_C'] = $context['adressePostPrestataire'];
$_SESSION['telephoneFixePrestataire_C'] = $context['telephoneFixePrestataire'];
$_SESSION['telephonePortablePrestataire_C'] = $context['telephonePortablePrestataire'];
$_SESSION['faxPrestatairePrestataire_C'] = $context['faxPrestatairePrestataire'];
$_SESSION['emailPrestataire_C'] = $context['emailPrestataire'];
$_SESSION['emailGestionPrestataire_C'] = $context['emailGestionPrestataire'];
$_SESSION['nomResponsablePrestataire_C'] = $context['nomResponsablePrestataire'];
$_SESSION['contactResponsablePrestataire_C'] = $context['contactResponsablePrestataire'];
$_SESSION['emailResponsablePrestataire_C'] = $context['emailResponsablePrestataire'];
$_SESSION['nomInterlocuteurPrestataire_C'] = $context['nomInterlocuteurPrestataire'];
$_SESSION['contactInterlocuteurPrestataire_C'] = $context['contactInterlocuteurPrestataire'];
$_SESSION['emailInterlocuteurPrestataire_C'] = $context['emailInterlocuteurPrestataire'];
$_SESSION['codeTarifMedicament_C'] = $context['codeTarifMedicament'];
$_SESSION['codeTarifOptique_C'] = $context['codeTarifOptique'];
$_SESSION['codeTarifActe_C'] = $context['codeTarifActe'];
}
return $context;
}
public function getPrestataires($codePrestataire=null,$libelle=null) {
$codePrestataire = contruireParamLike($codePrestataire);
$libelle = contruireParamLike($libelle);
$sql = 'SELECT A.id, A.codeSociete, A.codeTypePrestataire, B.libelle as typePrestataire, A.codePrestataire, A.libelle,
A.codePays, C.libelle as pays, A.codeVille, D.libelle as ville, A.codeLocalite, E.libelle as localite,
A.adresseGeo, A.adressePost, A.telephoneFixe, A.telephonePortable, A.email, A.nomResponsable,
A.contactResponsable, A.emailResponsable, A.nomInterlocuteur, A.contactInterlocuteur, A.emailInterlocuteur,
numeroCompte, A.codeGestionnaire, concat(F.nom," ",F.prenoms) as gestionnaire, A.codeNaturePrestataire
FROM prestataire A
left join typeprestataire B on (B.codeSociete=A.codeSociete AND B.codeTypePrestataire=A.codeTypePrestataire)
left join pays C on (C.codeSociete=A.codeSociete AND C.codePays=A.codePays)
left join ville D on (D.codeSociete=A.codeSociete AND D.codeVille=A.codeVille)
left join localite E on (E.codeSociete=A.codeSociete AND E.codeLocalite=A.codeLocalite)
left join gestionnaire F on (F.codeSociete=A.codeSociete AND F.codeGestionnaire=A.codeGestionnaire)
WHERE (A.codeSociete=? AND A.codePrestataire LIKE ? AND A.libelle LIKE ?) order by A.libelle';
//numeroCompte, A.codeGestionnaire, concat(F.nom," ",F.prenoms) as gestionnaire
$prestataires = $this->executerRequete($sql, array($_SESSION['codeSociete'],$codePrestataire,$libelle));
return $prestataires;
}
public function getPrestataire($id) {
$sql = 'SELECT A.id, A.codeSociete, A.codeTypePrestataire, B.libelle as typePrestataire, A.codePrestataire, A.libelle,
A.codePays, C.libelle as pays, A.codeVille, D.libelle as ville, A.codeLocalite, E.libelle as localite,
A.adresseGeo, A.adressePost, A.telephoneFixe, A.telephonePortable, A.email, A.nomResponsable,
A.contactResponsable, A.emailResponsable, A.nomInterlocuteur, A.contactInterlocuteur, A.emailInterlocuteur,
numeroCompte, A.codeGestionnaire, concat(F.nom," ",F.prenoms) as gestionnaire, A.codeNaturePrestataire
FROM prestataire A
left join typeprestataire B on (B.codeSociete=A.codeSociete AND B.codeTypePrestataire=A.codeTypePrestataire)
left join pays C on (C.codeSociete=A.codeSociete AND C.codePays=A.codePays)
left join ville D on (D.codeSociete=A.codeSociete AND D.codeVille=A.codeVille)
left join localite E on (E.codeSociete=A.codeSociete AND E.codeLocalite=A.codeLocalite)
left join gestionnaire F on (F.codeSociete=A.codeSociete AND F.codeGestionnaire=A.codeGestionnaire)
WHERE (A.codeSociete=?) AND (A.id=?)';
$prestataire = $this->executerRequete($sql, array($_SESSION['codeSociete'], $id));
return $prestataire->fetch(PDO::FETCH_ASSOC);
}
public function getnombrePrestataire()
{
$sql = 'select count(*) as nbPrestataire FROM prestataire A WHERE (A.codeSociete=?)';
$resultat = $this->executerRequete($sql, array($_SESSION['codeSociete']));
$ligne = $resultat->fetch(PDO::FETCH_ASSOC);
return $ligne['nbPrestataire'];
}
public function ajouter($codeSociete, $codeTypePrestataire, $codePrestataire, $libelle, $codePays, $codeVille, $codeLocalite,
$adresseGeo, $adressePost, $telephoneFixe, $telephonePortable, $email, $nomResponsable, $contactResponsable,
$emailResponsable, $nomInterlocuteur, $contactInterlocuteur, $emailInterlocuteur,$numeroCompte, $codeGestionnaire, $codeNaturePrestataire)
{
$sql = 'INSERT INTO prestataire (codeSociete, codeTypePrestataire, codePrestataire, libelle, codePays, codeVille, codeLocalite,
adresseGeo, adressePost, telephoneFixe, telephonePortable, email, nomResponsable, contactResponsable, emailResponsable,
nomInterlocuteur, contactInterlocuteur, emailInterlocuteur, numeroCompte, codeGestionnaire, codeNaturePrestataire)
VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)';
$this->executerRequete($sql, array($codeSociete, $codeTypePrestataire, $codePrestataire, $libelle, $codePays, $codeVille, $codeLocalite,
$adresseGeo, $adressePost, $telephoneFixe, $telephonePortable, $email, $nomResponsable, $contactResponsable,
$emailResponsable, $nomInterlocuteur, $contactInterlocuteur, $emailInterlocuteur,$numeroCompte, $codeGestionnaire, $codeNaturePrestataire));
}
public function modifier($id, $codeTypePrestataire, $codePrestataire, $libelle, $codePays, $codeVille, $codeLocalite,
$adresseGeo, $adressePost, $telephoneFixe, $telephonePortable, $email, $nomResponsable, $contactResponsable,
$emailResponsable, $nomInterlocuteur, $contactInterlocuteur, $emailInterlocuteur,$numeroCompte, $codeGestionnaire, $codeNaturePrestataire) {
$sql = 'UPDATE prestataire SET codeTypePrestataire=?, codePrestataire=?, libelle=?, codePays=?, codeVille=?, codeLocalite=?,
adresseGeo=?, adressePost=?, telephoneFixe=?, telephonePortable=?, email=?, nomResponsable=?, contactResponsable=?, emailResponsable=?,
nomInterlocuteur=?, contactInterlocuteur=?, emailInterlocuteur=?, numeroCompte=?, codeGestionnaire=?, codeNaturePrestataire=?
where (id=?)';
$this->executerRequete($sql, array($codeTypePrestataire, $codePrestataire, $libelle, $codePays, $codeVille, $codeLocalite,
$adresseGeo, $adressePost, $telephoneFixe, $telephonePortable, $email, $nomResponsable, $contactResponsable,
$emailResponsable, $nomInterlocuteur, $contactInterlocuteur, $emailInterlocuteur,$numeroCompte, $codeGestionnaire, $codeNaturePrestataire, $id));
}
public function supprimer($id) {
$sql = 'DELETE FROM prestataire WHERE (id=?)';
$this->executerRequete($sql, array($id));
}
public function existeligne($codePrestataire) {
$sql = 'select id FROM prestataire WHERE (codeSociete=?) and (codePrestataire=?)';
$resultat = $this->executerRequete($sql, array($_SESSION['codeSociete'],$codePrestataire));
return ($resultat->rowCount() > 0);
}
public function getListe() {
$sql = 'SELECT codePrestataire as `code`, libelle FROM prestataire WHERE (codeSociete=?) order by libelle';
$liste = $this->executerRequete($sql,array($_SESSION['codeSociete']));
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getListeTarif() {
$sql = 'SELECT codePrestataire as `code`, CONCAT (libelle," (",codeTarifActe,")") AS libelle
FROM prestataire WHERE (codeSociete=?) AND `codeTypePrestataire` !="PHA" AND `codeTypePrestataire` !="OPT"
order by libelle';
$liste = $this->executerRequete($sql,array($_SESSION['codeSociete']));
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getListePrestataireTarif() {
$sql = 'SELECT codePrestataire as `code`, libelle
FROM prestataire WHERE (codeSociete=?) AND codeTarifActe NOT IN ("","TFA0019","TFA0020")
and `codeTypePrestataire` !="PHA" and `codeTypePrestataire` !="OPT"
order by libelle';
$liste = $this->executerRequete($sql,array($_SESSION['codeSociete']));
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getListeTypePrestataire($codeTypePrestataire) {
$sql = 'SELECT codePrestataire as `code`, libelle FROM prestataire
WHERE (codeSociete=?) and (codeTypePrestataire=?)
order by libelle';
$liste = $this->executerRequete($sql,array($_SESSION['codeSociete'], $codeTypePrestataire));
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getListePharmacie() {
$sql = 'SELECT codePrestataire as `code`, libelle FROM prestataire
WHERE (codeTypePrestataire in ("PHA", "CSO"))
order by libelle';
$liste = $this->executerRequete($sql);
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getPrestataireLettreCle() {
$sql = 'SELECT codePrestataire as `code`, libelle FROM prestataire
WHERE (codeTypePrestataire !="PHA" and codeTypePrestataire !="OPT")
order by libelle';
$liste = $this->executerRequete($sql);
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getListeOpticien() {
$sql = 'SELECT codePrestataire as `code`, libelle FROM prestataire
WHERE (codeTypePrestataire = "OPT")
order by libelle';
$liste = $this->executerRequete($sql);
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getListeTypePrestataireBon() {
$sql = 'SELECT A.codePrestataire as `code`, A.libelle FROM prestataire A
join p_typeprestataire B on (B.codeTypePrestataire=A.codeTypePrestataire)
where B.gestionBon="1" order by 2;';
$liste = $this->executerRequete($sql);
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getemailGestionPrestataire($codePrestataire)
{
$codeSociete = $_SESSION['codeSociete'];
$sql = 'select fn_getemailGestionPrestataire(?, ?) as emailGestionPrestataire';
$resultat = $this->executerRequete($sql, array($codeSociete, $codePrestataire));
$ligne = $resultat->fetch(PDO::FETCH_ASSOC);
return $ligne['emailGestionPrestataire'];
}
public function getEmailPrestataire($codePrestataire)
{
$codeSociete = $_SESSION['codeSociete'];
$sql = 'SELECT ifnull(emailGestionPrestataire, "kanelazeni@gmail.com") as emailGestionPrestataire ,
libelle FROM prestataire WHERE (codeSociete=?) and (codePrestataire=?)';
$resultat = $this->executerRequete($sql, array($codeSociete, $codePrestataire));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function getprestatairelike($codePrestataire, $nomsearch)
{
$nomsearch = contruireParamLike($nomsearch);
$codePrestataire = contruireParamLike($codePrestataire);
//$codeReseau = $_SESSION['codeReseau'];
//$codeSociete = $_SESSION['codeSociete'];
$sql = 'call sp_r_prestataires_like(?, ?)';
$prestataires = $this->executerRequete($sql, array($codePrestataire, $nomsearch));
return $prestataires;
}
public function getprestataireenpluslike($codePrestataire, $nomsearch)
{
$nomsearch = contruireParamLike($nomsearch);
$codePrestataire = contruireParamLike($codePrestataire);
$codeReseau = $_SESSION['codeReseau'];
$codeSociete = $_SESSION['codeSociete'];
$idCollege = $_SESSION['idCollege'];
$sql = 'call sp_r_prestatairesenplus_like(?, ?, ?, ?, ?)';
$prestataires = $this->executerRequete($sql, array($codeSociete, $codeReseau, $codePrestataire, $idCollege, $nomsearch));
return $prestataires;
}
public function getprestataireenmoinslike($codePrestataire, $nomsearch)
{
$nomsearch = contruireParamLike($nomsearch);
$codePrestataire = contruireParamLike($codePrestataire);
$codeReseau = $_SESSION['codeReseau'];
$codeSociete = $_SESSION['codeSociete'];
$idCollege = $_SESSION['idCollege'];
$sql = 'call sp_r_prestatairesenmoins_like(?, ?, ?, ?, ?)';
$prestataires = $this->executerRequete($sql, array($codeSociete, $codeReseau, $codePrestataire, $idCollege, $nomsearch));
return $prestataires;
}
public function getprestatairesvide()
{
$sql = 'call sp_r_prestataires_vide()';
$prestataires = $this->executerRequete($sql);
return $prestataires;
}
public function getprestataireparametrage($codeTypePrestataire, $categoriePresataire, $libelle, $codePays, $codeVille ,$codeLocalite)
{
$codeTypePrestataire = contruireParamLike($codeTypePrestataire);
$categoriePresataire = contruireParamLike($categoriePresataire);
$libelle = contruireParamLike($libelle);
$codePays = contruireParamLike($codePays);
$codeVille = contruireParamLike($codeVille);
$codeLocalite = contruireParamLike($codeLocalite);
//var_dump($codeTypePrestataire.' '.$categoriePresataire.' '.$libelle.' '.$codePays.' '.$codeLocalite);
//die();
// $sql = 'call sp_liste_prestataires(?, ?, ?)';
$sql = 'call sp_liste_prestataires_localite(?, ?, ?, ?, ?, ?)';
$resultat = $this->executerRequete($sql, array($codeTypePrestataire, $categoriePresataire, $libelle, $codePays, $codeVille ,$codeLocalite));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getprestataireparlot($codeReseau, $codeTypePrestataire, $categoriePresataire, $libelle, $codePays, $codeVille ,$codeLocalite)
{
$codeSociete = $_SESSION['codeSociete'];
$codeTypePrestataire = contruireParamLike($codeTypePrestataire);
$categoriePresataire = contruireParamLike($categoriePresataire);
$libelle = contruireParamLike($libelle);
$codePays = contruireParamLike($codePays);
$codeVille = contruireParamLike($codeVille);
$codeLocalite = contruireParamLike($codeLocalite);
$user = $_SESSION["login"];
$idSaisie = $_SESSION["idSaisie"];
$sql = 'call sp_liste_prestataire_par_lot(?, ?, ?, ?, ?, ?, ?, ?, ?, ?);';
$resultat = $this->executerRequete($sql, array($codeSociete, $codeReseau, $codeTypePrestataire, $categoriePresataire, $libelle, $codePays,
$codeVille , $codeLocalite, $user, $idSaisie));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getprestatairegroupe($codeGroupePrestataire, $codeTypePrestataire, $categoriePresataire, $libelle, $codePays, $codeVille ,$codeLocalite)
{
$codeSociete = $_SESSION['codeSociete'];
$codeTypePrestataire = contruireParamLike($codeTypePrestataire);
$categoriePresataire = contruireParamLike($categoriePresataire);
$libelle = contruireParamLike($libelle);
$codePays = contruireParamLike($codePays);
$codeVille = contruireParamLike($codeVille);
$codeLocalite = contruireParamLike($codeLocalite);
/*
var_dump('codeSociete = '.$codeSociete);
var_dump('codeGroupePrestataire = '.$codeGroupePrestataire);
var_dump('codeTypePrestataire = '.$codeTypePrestataire);
var_dump('categoriePresataire = '.$categoriePresataire);
var_dump('libelle = '.$libelle);
var_dump('codePays = '.$codePays);
var_dump('codeVille = '.$codeVille);
var_dump('codeLocalite = '.$codeLocalite);
*/
$sql = 'call sp_liste_prestataires_groupe(?, ?, ?, ?, ?, ?, ?, ?)';
$resultat = $this->executerRequete($sql, array($codeSociete, $codeGroupePrestataire, $codeTypePrestataire, $categoriePresataire, $libelle, $codePays,
$codeVille , $codeLocalite));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getid($id){
$sql = "SELECT *
FROM prestataire
WHERE (id = ?);";
$resultat = $this->executerRequete($sql, array($id));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function getidTemp($id){
$sql = "SELECT *
FROM detailreseausoins_temp
WHERE (id = ?);";
$resultat = $this->executerRequete($sql, array($id));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function existeSelection($codeReseau) {
$user = $_SESSION["login"];
$idSaisie = $_SESSION["idSaisie"];
$choix = "1";
$sql = "SELECT id FROM detailreseausoins_temp WHERE (codeReseau=? AND codeUtilisateur = ? AND idSaisie = ? AND choix = ? AND filtre='1');";
$resultat = $this->executerRequete($sql, array($codeReseau, $user, $idSaisie, $choix));
return ($resultat->rowCount() > 0);
}
public function selectionnerun($id){
$choix = "1";
$sql = "CALL sp_selection_prestataire_reseau(?, ?);";
$this->executerRequete($sql, array($id,$choix));
}
public function deselectionnerun($id){
$choix = "0";
$sql = "CALL sp_selection_prestataire_reseau(?, ?);";
$this->executerRequete($sql, array($id,$choix));
}
public function selectionnertout($codeReseau)
{
$user = $_SESSION["login"];
$idSaisie = $_SESSION["idSaisie"];
$choix = "1";
$sql = "CALL sp_selection_prestataire_reseau_tous(?, ?, ?, ?);";
$this->executerRequete($sql, array($codeReseau, $user, $idSaisie, $choix));
}
public function selectionnertoutgroupe($codeGroupePrestataire, $codeTypePrestataire, $categoriePresataire, $libelle, $codePays, $codeVille ,$codeLocalite)
{
$codeSociete = $_SESSION['codeSociete'];
$codeTypePrestataire = contruireParamLike($codeTypePrestataire);
$categoriePresataire = contruireParamLike($categoriePresataire);
$libelle = contruireParamLike($libelle);
$codePays = contruireParamLike($codePays);
$codeVille = contruireParamLike($codeVille);
$codeLocalite = contruireParamLike($codeLocalite);
$sql = 'call sp_selectionne_tous_prestataires_groupe(?, ?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($codeSociete, $codeGroupePrestataire, $codeTypePrestataire, $categoriePresataire, $libelle, $codePays,
$codeVille , $codeLocalite));
}
public function countPrestataireCoches($codeReseau){
$user = $_SESSION["login"];
$idSaisie = $_SESSION["idSaisie"];
$choix = "1";
$sql = 'SELECT COUNT(*) nbcoche FROM detailreseausoins_temp
WHERE (codeReseau=? AND codeUtilisateur = ? AND idSaisie = ? AND choix = ? AND filtre="1");';
$resultat = $this->executerRequete($sql, array($codeReseau, $user, $idSaisie, $choix));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function countPrestataireGroupeCoches(){
$codeSociete = $_SESSION['codeSociete'];
$sql = 'SELECT COUNT(*) nbcoche FROM prestatairesregroupes_temp
WHERE codeSociete=?;';
$resultat = $this->executerRequete($sql, array($codeSociete));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function deselectionnertout($codeReseau)
{
$user = $_SESSION["login"];
$idSaisie = $_SESSION["idSaisie"];
$choix = "0";
$sql = "CALL sp_selection_prestataire_reseau_tous(?, ?, ?, ?);";
$this->executerRequete($sql, array($codeReseau, $user, $idSaisie, $choix));
}
public function getunprestataire($idPrestataire)
{
$sql = 'call sp_afficher_un_prestataire(?)';
$resultat = $this->executerRequete($sql, array($idPrestataire));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function enregistrermodif($idPrestataire, $libelle, $codeTypePrestataire, $categoriePresataire, $codeTarifActe,
$codeTarifMedicament, $codeTarifOptique, $codePays, $villeSignature, $codeTypeDecompte, $adresseGeo, $numeroCompte,
$adressePost, $conventionne, $gestionreseau, $emailGestionPrestataire, $codeBanque, $codeBanqueInterne, $codeGuichet,
$numeroCompteBancaire, $cleRib, $iban, $intituleCompteBancaire, $codeVille, $codeLocalite, $smsGestionPrestataire,
$registreCommerce, $codeLanguePrestataire, $nomResponsable, $nomInterlocuteur, $telephoneFixe, $faxPrestataire,
$telephonePortable, $contactInterlocuteur, $centreReference, $appliquerTarifNuit, $latitude, $longitude, $accesAjoutPh,
$ajoutPrescription, $interdirVentePartielleMedicament, $filtreMedecin, $codeModeBiometrie, $pharmacieInterne, $optiqueInterne,
$appliquerTarifPrestataire, $filtrerIp, $activerOtp, $autoriserUnBonPrincipal, $prefixePaiementMobile, $mobilePaiement)
{
$user = $_SESSION['login'];
$sql = 'call sp_modifier_prestataire(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($idPrestataire, $libelle, $codeTypePrestataire, $categoriePresataire, $codeTarifActe,
$codeTarifMedicament, $codeTarifOptique, $codePays, $villeSignature, $codeTypeDecompte, $adresseGeo, $numeroCompte,
$adressePost, $conventionne, $gestionreseau, $emailGestionPrestataire, $codeBanque, $codeBanqueInterne, $codeGuichet,
$numeroCompteBancaire, $cleRib, $iban, $intituleCompteBancaire, $codeVille, $codeLocalite, $smsGestionPrestataire,
$registreCommerce, $codeLanguePrestataire, $nomResponsable, $nomInterlocuteur, $telephoneFixe, $faxPrestataire,
$telephonePortable, $contactInterlocuteur, $centreReference, $appliquerTarifNuit, $latitude, $longitude, $accesAjoutPh,
$ajoutPrescription, $interdirVentePartielleMedicament, $user, $filtreMedecin, $codeModeBiometrie, $pharmacieInterne, $optiqueInterne,
$appliquerTarifPrestataire, $filtrerIp, $activerOtp, $autoriserUnBonPrincipal, $prefixePaiementMobile, $mobilePaiement));
}
public function majcomptebancaire($codePrestataire, $codeBanque, $codeBanqueInterne, $codeGuichet, $numeroCompteBancaire, $cleRib, $iban, $intituleCompteBancaire)
{
$user = $_SESSION['login'];
$sql = 'call sp_maj_compte_bancaire_prestataire(?, ?, ?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($codePrestataire, $codeBanque, $codeBanqueInterne, $codeGuichet, $numeroCompteBancaire, $cleRib, $iban, $intituleCompteBancaire, $user));
}
public function getusersprestataire($codePrestataire)
{
$sql = 'call sp_get_users_prestataire(?)';
$resultat = $this->executerRequete($sql, array($codePrestataire));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getunprestatairebycode($codePrestataire)
{
$sql = 'select * from prestataire
where (codePrestataire=?)';
$resultat = $this->executerRequete($sql, array($codePrestataire));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function reinitpaswd($codeUtilisateur)
{
$sql = 'call sp_r_reinit_utilisateur_prestataire(?)';
$this->executerRequete($sql, array($codeUtilisateur));
}
public function desactiver($codeUtilisateur)
{
$sql = 'call sp_r_desactiver_utilisateur_prestataire(?)';
$this->executerRequete($sql, array($codeUtilisateur));
}
public function activer($codeUtilisateur)
{
$sql = 'call sp_r_activer_utilisateur_prestataire(?)';
$this->executerRequete($sql, array($codeUtilisateur));
}
public function listemailprestataire()
{
$sql = "select codePrestataire, libelle, email from prestataire where (email>' ') order by codePrestataire;";
$resultat = $this->executerRequete($sql);
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getprestataireparametrageexport($codeTypePrestataire, $categoriePresataire, $libelle,
$codePays, $codeVille ,$codeLocalite)
{
$codeTypePrestataire = contruireParamLike($codeTypePrestataire);
$categoriePresataire = contruireParamLike($categoriePresataire);
$libelle = contruireParamLike($libelle);
$codePays = contruireParamLike($codePays);
$codeVille = contruireParamLike($codeVille);
$codeLocalite = contruireParamLike($codeLocalite);
$sql = 'call sp_liste_prestataires_export(?, ?, ?, ?, ?, ?)';
//var_dump(array($codeTypePrestataire, $categoriePresataire, $libelle, $codePays, $codeVille ,$codeLocalite));
//die();
$resultat = $this->executerRequete($sql, array($codeTypePrestataire, $categoriePresataire, $libelle, $codePays, $codeVille ,$codeLocalite));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getprestataireactifparametrageexport($codeTypePrestataire, $categoriePresataire, $libelle)
{
$codeTypePrestataire = contruireParamLike($codeTypePrestataire);
$categoriePresataire = contruireParamLike($categoriePresataire);
$libelle = contruireParamLike($libelle);
$sql = 'call sp_liste_prestataires_actif_export(?, ?, ?)';
$resultat = $this->executerRequete($sql, array($codeTypePrestataire, $categoriePresataire, $libelle));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function creerprestataire(
$libelle, $codeTypePrestataire, $categoriePresataire, $codeTarifActe,
$codeTarifMedicament, $codeTarifOptique, $codePays, $villeSignature,
$codeTypeDecompte, $adresseGeo, $numeroCompte, $adressePost,
$conventionne, $gestionreseau, $emailGestionPrestataire, $codeBanque,
$codeBanqueInterne, $codeGuichet, $numeroCompteBancaire, $cleRib,
$iban, $intituleCompteBancaire, $codeVille, $codeLocalite,
$smsGestionPrestataire, $registreCommerce, $codeLanguePrestataire, $nomResponsable,
$nomInterlocuteur, $telephoneFixe, $faxPrestataire, $telephonePortable,
$contactInterlocuteur, $centreReference, $appliquerTarifNuit, $latitude,
$longitude, $accesAjoutPh, $ajoutPrescription, $interdirVentePartielleMedicament,
$filtreMedecin, $codeModeBiometrie, $pharmacieInterne, $optiqueInterne,
$appliquerTarifPrestataire, $filtrerIp, $activerOtp, $autoriserUnBonPrincipal,
$prefixePaiementMobile, $mobilePaiement)
{
$codeSociete = $_SESSION['codeSociete'];
$user = $_SESSION['login'];
$sql = 'call sp_creer_prestataire(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);';
$resultat = $this->executerRequete($sql, array($codeSociete,
$libelle, $codeTypePrestataire, $categoriePresataire, $codeTarifActe,
$codeTarifMedicament, $codeTarifOptique, $codePays, $villeSignature,
$codeTypeDecompte, $adresseGeo, $numeroCompte, $adressePost,
$conventionne, $gestionreseau, $emailGestionPrestataire, $codeBanque,
$codeBanqueInterne, $codeGuichet, $numeroCompteBancaire, $cleRib,
$iban, $intituleCompteBancaire, $codeVille, $codeLocalite,
$smsGestionPrestataire, $registreCommerce, $codeLanguePrestataire, $nomResponsable,
$nomInterlocuteur, $telephoneFixe, $faxPrestataire, $telephonePortable,
$contactInterlocuteur, $centreReference, $appliquerTarifNuit, $latitude,
$longitude, $accesAjoutPh, $ajoutPrescription, $interdirVentePartielleMedicament,
$user, $filtreMedecin, $codeModeBiometrie, $pharmacieInterne, $optiqueInterne,
$appliquerTarifPrestataire, $filtrerIp, $activerOtp, $autoriserUnBonPrincipal,
$prefixePaiementMobile, $mobilePaiement));
$ligne = $resultat->fetch(PDO::FETCH_ASSOC);
return $ligne['idPrestataire'];
}
public function creeruserprestataire($nom, $prenoms, $telephone, $email, $motPass, $codeLangue, $actVisible, $AffectionVisible,
$codeModeGenerationPass, $codeModeEnvoiPass)
{
$codeSociete = $_SESSION['codeSociete'];
$codePrestataire = $_SESSION['codePrestataire_C'];
$user = $_SESSION['login'];
$passAutoGen = "";
switch ($codeModeGenerationPass)
{
case "0":
$hash = password_hash($motPass, PASSWORD_DEFAULT);
break;
case "1":
$passAutoGen = uniqid();
$hash = password_hash($passAutoGen, PASSWORD_DEFAULT);
$motPass = $passAutoGen;
break;
case 2:
$hash = "";
break;
default:
$hash = password_hash($motPass, PASSWORD_DEFAULT);
}
$sql = 'call sp_creer_user_prestataire(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
$resultat = $this->executerRequete($sql, array($codeSociete, $codePrestataire, $nom, $prenoms, $telephone, $email,
$hash, $codeLangue, $actVisible, $AffectionVisible, $user, $codeModeGenerationPass, $passAutoGen, $codeModeEnvoiPass, $motPass));
$ligne = $resultat->fetch(PDO::FETCH_ASSOC);
return $ligne['codeUtilisateur'];
}
public function desactiverprestataire($codePrestataire, $motif)
{
$user = $_SESSION['login'];
$sql = 'call sp_r_desactiver_prestataire(?, ?, ?)';
$this->executerRequete($sql, array($codePrestataire, $user, $motif));
}
public function activerprestataire($codePrestataire, $motif)
{
$user = $_SESSION['login'];
$sql = 'call sp_r_activer_prestataire(?, ?, ?)';
$this->executerRequete($sql, array($codePrestataire, $user, $motif));
}
public function getmedecinsprestataire($codePrestataire)
{
$sql = 'call sp_get_medecins_prestataire(?)';
$resultat = $this->executerRequete($sql, array($codePrestataire));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getmedecinsnonaccessibles($codePrestataire)
{
$sql = 'CALL sp_get_medecins_non_accessibles_prestataire(?);';
$resultat = $this->executerRequete($sql, array($codePrestataire));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function ajoutertousmedecinsprestataire($codePrestataire)
{
$user = $_SESSION['login'];
$sql = 'call sp_r_ajouter_tous_medecin_prestataire(?, ?)';
$this->executerRequete($sql, array($codePrestataire, $user));
}
public function retirertousmedecinsprestataire($codePrestataire)
{
$user = $_SESSION['login'];
$sql = 'call sp_r_retirer_tous_medecin_prestataire(?, ?)';
$this->executerRequete($sql, array($codePrestataire, $user));
}
public function ajouterunmedecinprestataire($codePrestataire, $codeMedecin, $codeSpecialite)
{
$user = $_SESSION['login'];
$sql = 'call sp_r_ajouter_medecin_prestataire(?, ?, ?, ?)';
$this->executerRequete($sql, array($codePrestataire, $codeMedecin, $codeSpecialite, $user));
}
public function retirerunmedecinprestataire($codePrestataire, $codeMedecin)
{
$user = $_SESSION['login'];
$sql = 'call sp_r_retirer_medecin_prestataire(?, ?, ?)';
$this->executerRequete($sql, array($codePrestataire, $codeMedecin, $user));
}
public function gereraccesactes($codeUtilisateur, $actVisible)
{
$sql = 'call sp_r_gerer_accesactes_prestataire(?, ?)';
$this->executerRequete($sql, array($codeUtilisateur, $actVisible));
}
public function enregistrermodifuserprestataire($idUtilisateur, $nom, $prenoms, $actif, $actVisible, $codeLangue, $AffectionVisible)
{
$user = $_SESSION['login'];
$sql = 'call sp_modifier_user_prestataire(?, ?, ?, ?, ?, ?, ?, ?)';
$resultat = $this->executerRequete($sql, array($idUtilisateur, $nom, $prenoms, $actif, $actVisible, $codeLangue, $AffectionVisible, $user));
}
public function getunuserprestataire($idUtilisateur)
{
$sql = 'call sp_un_user_prestataire(?)';
$resultat = $this->executerRequete($sql, array($idUtilisateur));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function gereraccesaffection($codeUtilisateur, $AffectionVisible)
{
$sql = 'call sp_r_gerer_accesaffection_prestataire(?, ?)';
$this->executerRequete($sql, array($codeUtilisateur, $AffectionVisible));
}
public function desactiverderogationfinger($codePrestataire, $motif)
{
$user = $_SESSION['login'];
$sql = 'call sp_r_desactiver_derogation_finger_prestataire(?, ?, ?)';
$this->executerRequete($sql, array($codePrestataire, $user, $motif));
}
public function activerderogationfinger($codePrestataire, $motif)
{
$user = $_SESSION['login'];
$sql = 'call sp_r_activer_derogation_finger_prestataire(?, ?, ?)';
$this->executerRequete($sql, array($codePrestataire, $user, $motif));
}
public function gethactivationderogationfingerprestataire($codePrestataire)
{
$sql = 'call sp_r_get_h_activation_derogation_finger_prestataire(?)';
$resultat = $this->executerRequete($sql, array($codePrestataire));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getcategoriepresatataire()
{
$sql = 'SELECT codeCategoriePrestataire AS code, libelle FROM categorieprestataire';
$resultat = $this->executerRequete($sql);
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getListeGroupe() {
$sql = 'SELECT codeGroupePrestataire as `code`, codeGroupePrestataire as libelle
FROM p_groupeprestataire WHERE (codeSociete=?) AND codeTarifActe IN ("","TFA0019","TFA0020")
and `codeTypePrestataire` !="PHA" and `codeTypePrestataire` !="OPT" order by codeGroupePrestataire';
$liste = $this->executerRequete($sql,array($_SESSION['codeSociete']));
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getListeGroupeTarif() {
$sql = 'SELECT codeGroupePrestataire as `code`, codeGroupePrestataire as libelle
FROM p_groupeprestataire WHERE (codeSociete=?) AND codeTarifActe NOT IN ("","TFA0019","TFA0020")
and `codeTypePrestataire` !="PHA" and `codeTypePrestataire` !="OPT" order by codeGroupePrestataire';
$liste = $this->executerRequete($sql,array($_SESSION['codeSociete']));
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getPrestataireComposanteTarif($codeTarifActe){
$codeSociete = $_SESSION['codeSociete'];
$sql = 'SELECT codePrestataire AS `code`, libelle
FROM prestataire WHERE (codeSociete=?)
AND (codeTarifActe = ?)';
$liste = $this->executerRequete($sql,array($_SESSION['codeSociete'], $codeTarifActe));
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
// 19-07-2021
public function getPrestatairePoliceComposanteTarif($codeTarifActe){
$codeSociete = $_SESSION['codeSociete'];
$sql = 'SELECT P.codePrestataire AS `code`, A.libelle
FROM policeprestataire P
JOIN prestataire A ON (A.codePrestataire = P.codePrestataire)
WHERE (A.codeSociete=?)
AND (P.codeTarifActe = ?)';
$liste = $this->executerRequete($sql,array($_SESSION['codeSociete'], $codeTarifActe));
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function getListePrestataireTarifAutre() {
$sql = 'SELECT codePrestataire as `code`, libelle
FROM prestataire WHERE (codeSociete=?)
AND codePrestataire IN
(SELECT codePrestataire FROM policeprestataire)
order by libelle';
$liste = $this->executerRequete($sql,array($_SESSION['codeSociete']));
return $liste->fetchAll(PDO::FETCH_ASSOC);
}
public function re_init()
{
$_SESSION['codePrestataire_C'] = "";
$_SESSION['prestataire_C'] = "";
$_SESSION['codeReseauPrestataire_C'] = "";
$_SESSION['codeTypePrestataire_C'] = "";
$_SESSION['codeTypeDecompte_C'] = "";
$_SESSION['typeprestataire_C'] = "";
$_SESSION['reseausoinPrestataire_C'] = "";
$_SESSION['conventionne_C'] = "0";
$_SESSION['estconventionne_C'] = "Non";
$_SESSION['adresseGeoPrestataire_C'] = "";
$_SESSION['adressePostPrestataire_C'] = "";
$_SESSION['telephoneFixePrestataire_C'] = "";
$_SESSION['telephonePortablePrestataire_C'] = "";
$_SESSION['faxPrestatairePrestataire_C'] = "";
$_SESSION['emailPrestataire_C'] = "";
$_SESSION['emailGestionPrestataire_C'] = "";
$_SESSION['nomResponsablePrestataire_C'] = "";
$_SESSION['contactResponsablePrestataire_C'] = "";
$_SESSION['emailResponsablePrestataire_C'] = "";
$_SESSION['nomInterlocuteurPrestataire_C'] = "";
$_SESSION['contactInterlocuteurPrestataire_C'] = "";
$_SESSION['emailInterlocuteurPrestataire_C'] = "";
$_SESSION['codeTarifMedicament_C'] = "";
$_SESSION['codeTarifOptique_C'] = "";
$_SESSION['codeTarifActe_C'] = "";
}
public function getlistepypeprestatairelike($codePrestataire, $nomsearch, $codeTypePrestataire)
{
$nomsearch = contruireParamLike($nomsearch);
$codePrestataire = contruireParamLike($codePrestataire);
$codeTypePrestataire = contruireParamLike($codeTypePrestataire);
$sql = 'call sp_r_prestataires_type_like(?, ?, ?)';
$resultat = $this->executerRequete($sql, array($codePrestataire, $nomsearch, $codeTypePrestataire));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getprestatairelibelle()
{
$sql = 'SELECT libelle as code, libelle FROM prestataire;';
$resultat = $this->executerRequete($sql);
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getModeBiometrie()
{
if (est_anglophone())
{
$sql = 'SELECT codeModeBiometrie AS `code`, libelleEng AS libelle FROM modebiometrie where actif="1";';
}
else
{
$sql = 'SELECT codeModeBiometrie AS `code`, libelle FROM modebiometrie where actif="1";';
}
$resultat = $this->executerRequete($sql);
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function initReseauSoins($codeReseau)
{
$codeSociete = $_SESSION["codeSociete"];
$user = $_SESSION["login"];
$idSaisie = $_SESSION["idSaisie"];
$sql = 'call sp_init_reseau_soins(?, ?, ?, ?);';
$this->executerRequete($sql, array($codeSociete, $codeReseau, $user, $idSaisie));
}
public function reinitpaswdnew($codeUtilisateur)
{
$user = $_SESSION["login"];
$sql = 'call sp_r_reinit_utilisateur_prestataire_new(?, ?)';
$this->executerRequete($sql, array($codeUtilisateur, $user));
}
public function existemedecinspecialite($codePrestataire, $codeMedecin, $codeSpecialite) {
$sql = 'CALL sp_existemedecinspecialite(?, ?, ?);';
$resultat = $this->executerRequete($sql, array($codePrestataire, $codeMedecin, $codeSpecialite));
return ($resultat->rowCount() > 0);
}
public function gethactivationprestataire($codePrestataire)
{
$sql = 'call sp_get_hactivation_prestataire(?)';
$resultat = $this->executerRequete($sql, array($codePrestataire));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
}