executerRequete($sql, array($_SESSION['codeSociete'], $nomsearch, $prenomsearch, $telsearch)); return $clients; } public function getClientsearch($numeroClient) { $sql = 'call sp_getClientsearch(?, ?);'; $clients = $this->executerRequete($sql, array($_SESSION['codeSociete'], $numeroClient)); return $clients; } public function getClientsearchPol($numeroPolice) { $sql = 'SELECT A.id, A.codeSociete, A.numeroClient, nom, prenoms, B.libelle as Ville, telephonePortable FROM clients A left join ville B on (B.codeSociete=A.codeSociete AND B.codeVille=A.codeVille) join police P on (P.idClient=A.id) WHERE (A.codeSociete=?) AND (P.numeroPolice=?)'; $clients = $this->executerRequete($sql, array($_SESSION['codeSociete'], $numeroPolice)); return $clients; } public function getClientVide() { $sql = 'call sp_getClientVide();'; $clients = $this->executerRequete($sql); return $clients; } public function getClient($numeroClient) { $sql = 'SELECT A.id, A.codeSociete, numeroClient, A.typeClient, D.libelle as libelleTypeClient, A.codeTitre, E.libelle as libelleTitre, A.nom, A.prenoms, adresseGeo, boitepostale, A.codeVille, C.libelle as Ville, A.codeLocalite, L.libelle as localite, A.codePays, F.libelle as pays, A.telephoneBureau, A.telephonedomicile, A.telephonePortable, A.fax, A.email, A.sexe, A.dateNaissance, A.codeSecteur, B.libelle as libelleSecteur, B.libelleEng as libelleSecteurEng, A.codeGestionnaire, concat(G.nom," ", G.prenoms) as gestionnaire, A.nomMandataire, A.telephoneFixemandataire, A.telephonePortablemandataire, A.emailMandataire, A.dateCre, A.user, A.registreCommerce, A.codeLangueClient FROM clients A left join secteuractivite B on (B.codeSecteur=A.codeSecteur) left join pays F on (F.codeSociete=A.codeSociete AND F.codePays=A.codePays) left join ville C on (C.codeSociete=A.codeSociete AND C.codeVille=A.codeVille) left join localite L on (L.codeSociete=A.codeSociete AND L.codeLocalite=A.codeLocalite) left join typeclient D on (D.codeTypeClient=A.typeClient) left join titre E on (E.codeTitre=A.codeTitre) left join gestionnaire G on (G.codeSociete=A.codeSociete AND G.codeGestionnaire=A.codeGestionnaire) WHERE (A.codeSociete=?) AND (A.numeroClient=?)'; $client = $this->executerRequete($sql, array($_SESSION['codeSociete'], $numeroClient)); return $client; } public function getClientId($id) { $sql = 'call sp_get_client_id(?);'; $client = $this->executerRequete($sql, array($id)); return $client->fetch(PDO::FETCH_ASSOC); } public function getNombreClients() { $sql = 'select count(*) as nbClients FROM clients A WHERE (A.codeSociete=?)'; $resultat = $this->executerRequete($sql, array($_SESSION['codeSociete'])); $ligne = $resultat->fetch(PDO::FETCH_ASSOC); return $ligne['nbClients']; } public function getIdClient($numeroClient) { $sql = 'SELECT id FROM clients WHERE (codeSociete=?) AND (numeroClient=?)'; $resultat = $this->executerRequete($sql, array($_SESSION['codeSociete'], $numeroClient)); $ligne = $resultat->fetch(PDO::FETCH_ASSOC); return $ligne['id']; } public function getContexteClientId($id) { $sql = 'SELECT A.id as idClient, A.numeroClient, concat(A.nom," ",A.prenoms) as nomClient, A.codeLangueClient, A.codeLocalite FROM clients A WHERE (A.codeSociete=?) AND (A.id=?)'; $resultat = $this->executerRequete($sql, array($_SESSION['codeSociete'], $id)); $context = $resultat->fetch(PDO::FETCH_ASSOC); $_SESSION['idClient_C'] = $context['idClient']; $_SESSION['numeroClient_C'] = $context['numeroClient']; $_SESSION['nomClient_C'] = $context['nomClient']; $_SESSION['idClientAjax'] = $context['idClient']; $_SESSION['codeLangueClient'] = $context['codeLangueClient']; $_SESSION['codeLocalite'] = $context['codeLocalite']; $_SESSION['codeTypeContrat'] = ""; $_SESSION['idPolice_C'] = ""; $_SESSION['numeroPolice_C'] = ""; $_SESSION['ndAdh_C'] = "0"; $_SESSION['ndDep_C'] = "0"; $_SESSION['ndActif_C'] = "0"; $_SESSION['idAdherent_C'] = ""; $_SESSION['numeroAdherent_C'] = ""; $_SESSION['nomAdherent_C'] = ""; $_SESSION['idBeneficiaire_C'] = ""; $_SESSION['numeroBeneficiaire_C'] = ""; $_SESSION['nomBeneficiaire_C'] = ""; $_SESSION['lienPhoto_C'] = ""; } public function existeligne($numeroClient) { $sql = 'select id FROM clients WHERE (codeSociete=?) and (numeroClient=?)'; $resultat = $this->executerRequete($sql, array($_SESSION['codeSociete'],$numeroClient)); return ($resultat->rowCount() > 0); } public function getDenierNumeroClient() { $sql = 'select dernierNumeroClient from numerotationclient WHERE (codeSociete=?)'; $resultat = $this->executerRequete($sql, array($_SESSION['codeSociete'])); if ($resultat->rowCount() == 0) { $sql = 'INSERT INTO numerotationclient (codeSociete, dernierNumeroClient) values (?,?)'; $this->executerRequete($sql, array($_SESSION['codeSociete'], "1")); return "0"; } else { $ligne = $resultat->fetch(PDO::FETCH_ASSOC); return $ligne['dernierNumeroClient']; } } public function setDenierNumeroClient($numeroClient) { $sql = 'update numerotationclient set dernierNumeroClient=? WHERE (codeSociete=?)'; $this->executerRequete($sql, array($numeroClient, $_SESSION['codeSociete'])); } public function ajouter($codeSociete, $numeroClient, $typeClient, $codeTitre, $nom, $prenoms, $adresseGeo, $boitepostale, $codeVille, $codePays, $telephoneBureau, $telephonedomicile, $telephonePortable, $fax, $email, $sexe, $dateNaissance, $codeSecteur, $codeGestionnaire, $nomMandataire, $telephoneFixemandataire, $telephonePortablemandataire, $emailMandataire, $dateCre, $user, $codeLocalite, $registreCommerce, $codeLangueClient) { $sql = 'INSERT INTO clients (codeSociete, numeroClient, typeClient, codeTitre, nom, prenoms, adresseGeo, boitepostale, codeVille, codePays, telephoneBureau, telephonedomicile, telephonePortable, fax, email, sexe, dateNaissance, codeSecteur, codeGestionnaire, nomMandataire, telephoneFixemandataire, telephonePortablemandataire, emailMandataire, dateCre, user, codeLocalite, registreCommerce, codeLangueClient) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'; $this->executerRequete($sql, array($codeSociete, $numeroClient, $typeClient, $codeTitre, $nom, $prenoms, $adresseGeo, $boitepostale, $codeVille, $codePays, $telephoneBureau, $telephonedomicile, $telephonePortable, $fax, $email, $sexe, $dateNaissance, $codeSecteur, $codeGestionnaire, $nomMandataire, $telephoneFixemandataire, $telephonePortablemandataire, $emailMandataire, $dateCre, $user, $codeLocalite, $registreCommerce, $codeLangueClient)); return $this->dernierId(); } public function modifier($id, $typeClient, $codeTitre, $nom, $prenoms, $adresseGeo, $boitepostale, $codeVille, $codePays, $telephoneBureau, $telephonedomicile, $telephonePortable, $fax, $email, $sexe, $dateNaissance, $codeSecteur, $codeGestionnaire, $nomMandataire, $telephoneFixemandataire, $telephonePortablemandataire, $emailMandataire, $codeLocalite, $registreCommerce, $codeLangueClient) { $sql = 'UPDATE clients SET typeClient=?, codeTitre=?, nom=?, prenoms=?, adresseGeo=?, boitepostale=?, codeVille=?, codePays=?, telephoneBureau=?, telephonedomicile=?, telephonePortable=?, fax=?, email=?, sexe=?, dateNaissance=?, codeSecteur=?, codeGestionnaire=?, nomMandataire=?, telephoneFixemandataire=?, telephonePortablemandataire=?, emailMandataire=?, codeLocalite=? , registreCommerce=? , codeLangueClient=? where (id=?)'; $this->executerRequete($sql, array($typeClient, $codeTitre, $nom, $prenoms, $adresseGeo, $boitepostale, $codeVille, $codePays, $telephoneBureau, $telephonedomicile, $telephonePortable, $fax, $email, $sexe, $dateNaissance, $codeSecteur, $codeGestionnaire, $nomMandataire, $telephoneFixemandataire, $telephonePortablemandataire, $emailMandataire, $codeLocalite, $registreCommerce, $codeLangueClient, $id)); } public function supprimer($idClient) { $sql = 'select id from police where (idClient=?) limit 1'; $resultat = $this->executerRequete($sql, array($idClient)); if($resultat->rowCount() == 0) { $sql = 'DELETE FROM clients WHERE (id=?)'; $this->executerRequete($sql, array($idClient)); return true; } else { return false; } } public function getContexteAjaxClient($id) { $sql = 'SELECT A.id as idClient FROM clients A WHERE (A.id=?)'; $resultat = $this->executerRequete($sql, array($id)); $context = $resultat->fetch(PDO::FETCH_ASSOC); $_SESSION['idClientAjax'] = $context['idClient']; } public function getListeClients() { $sql = 'call sp_get_liste_clients(?);'; $clients = $this->executerRequete($sql, array($_SESSION['codeSociete'])); return $clients; } public function getListeClientsExport() { $sql = 'call sp_get_liste_clients_export(?);'; $resultat = $this->executerRequete($sql, array($_SESSION['codeSociete'])); return $resultat->fetchAll(PDO::FETCH_ASSOC); } public function getClientParent($id) { $sql = 'call sp_get_client_parent(?);'; $resultat = $this->executerRequete($sql, array($id)); return $resultat->fetch(PDO::FETCH_ASSOC); } public function getClientEnfants($id) { $sql = 'call sp_get_client_enfants(?);'; $resultat = $this->executerRequete($sql, array($id)); return $resultat->fetchAll(PDO::FETCH_ASSOC); } public function getClientFreres($id) { $sql = 'call sp_get_client_freres(?);'; $resultat = $this->executerRequete($sql, array($id)); return $resultat->fetchAll(PDO::FETCH_ASSOC); } public function supprimer_liaison_client($idClient) { $user = $_SESSION['login']; $sql = 'call sp_supprimer_liaison_client(?, ?)'; $this->executerRequete($sql, array($idClient, $user)); } public function getclientslike($numeroclientsearch, $nomsearch, $idClient) { $nomsearch = contruireParamLike($nomsearch); $sql = 'call sp_r_clients_parents_like(?, ?, ?)'; $resultat = $this->executerRequete($sql, array($numeroclientsearch, $nomsearch, $idClient)); return $resultat->fetchAll(PDO::FETCH_ASSOC); } public function client_lier_a_un_parent($idClient, $idClientP) { $user = $_SESSION['login']; $sql = 'call sp_lier_client(?, ?, ?)'; $this->executerRequete($sql, array($idClientP, $idClient, $user)); } public function getclientsEnfantslike($numeroclientsearch, $nomsearch, $idClient) { $nomsearch = contruireParamLike($nomsearch); $sql = 'call sp_r_clients_enfants_like(?, ?, ?)'; $resultat = $this->executerRequete($sql, array($numeroclientsearch, $nomsearch, $idClient)); return $resultat->fetchAll(PDO::FETCH_ASSOC); } public function activerextranet($idClient, $choix) { $sql = 'call sp_r_activer_extranet_client(?, ?)'; $this->executerRequete($sql, array($idClient, $choix)); } public function activervalidationrhrd($idClient, $choix) { $sql = 'call sp_r_activer_validationrhrd(?, ?)'; $this->executerRequete($sql, array($idClient, $choix)); } public function getusersrhclient($idClient) { $sql = 'call sp_c_get_users_rh(?)'; $resultat = $this->executerRequete($sql, array($idClient)); return $resultat->fetchAll(PDO::FETCH_ASSOC); } public function getunuserrhclient($idUtilisateur) { $sql = 'call sp_un_user_rh_client(?)'; $resultat = $this->executerRequete($sql, array($idUtilisateur)); return $resultat->fetch(PDO::FETCH_ASSOC); } public function getListeProfilRh() { if (est_anglophone()){ $sql = 'call sp_get_liste_profil_rh_eng()'; }else{ $sql = 'call sp_get_liste_profil_rh()'; } $resultat = $this->executerRequete($sql); return $resultat->fetchAll(PDO::FETCH_ASSOC); } public function enregistrermodifuser($idUtilisateur, $nom, $prenoms, $actif, $actVisible, $codeLangue, $AffectionVisible, $telephone, $email, $codeProfil) { $user = $_SESSION['login']; $sql = 'call sp_c_modifier_user_rh(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);'; $resultat = $this->executerRequete($sql, array($idUtilisateur, $nom, $prenoms, $actif, $actVisible, $codeLangue, $AffectionVisible, $user, $telephone, $email, $codeProfil)); } public function reinitpaswd($codeUtilisateur) { $sql = 'call sp_c_reinit_utilisateur_rh_client(?)'; $this->executerRequete($sql, array($codeUtilisateur)); } public function desactiver($codeUtilisateur) { $sql = 'call sp_c_desactiver_utilisateur_rh_client(?)'; $this->executerRequete($sql, array($codeUtilisateur)); } public function activer($codeUtilisateur) { $sql = 'call sp_c_activer_utilisateur_rh_client(?)'; $this->executerRequete($sql, array($codeUtilisateur)); } public function existelogin($codeUtilisateur) { $sql = 'select id FROM c_utilisateur WHERE (codeUtilisateur=?)'; $resultat = $this->executerRequete($sql, array($codeUtilisateur)); return ($resultat->rowCount() > 0); } public function creeruser($codeUtilisateur, $nom, $prenoms, $telephone, $email, $motPass, $codeLangue, $codeModeGenerationPass, $codeModeEnvoiPass, $codeProfil) { $codeSociete = $_SESSION['codeSociete']; $user = $_SESSION['login']; $idClient = $_SESSION['idClient_C']; $numeroClient = $_SESSION['numeroClient_C']; $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_c_creer_user_rh_client(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);'; /* var_dump( array( "codeSociete" => $codeSociete, "idClient" => $idClient, "numeroClient" => $numeroClient, "codeUtilisateur" => $codeUtilisateur, "nom" => $nom, "prenoms" => $prenoms, "telephone" => $telephone, "email" => $email, "hash" => $hash, "codeLangue" => $codeLangue, "user" => $user, "user" => $user, "codeModeGenerationPass" => $codeModeGenerationPass, "passAutoGen" => $passAutoGen, "codeModeEnvoiPass" => $codeModeEnvoiPass, "motPass" => $motPass, "codeProfil" => $codeProfil, ) ); exit(); */ $this->executerRequete($sql, array($codeSociete, $idClient, $numeroClient, $codeUtilisateur, $nom, $prenoms, $telephone, $email, $hash, $codeLangue, $user, $codeModeGenerationPass, $passAutoGen, $codeModeEnvoiPass, $motPass, $codeProfil)); } }