function Formulaire_Radio_MAJ_Table($formx) { $id_instance = $formx->getIdInstance(); $idu = $formx->getVar('ids'); //eko ($id_instance); //eko ($idu); $req = new clResultQuery(); $param = array(); $param['cw'] = "*"; $param['idu'] = $idu; $res = $req->Execute("Fichier", "getInfoPatientFromIDU", $param, "ResultQuery"); $idpatient = $res['idpatient'][0]; //eko($res); $param = array(); $param['etat'] = "a"; $param['idpatient'] = $idpatient; $param['idapplication'] = IDAPPLICATION; $param['id_instance'] = $id_instance; //$param['dt_creation'] = date("Y")."-".date("m")."-".date("d")." ".date("H").":".date("i").":00"; list($jour, $mois, $annee) = explode("-", utf8_decode($formx->getFormVar('Val_F_RADIO_Date'))); $param['dt_creation'] = $annee . "-" . $mois . "-" . $jour . " " . utf8_decode($formx->getFormVar('Val_F_RADIO_Heure')) . ":" . utf8_decode($formx->getFormVar('Val_F_RADIO_Minute')) . ":00"; //eko ( utf8_decode($formx->getFormVar('Val_F_RADIO_Heure')) ); //eko ( utf8_decode($formx->getFormVar('Val_F_RADIO_Minute')) ); //eko ( utf8_decode($formx->getFormVar('Val_F_RADIO_Date')) ); //eko ( $annee."-".$mois."-".$jour." ".utf8_decode($formx->getFormVar('Val_F_RADIO_Heure')).":".utf8_decode($formx->getFormVar('Val_F_RADIO_Minute')).":00"); //eko ($param); $req = new clRequete(BDD, "radios", $param); $res = $req->addRecord(); //$res = $req -> Execute ( "Fichier", "putFormulaireRadioData", $param, "ResultQuery" ) ; //eko($res); return ""; }
function addLog($type, $description, $idcible = '') { global $session; global $debTemps; global $nbRequetes; global $tpRequetes; if ($description != "Configuration|cron" and $description != "Importation") { $date = new clDate(); $data['idapplication'] = IDAPPLICATION; if (isset($session)) { $data['iduser'] = $session->getUid(); } else { $data['iduser'] = $_SESSION['informations']['iduser'] ? $_SESSION['informations']['iduser'] : "******"; } if ($idcible) { $data['idcible'] = $idcible; } $data['type'] = $type; $data['ip'] = $_SERVER['REMOTE_ADDR']; $data['date'] = $date->getDatetime(); $data['description'] = $description; $finTemps = temps(); $tpPage = $finTemps - $debTemps; $data['tempsPage'] = $tpPage; $data['tempsSQL'] = $tpRequetes; $data['nombreSQL'] = $nbRequetes + 1; // Appel de la classe Requete. $requete = new clRequete(BASEXHAM, TABLELOGS, $data); // Exécution de la requete. $res = $requete->addRecord(); // Limitation du nombre de lignes dans la table logs... Désactivé, mais fonctionne parfaitement. //$mini = $res['cur_id'] - 150 ; //$res = $requete->delRecord ( "idlog<=$mini" ) ; } }
function Formulaire_Radio_MAJ_Table($formx) { $id_instance = $formx->getIdInstance(); $idu = $formx->getVar('ids'); //eko ($id_instance); //eko ($idu); $req = new clResultQuery(); $param = array(); $param['cw'] = "*"; $param['idu'] = $idu; $res = $req->Execute("Fichier", "getInfoPatientFromIDU", $param, "ResultQuery"); $idpatient = $res['idpatient'][0]; //eko($res); $param = array(); $param['etat'] = "a"; $param['idpatient'] = $idpatient; $param['idapplication'] = IDAPPLICATION; $param['id_instance'] = $id_instance; //$param['dt_creation'] = date("Y")."-".date("m")."-".date("d")." ".date("H").":".date("i").":00"; list($jour, $mois, $annee) = explode("-", utf8_decode($formx->getFormVar('Val_F_RADIO_Date'))); $param['dt_creation'] = $annee . "-" . $mois . "-" . $jour . " " . utf8_decode($formx->getFormVar('Val_F_RADIO_Heure')) . ":" . utf8_decode($formx->getFormVar('Val_F_RADIO_Minute')) . ":00"; //eko ( utf8_decode($formx->getFormVar('Val_F_RADIO_Heure')) ); //eko ( utf8_decode($formx->getFormVar('Val_F_RADIO_Minute')) ); //eko ( utf8_decode($formx->getFormVar('Val_F_RADIO_Date')) ); //eko ( $annee."-".$mois."-".$jour." ".utf8_decode($formx->getFormVar('Val_F_RADIO_Heure')).":".utf8_decode($formx->getFormVar('Val_F_RADIO_Minute')).":00"); //eko ($param); $req = new clRequete(BDD, "radios", $param); $res = $req->addRecord(); unset($param); global $options; if ($options->getOption('EnquetePoumonsFace') and $formx->getFormVar('Val_F_RADIO_Centre') == "Poumons Face") { $idradio = $res['cur_id']; $param['idradio'] = $idradio; $param['enquete'] = 'PoumonsFace'; $param['indication'] = $formx->getFormVar('Val_F_RADIO_Indication'); $param['recherche'] = $formx->getFormVar('Val_F_RADIO_Recherche'); $req = new clRequete(BDD, "radios_enquetes", $param); $res = $req->addRecord(); } //$res = $req -> Execute ( "Fichier", "putFormulaireRadioData", $param, "ResultQuery" ) ; //eko($res); return ""; }
function Formulaire_Transfert_Launch($formx) { global $session; $id_instance = $formx->getIdInstance(); $idu = $formx->getVar('ids'); $idpatient = $session->getNavi(2); $req = new clResultQuery(); $param = array(); $param['cw'] = "where idpatient='" . $idpatient . "'"; $param['table'] = PPRESENTS; $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery"); //$idpatient = $res['idpatient'][0] ; eko($res); $data['idpatient'] = $res['idpatient'][0]; $data['idu'] = $res['idu'][0]; $data['ilp'] = $res['ilp'][0]; $data['nsej'] = $res['nsej'][0]; $data['uf'] = $res['uf'][0]; $data['nom'] = $res['nom'][0]; $data['prenom'] = $res['prenom'][0]; $data['sexe'] = $res['sexe'][0]; $data['dt_naissance'] = $res['dt_naissance'][0]; $data['adresse_libre'] = $res['adresse_libre'][0]; $data['adresse_cp'] = $res['adresse_cp'][0]; $data['adresse_ville'] = $res['adresse_ville'][0]; $data['telephone'] = $res['telephone'][0]; $data['prevenir'] = $res['prevenir'][0]; $data['medecin_traitant'] = $res['medecin_traitant'][0]; $data['dt_admission'] = $res['dt_admission'][0]; $data['adresseur'] = $res['adresseur'][0]; $data['mode_admission'] = $res['mode_admission'][0]; $data['dt_examen'] = $res['dt_examen'][0]; $data['medecin_urgences'] = $res['medecin_urgences'][0]; $data['ide'] = $res['ide'][0]; $data['salle_examen'] = $res['salle_examen'][0]; $data['motif_recours'] = $res['motif_recours'][0]; $data['code_gravite'] = $res['code_gravite'][0]; $data['ccmu'] = $res['ccmu'][0]; $data['gemsa'] = $res['gemsa'][0]; $data['traumato'] = $res['traumato'][0]; $data['dest_souhaitee'] = $res['dest_souhaitee'][0]; $data['dest_attendue'] = $res['dest_attendue'][0]; $data['moyen_transport'] = $res['moyen_transport'][0]; $data['motif_transfert'] = $res['motif_transfert'][0]; $data['dt_sortie'] = $res['dt_sortie'][0]; $data['recours_code'] = $res['recours_code'][0]; $data['recours_categorie'] = $res['recours_categorie'][0]; $data['type_destination'] = $res['type_destination'][0]; $data['diagnostic_categorie'] = $res['diagnostic_categorie'][0]; $data['diagnostic_libelle'] = $res['diagnostic_libelle'][0]; $data['diagnostic_code'] = $res['diagnostic_code'][0]; $data['etatUHCD'] = $res['etatUHCD'][0]; $data['dt_UHCD'] = $res['dt_UHCD'][0]; $data['provenance'] = $res['provenance'][0]; $data['dest_pmsi'] = $res['dest_pmsi'][0]; $data['orientation'] = $res['orientation'][0]; $data['iduser'] = '******'; $data['manuel'] = $res['manuel'][0]; if ($res['uf'][0] == '6004') { $data['uf'] = '6006'; $base = 'terminal2_tuv2'; } elseif ($res['uf'][0] == '6006') { $data['uf'] = '6004'; $base = 'terminal_tuv2'; } elseif ($res['uf'][0] == 'UHCD6004') { $data['uf'] = 'UHCD6006'; $base = 'terminal2_tuv2'; } elseif ($res['uf'][0] == 'UHCD6006') { $data['uf'] = 'UHCD6004'; $base = 'terminal_tuv2'; } $req = new clRequete($base, PPRESENTS, $data); $req->addRecord(); $req = new clRequete(BDD, PPRESENTS); $req->delRecord("idpatient={$idpatient}"); header('Location:index.php?navi=TGlzdGVfUHJlc2VudHM='); //eko ( $data ) ; /* $param = array(); $param['etat'] = "a"; $param['idpatient'] = $idpatient; $param['id_instance'] = $id_instance; $param['dt_creation'] = date("Y")."-".date("m")."-".date("d")." ".date("H").":".date("i").":00"; //eko ($param); $req = new clRequete(BDD,"radios",$param); $req->addRecord(); */ //$res = $req -> Execute ( "Fichier", "putFormulaireRadioData", $param, "ResultQuery" ) ; //eko($res); return ""; }
function addMedecins() { /*****************************************************************************/ global $session; if (is_array($_POST['listeGauche'])) { while (list($key, $val) = each($_POST['listeGauche'])) { if ($val and $val != "aucun#") { unset($paramRq); // Recherche du nom du medecin if ($_POST['idListeSelection1'] == "Urgentiste") { $paramRq[code] = $val; $paramRq[idDomaine] = CCAM_IDDOMAINE; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getNomMedURG", $paramRq, "ResultQuery"); $nom = $res["nomitem"][0]; $type = "Urgentiste"; } else { if ($_POST['idListeSelection1'] == "Toutes") { $paramRq[code] = $val; $paramRq[idDomaine] = CCAM_IDDOMAINE; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getNomMedURG", $paramRq, "ResultQuery"); $nom = $res["nomitem"][0]; $type = "Urgentiste"; if ($res[INDIC_SVC]["2"] == 0) { $paramRq[code] = $val; $paramRq[idDomaine] = CCAM_IDDOMAINE; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getNomMedSPEC", $paramRq, "ResultQuery"); $nom = $res["nomitem"][0]; $type = $res["nomliste"][0]; } } else { $paramRq[code] = $val; $paramRq[idDomaine] = CCAM_IDDOMAINE; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getNomMedSPEC", $paramRq, "ResultQuery"); $nom = $res["nomitem"][0]; $type = $res["nomliste"][0]; } } unset($param); $param[speMedecin] = $type; $param[codeMedecin] = $val; $param[nomMedecin] = addslashes($nom); $param[idDomaine] = CCAM_IDDOMAINE; $majrq = new clRequete(CCAM_BDD, "ccam_anesthesie_domaine", $param); $majrq->addRecord(); } } $retourInfos = "Les médecins sélectionnés ont été insérés dans la liste des médecins autorisés à pratiquer une anesthésie"; return $retourInfos; } }
function addListe() { global $options; // On vérifie qu'un item ne porte pas déjà ce nom. $param[cw] = "WHERE idDomaine='" . CCAM_IDDOMAINE . "' AND nomliste='" . $_POST['nomItemF'] . "' AND categorie='" . $this->type . "'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getListesComplexes", $param, "ResultQuery"); // On signale l'erreur si le nom est déjà pris. if ($res[INDIC_SVC][2] > 0) { $this->erreurs .= "Une catégorie portant le nom demandé (\"" . $_POST['nomItemF'] . "\") existe déjà. La création est annulée."; } else { if (eregi("[0-9a-zA-Z]", $_POST['nomItemF'])) { // On positionne correctement le nouvel item et on déplace les autres. if ($options->getOption("Catégories " . $this->type) != "Manuel") { $rang = 1; } else { $param[cw] = "WHERE idDomaine='" . CCAM_IDDOMAINE . "' AND iditem='" . $_POST['placerF'] . "'"; $res2 = $req->Execute("Fichier", "CCAM_getListesItemsComplexes", $param, "ResultQuery"); $rang = $res2[rang][0] + 1; } $param[cw] = "WHERE idDomaine='" . CCAM_IDDOMAINE . "' AND rang>='{$rang}' AND categorie='" . $this->type . "' AND nomitem='LISTE'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getListesItemsComplexes", $param, "ResultQuery"); for ($i = 0; isset($res[iditem][$i]); $i++) { $data2[rang] = $res[rang][$i] + 1; $requete = new clRequete(CCAM_BDD, "ccam_liste", $data2); $requete->updRecord("iditem='" . $res[iditem][$i] . "'"); } if ($this->type == "ListeMédecins") { $data[code] = $_POST['ufF']; // On regarde si l'uf existe déjà dans la table ccam_uf_spe $req = new clResultQuery(); // Récupération des informations de la table ccam_uf_spe $param_ccam_uf_spe["cw"] = "numeroUF ='" . $_POST['ufF'] . "' and libelleSpecialite!='" . $_REQUEST["liste"] . "'"; $resTable_ccam_uf_spe = $req->Execute("Fichier", "CCAM_getUFspe", $param_ccam_uf_spe, "ResultQuery"); if ($resTable_ccam_uf_spe["INDIC_SVC"]["2"] == 0) { // (Insertion) Mise à jour de l'Uf dans la table ccam_uf_spe $dataSpe[numeroUF] = $_POST['ufF']; $dataSpe[libelleSpecialite] = stripslashes($_POST['nomItemF']); $requete = new clRequete(CCAM_BDD, "ccam_uf_spe", $dataSpe); $requete->addRecord(); // Insertion du nouveau item. $data[categorie] = $this->type; $data[nomliste] = $_POST['nomItemF']; $data[nomitem] = "LISTE"; $data[rang] = $rang; $data[idDomaine] = CCAM_IDDOMAINE; $requete = new clRequete(CCAM_BDD, "ccam_liste", $data); $requete->addRecord(); // Message d'information. $this->infos .= "La catégorie de " . $this->type . " \"" . stripslashes($_POST['nomItemF']) . "\" a été ajoutée."; } else { // Signalement d'une erreur si l'uf à modifier existe. $this->erreurs .= "La liste ne peut pas être modifiée car l'uf " . $_POST['ufF'] . " existe déjà."; } } else { // Insertion du nouveau item. $data[categorie] = $this->type; $data[nomliste] = $_POST['nomItemF']; $data[nomitem] = "LISTE"; $data[rang] = $rang; $data[idDomaine] = CCAM_IDDOMAINE; $requete = new clRequete(CCAM_BDD, "ccam_liste", $data); $requete->addRecord(); // Message d'information. $this->infos .= "La catégorie de " . $this->type . " \"" . stripslashes($_POST['nomItemF']) . "\" a été ajoutée."; } } else { $this->erreurs = "Le nom choisi ne doit pas être vide."; } } }
function addNvxDiags() { global $session; unset($param); $param[idActe] = $this->getIdSuiv("ANAT"); $param[libelleActe] = $_POST['libActe']; $param[idDomaine] = CCAM_IDDOMAINE; $requete = new clRequete(CCAM_BDD, "ccam_actes_domaine", $param); $requete->addRecord(); $retourInfos[infos] = "La famille d'actes '" . $param[idActe] . "' a été insérée dans la liste"; return $retourInfos; }
function add1Acte($codeActe) { unset($paramRq); $paramRq[idActe] = $codeActe; $paramRq[cw] = "and idDomaine=" . CCAM_IDDOMAINE; $req3 = new clResultQuery(); $res3 = $req3->Execute("Fichier", "CCAM_get1Acte", $paramRq, "ResultQuery"); //newfct(gen_affiche_tableau,$res3[INDIC_SVC]); unset($param); $param[codeActe] = $codeActe; $param[idDom] = CCAM_IDDOMAINE; $param[idEvent] = $this->idEvent; $param[cotationNGAP] = $res3[cotationNGAP][0]; $majrq = new clRequete(CCAM_BDD, "ccam_cotation_actes", $param); $sql = $majrq->addRecord(); //MAJ Fréquence d'utilisation de l'acte $paramRq[idDomaine] = CCAM_IDDOMAINE; $req3 = new clResultQuery(); $res3 = $req3->Execute("Fichier", "CCAM_getMaxFreqActe", $paramRq, "ResultQuery"); //newfct(gen_affiche_tableau,$res3[INDIC_SVC]); unset($param); $param[frequence] = $res3[freq_max][0] + 1; $majrq = new clRequete(CCAM_BDD, "ccam_actes_domaine", $param); $sql = $majrq->updRecord("idActe='{$paramRq['idActe']}' AND idDomaine=" . CCAM_IDDOMAINE); }
function addPatientSQL($idimport, $table) { global $errs; global $options; // Récupération des informations sur le patient à créer. $param['cw'] = "WHERE idimport='{$idimport}'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getImports", $param, "ResultQuery"); if ($res['INDIC_SVC'][2]) { $i = 0; $data['idu'] = $res['idu'][$i]; $data['ilp'] = $res['ilp'][$i]; $data['nsej'] = $res['idpass'][$i]; $data['uf'] = $res['uf'][$i]; $data['nom'] = $res['nom'][$i]; $data['prenom'] = $res['prenom'][$i]; $data['sexe'] = $res['sexe'][$i]; $data['dt_naissance'] = $res['dt_naissance'][$i]; $data['adresse_libre'] = $res['adresse_libre'][$i]; $data['adresse_cp'] = $res['adresse_cp'][$i]; $data['adresse_ville'] = $res['adresse_ville'][$i]; $data['telephone'] = $res['telephone'][$i]; $data['prevenir'] = str_replace('^', '<br/>', $res['prevenir'][$i]); $data['medecin_traitant'] = $res['medecin_traitant'][$i]; $data['dt_admission'] = $res['dt_admission'][$i]; $data['mode_admission'] = $res['mode_admission'][$i]; $data['iduser'] = "******"; $data['manuel'] = 0; if ($data['uf'] == $options->getOption('numUFsansRPU')) { $data['valide'] = 0; $data['etatUHCD'] = 'noCriteres'; } //newfct ( gen_affiche_tableau, $data ) ; // Appel de la classe Requete. $requete = new clRequete(BDD, $table, $data); // Exécution de la requete. $requete->addRecord(); // Mise à jour de la date de traitement de l'import. $date = new clDate(); $data2['dt_traitement'] = $date->getDatetime(); // Appel de la classe Requete. $requete = new clRequete(BDD, IMPORTS, $data2); // Exécution de la requete. $requete->updRecord("idimport='{$idimport}'"); $this->news1++; } else { // En cas d'erreur, on la signale... $errs->addErreur("clImportation : Impossible d'importer ce nouveau patient, l'identifiant de l'import est introuvable (idimport=\"{$idimport}\")."); $this->errs1++; } }
function Formulaire_Transfert_Launch($formx) { global $session; // Configuration Toulon (1) / La seyne (1) /* $uf1 = '6006' ; $uf2 = '6004' ; $ufu1 = '6010' ; $ufu2 = '6005' ; $bdd1 = 'terminal_tuv2' ; $bddc1 = 'terminal_ccam' ; $bdd2 = 'terminal2_tuv2' ; $bddc2 = 'terminal2_ccam' ; */ // configuration Avignon Adultes / Gynéco $uf1 = '1103'; $uf2 = '3251'; $ufu1 = '1101'; $ufu2 = '1101'; $bdd1 = 'terminala_tuv2'; $bddc1 = 'terminala_ccam'; $bdd2 = 'terminalg_tuv2'; $bddc2 = 'terminalg_ccam'; // Configuration de test /* $uf1 = '2701' ; $uf2 = '3000' ; $ufu1 = 'UHCD6004' ; $ufu2 = 'UHCD6006' ; $bdd1 = 'xham_tuv2' ; $bddc1 = 'xham_ccam' ; $bdd2 = 'terminal_tuv2' ; $bddc2 = 'terminal_ccam' ; */ // Récupération des informations globales du patient. $id_instance = $formx->getIdInstance(); $idu = $formx->getVar('ids'); $idpatient = $session->getNavi(2); // Récupération de toutes les informations du patient sur le terminal source. $req = new clResultQuery(); $param = array(); $param['cw'] = "where idpatient='" . $idpatient . "'"; $param['table'] = PPRESENTS; $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery"); // eko ( $res ) ; $idu = $res['idu'][0]; // Préparation des données du patient. //$data['idpatient'] = $res['idpatient'][0] ; $data['idu'] = $res['idu'][0]; $data['ilp'] = $res['ilp'][0]; $data['nsej'] = $res['nsej'][0]; $data['uf'] = $res['uf'][0]; $data['nom'] = $res['nom'][0]; $data['prenom'] = $res['prenom'][0]; $data['sexe'] = $res['sexe'][0]; $data['dt_naissance'] = $res['dt_naissance'][0]; $data['adresse_libre'] = $res['adresse_libre'][0]; $data['adresse_cp'] = $res['adresse_cp'][0]; $data['adresse_ville'] = $res['adresse_ville'][0]; $data['telephone'] = $res['telephone'][0]; $data['prevenir'] = $res['prevenir'][0]; $data['medecin_traitant'] = $res['medecin_traitant'][0]; $data['dt_admission'] = $res['dt_admission'][0]; $data['adresseur'] = $res['adresseur'][0]; $data['mode_admission'] = $res['mode_admission'][0]; $data['dt_examen'] = $res['dt_examen'][0]; $data['medecin_urgences'] = $res['medecin_urgences'][0]; $data['ide'] = $res['ide'][0]; // $data['salle_examen'] = $res['salle_examen'][0] ; $data['motif_recours'] = $res['motif_recours'][0]; $data['code_gravite'] = $res['code_gravite'][0]; $data['ccmu'] = $res['ccmu'][0]; $data['gemsa'] = $res['gemsa'][0]; $data['traumato'] = $res['traumato'][0]; $data['dest_souhaitee'] = $res['dest_souhaitee'][0]; $data['dest_attendue'] = $res['dest_attendue'][0]; $data['moyen_transport'] = $res['moyen_transport'][0]; $data['motif_transfert'] = $res['motif_transfert'][0]; $data['dt_sortie'] = $res['dt_sortie'][0]; $data['recours_code'] = $res['recours_code'][0]; $data['recours_categorie'] = $res['recours_categorie'][0]; $data['type_destination'] = $res['type_destination'][0]; $data['diagnostic_categorie'] = $res['diagnostic_categorie'][0]; $data['diagnostic_libelle'] = $res['diagnostic_libelle'][0]; $data['diagnostic_code'] = $res['diagnostic_code'][0]; $data['etatUHCD'] = $res['etatUHCD'][0]; $data['dt_UHCD'] = $res['dt_UHCD'][0]; $data['provenance'] = $res['provenance'][0]; $data['dest_pmsi'] = $res['dest_pmsi'][0]; $data['orientation'] = $res['orientation'][0]; $data['iduser'] = '******'; $data['manuel'] = $res['manuel'][0]; // En fonction de l'uf du patient, on détermine son uf de destination. // Par exemple, si l'UF du patient était celle des urgences de Toulon, alors // la nouvelle UF sera cette des urgences de La Seyne. // On détermine la table de destination aussi à cette étape. if ($res['uf'][0] == $uf1) { $data['uf'] = $uf2; $base = $bdd2; $basec = $bddc2; } elseif ($res['uf'][0] == $uf2) { $data['uf'] = $uf1; $base = $bdd1; $basec = $bddc1; } elseif (BDD == $bdd1) { $data['uf'] = $ufu2; $base = $bdd2; $basec = $bddc2; } elseif (BDD == $bdd2) { $data['uf'] = $ufu1; $base = $bdd1; $basec = $bddc1; } // On vérifie si le patient est déjà présent ou non. $param['cw'] = "where nsej='" . $res['nsej'][0] . "' UNION select * from patients_sortis where nsej='" . $res['nsej'][0] . "'"; $param['table'] = PPRESENTS; $resEx = $req->Execute("Fichier", "getPatients", $param, "ResultQuery", $base); if ($resEx['INDIC_SVC'][2]) { $newidpatient = $resEx['idpatient'][0]; $exist = 1; } else { // Création du patient sur le terminal de destination. $req = new clRequete($base, PPRESENTS, $data); $sql = $req->addRecord(); $newidpatient = $sql['cur_id']; $exist = 0; } // Suppression du patient sur le terminal source. $req = new clRequete(BDD, PPRESENTS); $req->delRecord("idpatient={$idpatient}"); // Gestion des documents // Suppression des documents édités du patient sur le terminal de destination. $req = new clRequete($base, "editions"); $req->delRecord("idpatient={$newidpatient}"); // Récupération des documents édités du patient sur le terminal source. $req = new clResultQuery(); $param['cw'] = "where idpatient='" . $idpatient . "'"; $res = $req->Execute("Fichier", "getDocumentsEdites", $param, "ResultQuery"); // Création de chaque document du terminal source sur le terminal de destination. for ($i = 0; isset($res['idedition'][$i]); $i++) { unset($data); //$data['idedition'] = $res['idedition'][$i] ; $data['iddocument'] = $res['iddocument'][$i]; $data['idpatient'] = $newidpatient; $data['nomedition'] = $res['nomedition'][$i]; $data['urledition'] = $res['urledition'][$i]; $data['date'] = $res['date'][$i]; $data['iduser'] = $res['iduser'][$i]; $req = new clRequete($base, "editions", $data); $req->addRecord(); } $req = new clRequete(BDD, "editions"); $req->delRecord("idpatient={$idpatient}"); // Gestion des messages d'alertes. // Suppression des messages du patient sur le terminal de destination. $req = new clRequete($base, "logs_mails"); $req->delRecord("idpatient={$newidpatient}"); // Récupération des documents édités du patient sur le terminal source. $req = new clResultQuery(); $param['cw'] = "where idpatient='" . $idpatient . "'"; $res = $req->Execute("Fichier", "getMessages", $param, "ResultQuery"); // Création de chaque message du terminal source sur le terminal de destination. for ($i = 0; isset($res['idmail'][$i]); $i++) { unset($data); //$data['idmail'] = $res['idmail'][$i] ; $data['idpatient'] = $newidpatient; $data['dt_mail'] = $res['dt_mail'][$i]; $data['contenu'] = $res['contenu'][$i]; $data['nsej'] = $res['nsej'][$i]; $data['type_mail'] = $res['type_mail'][$i]; $data['traite'] = $res['traite'][$i]; $data['erreur'] = $res['erreur'][$i]; $data['positif'] = $res['positif'][$i]; $req = new clRequete($base, "logs_mails", $data); $req->addRecord(); } $req = new clRequete(BDD, "logs_mails"); $req->delRecord("idpatient={$idpatient}"); // Gestion des radios. // Suppression des radios du patient sur le terminal de destination. $req = new clRequete($base, "radios"); $req->delRecord("idpatient={$newidpatient}"); // Récupération des documents édités du patient sur le terminal source. $req = new clResultQuery(); $param['cw'] = "where idpatient='" . $idpatient . "'"; $res = $req->Execute("Fichier", "getRadiosGlob", $param, "ResultQuery"); // Création de chaque document du terminal source sur le terminal de destination. for ($i = 0; isset($res['idradio'][$i]); $i++) { unset($data); $data['idpatient'] = $newidpatient; //$data['idradio'] = $res['idradio'][$i] ; $data['etat'] = $res['etat'][$i]; $data['idapplication'] = $res['idapplication'][$i]; $data['id_instance'] = $res['id_instance'][$i]; $data['retour'] = $res['retour'][$i]; $data['retourid'] = $res['retourid'][$i]; $data['commentaire'] = $res['commentaire'][$i]; $data['dt_retour'] = $res['dt_retour'][$i]; $data['dt_creation'] = $res['dt_creation'][$i]; $data['dt_pec'] = $res['dt_pec'][$i]; $data['dt_encours'] = $res['dt_encours'][$i]; $data['dt_fin'] = $res['dt_fin'][$i]; $data['radiologue'] = $res['radiologue'][$i]; $data['adeli'] = $res['adeli'][$i]; $data['ccam'] = $res['ccam'][$i]; $req = new clRequete($base, "radios", $data); $req->addRecord(); } $req = new clRequete(BDD, "radios"); $req->delRecord("idpatient={$idpatient}"); /* // Gestion des formulaires. // Suppression des formulaires du patient sur le terminal de destination. $req = new clRequete ( $base, "formx" ) ; //eko ( $base ) ; if ( ! $exist ) $req->delRecord ( "ids='$idu'" ) ; // Récupération des documents édités du patient sur le terminal source. $req = new clResultQuery ; $param['table'] = 'formx' ; $param['cw'] = "where ids='$idu'" ; $res = $req -> Execute ( "Fichier", "FX_getGen", $param, "ResultQuery" ) ; // Création de chaque document du terminal source sur le terminal de destination. for ( $i = 0 ; isset ( $res['id_instance'][$i]) ; $i++ ) { unset ( $data ) ; $data['id_instance'] = $res['id_instance'][$i] ; $data['ids'] = $res['ids'][$i] ; $data['dt_creation'] = $res['dt_creation'][$i] ; $data['dt_modif'] = $res['dt_modif'][$i] ; $data['idformx'] = $res['idformx'][$i] ; $data['libelle'] = $res['libelle'][$i] ; $data['etape'] = $res['etape'][$i] ; $data['status'] = 'F' ; $data['data'] = $res['data'][$i] ; $data['author'] = $res['author'][$i] ; $req = new clRequete ( $base, "formx", $data ) ; $req->addRecord ( ) ; } */ // Gestion des actes et diagnotics // Suppression des actes et diags du patient sur le terminal de destination. $req = new clRequete($basec, "ccam_cotation_actes"); $req->delRecord("idEvent={$newidpatient}"); // Récupération des actes et des diags du patient sur le terminal source. $req = new clResultQuery(); $param['cw'] = "idEvent='" . $idpatient . "'"; $res = $req->Execute("Fichier", "CCAM_getActesDiagsCotation", $param, "ResultQuery"); // Création de chaque document du terminal source sur le terminal de destination. for ($i = 0; isset($res['identifiant'][$i]); $i++) { unset($data); $data['idEvent'] = $newidpatient; $data['dateEvent'] = $res['dateEvent'][$i]; $data['idDomaine'] = $res['idDomaine'][$i]; $data['dtFinInterv'] = $res['dtFinInterv'][$i]; $data['idu'] = $res['idu'][$i]; $data['ipp'] = $res['ipp'][$i]; $data['nomu'] = $res['nomu'][$i]; $data['pren'] = $res['pren'][$i]; $data['sexe'] = $res['sexe'][$i]; $data['dtnai'] = $res['dtnai'][$i]; $data['dateDemande'] = $res['dateDemande'][$i]; $data['typeAdm'] = $res['typeAdm'][$i]; $data['lieuInterv'] = $res['lieuInterv'][$i]; $data['numUFexec'] = $res['numUFexec'][$i]; $data['Urgence'] = $res['Urgence'][$i]; $data['codeActe'] = $res['codeActe'][$i]; $data['libelleActe'] = $res['libelleActe'][$i]; $data['cotationNGAP'] = $res['cotationNGAP'][$i]; $data['codeActivite4'] = $res['codeActivite4'][$i]; $data['modificateurs'] = $res['modificateurs'][$i]; $data['type'] = $res['type'][$i]; $data['categorie'] = $res['categorie'][$i]; $data['extensionDoc'] = $res['extensionDoc'][$i]; $data['matriculeIntervenant'] = $res['matriculeIntervenant'][$i]; $data['nomIntervenant'] = $res['nomIntervenant'][$i]; $data['numSejour'] = $res['numSejour'][$i]; $data['numUFdem'] = $res['numUFdem'][$i]; $data['validDefinitive'] = $res['validDefinitive'][$i]; $data['quantite'] = $res['quantite'][$i]; $data['periodicite'] = $res['periodicite'][$i]; $data['lesionMultiple'] = $res['lesionMultiple'][$i]; $data['envoi_facturation'] = $res['envoi_facturation'][$i]; $data['envoi_nomIntervenant'] = $res['envoi_nomIntervenant'][$i]; $data['envoi_matriculeIntervenant'] = $res['envoi_matriculeIntervenant'][$i]; $req = new clRequete($basec, "ccam_cotation_actes", $data); $req->addRecord(); } $req = new clRequete(CCAM_BDD, "ccam_cotation_actes"); $req->delRecord("idEvent={$idpatient}"); header('Location:index.php?navi=TGlzdGVfUHJlc2VudHM='); return ""; }
function addListe() { global $options; // On vérifie qu'un item ne porte pas déjà ce nom. $param[cw] = "WHERE nomliste='" . $_POST['nomItemF'] . "' AND categorie='" . $this->type . "'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getListes", $param, "ResultQuery"); // On signale l'erreur si le nom est déjà pris. if ($res[INDIC_SVC][2] > 0) { $this->erreurs .= "Une catégorie portant le nom demandé (\"" . $_POST['nomItemF'] . "\") existe déjà. La création est annulée."; } else { if (eregi("[0-9a-zA-Z]", $_POST['nomItemF'])) { // On positionne correctement le nouvel item et on déplace les autres. if ($options->getOption("Catégories " . $this->type) != "Manuel") { $rang = 1; } else { $param[cw] = "WHERE iditem='" . $_POST['placerF'] . "'"; $res2 = $req->Execute("Fichier", "getListesItems", $param, "ResultQuery"); $rang = $res2[rang][0] + 1; } $param[cw] = "WHERE rang>='{$rang}' AND categorie='" . $this->type . "' AND nomitem='LISTE'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getListesItems", $param, "ResultQuery"); for ($i = 0; isset($res[iditem][$i]); $i++) { $data2[rang] = $res[rang][$i] + 1; $requete = new clRequete(BASEXHAM, "listes", $data2); $requete->updRecord("iditem='" . $res[iditem][$i] . "'"); } // Insertion du nouveau item. $data[categorie] = $this->type; $data[nomliste] = $_POST['nomItemF']; $data[nomitem] = "LISTE"; $data[rang] = $rang; $data[valide] = 1; $requete = new clRequete(BASEXHAM, "listes", $data); $requete->addRecord(); // Message d'information. $this->infos .= "La catégorie de " . $this->type . " \"" . stripslashes($_POST['nomItemF']) . "\" a été ajoutée."; } else { $this->erreurs = "Le nom choisi ne doit pas être vide."; } } }
function ajouterGroupes() { // On vérifie qu'un tableau a bien été transmis. if (is_array($_POST['groupesdispos'])) { // Parcours de ce tableau. while (list($key, $val) = each($_POST['groupesdispos'])) { $param[cw] = "WHERE idutilisateur=" . $_POST['iduser'] . " AND idgroupe={$val}"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getGroupesUtilisateur", $param, "ResultQuery"); if (!$res[INDIC_SVC][2]) { // On récupère les informations de ce droit. $data[idgroupe] = $val; $data[idutilisateur] = $_POST['iduser']; $requete = new clRequete(BASEXHAM, TABLERELUG, $data); $requete->addRecord(); } } } }
function addConsultPatient() { global $session; global $options; $tabSpecialite = $this->tabSpecialite(); if (is_array($_POST['listeGauche'])) { while (list($key, $val) = each($_POST['listeGauche'])) { if ($val and $val != "aucun#") { unset($param); $param[codeActe] = $this->getIdConsultSuiv(); $param[idDomaine] = CCAM_IDDOMAINE; $param[idEvent] = $this->idEvent; $param[dateEvent] = $this->dateEvent; /*if (substr($this->lieuInterv,0,4)=="UHCD"){ if (substr($this->dateEvent,0,10)==date("Y-m-d")) $param[dateDemande]=$this->dateEvent; else $param[dateDemande]=date("Y-m-d")." 08:00:00"; } else $param[dateDemande]=$this->dateEvent;*/ $param[dateDemande] = $this->dateEvent; $param[dtFinInterv] = $this->dtFinInterv; $param[idu] = $this->idu; $param[ipp] = $this->ipp; $param[nomu] = $this->nomu; $param[pren] = $this->pren; $param[sexe] = $this->sexe; $param[dtnai] = $this->dtnai; $param[numSejour] = $this->nsej; $param[typeAdm] = $this->typeAdm; $param[numUFdem] = $this->numUFdem; $param[lieuInterv] = $this->lieuInterv; $param[type] = "ACTE"; $param[Urgence] = "O"; unset($paramRq); $paramRq[code] = $val; $paramRq[idDomaine] = CCAM_IDDOMAINE; //$paramRq[cw]=""; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_get1Consult", $paramRq, "ResultQuery"); if ($res[spe][0] == "Psychiatrie") { $param[cotationNGAP] = "CNPSY 1"; } elseif ($res[spe][0] == "Cardiologie") { $param[cotationNGAP] = "CSC 1"; } elseif ($res[spe][0] == "CARDIOLOGIE") { $param[cotationNGAP] = "CSC 1"; } else { $param[cotationNGAP] = "CS 1"; } $libelleSpe = $res[spe][0]; $param[libelleActe] = "Consultation spécialisée (" . $libelleSpe . ")"; $param[matriculeIntervenant] = $val; $param[nomIntervenant] = $res[nomInterv][0]; global $logs; $logs->addLog("actes", $session->getNaviFull(), "Ajout CS '" . $param[codeActe] . "' : {$val}"); if ($libelleSpe) { if ($tabSpecialite["{$libelleSpe}"]) { $param[numUFexec] = $tabSpecialite["{$libelleSpe}"]; } else { $param[numUFexec] = "3301"; } } else { $param[numUFexec] = "3301"; } $majrq = new clRequete(CCAM_BDD, "ccam_cotation_actes", $param); $sql = $majrq->addRecord(); //Ecriture dans la BAL //if ($this->typeListe=="Sortis") $this->writeBAL($param[codeActe],"creation"); } } } }
function imprDocuments() { global $session; global $options; // Si on se sert du module externe de documents (Brignoles) if ($options->getOption("documentsExterne")) { $this->err1 = ""; $this->err2 = ""; // Chargement du template ModeliXe $mod = new ModeliXe("Mobidoc.html"); $mod->SetModeliXe(); $mod->MxText("errs", $this->err1 . "<br/>" . $this->err2); // Récupération du code HTML généré. $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2))); // CHB Start $cMobidoc = new clMobidocTU($this->patient->getID()); $str = $cMobidoc->OpenMobidoc(); //eko ( $str ) ; if (ereg('NACK-', $str)) { $mod->MxText("errs", "<b>L'appel à mobidoc a échoué (Erreur: COMRPC Impossible)</b>'"); } // CHB Stop /* Ancienne version $str = OpenMobidoc($this->patient->getID ( ),$_SERVER["REMOTE_ADDR"],$options->getOption('CCAMExterne_MRPCPORT'),$options->getOption('CCAMExterne_MRPCTIMEOUT')); //$str = 'ERROR' ; if ( $str == 'ERROR' ) { $mod -> MxText ( "errs", "<b>L'appel à mobidoc a échoué (Erreur: COMRPC Impossible)</b>'") ; } */ return $this->af .= $mod->MxWrite("1"); } else { if ($_POST['Imprimer'] or $_POST['Imprimer_x']) { $session->setLogSup('Impression de documents'); $sel = $_POST['selection']; $docs = new clDocuments("impr"); $date = new clDate(); for ($i = 0; isset($sel[$i]); $i++) { $param[cw] = "WHERE iddocument='" . $sel[$i] . "'"; $req = new clResultQuery(); $ras = $req->Execute("Fichier", "getDocuments", $param, "ResultQuery"); $rep = $date->getYear() . "/" . $date->getMonthNumber() . "/"; $output[$i] = $date->getTimestamp() . "-" . $this->patient->getID() . "-" . $sel[$i] . ".pdf"; $data['idpatient'] = $this->patient->getID(); $data['iddocument'] = $sel[$i]; $data['nomedition'] = $ras['nom'][0]; $data['urledition'] = $rep . $output[$i]; $data['iduser'] = $session->getUser(); $data['date'] = $date->getDatetime(); $requete = new clRequete(BDD, DOCSEDITES, $data); $requete->addRecord(); } $rep = $date->getYear() . "/" . $date->getMonthNumber() . "/"; $docs->genDoc($sel, $this->patient->getID(), $output, URLDOCS . $rep, $rep); } else { // Chargement du template ModeliXe. $mod = new ModeliXe("ImprimerDocuments.mxt"); $mod->SetModeliXe(); $mod->MxImage("imgCloseImprimer", URLIMGFER, "Fermer"); $mod->MxUrl("lienCloseImprimer", URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2))); // Récupération de la liste des catégories de documents. $param['cw'] = " ORDER BY categorie"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getCategoriesDocuments", $param, "ResultQuery"); // Parcours des différentes catégories de documents. for ($i = 0; isset($res['categorie'][$i]); $i++) { // Recherche des dernières versions des documents de la catégorie parcourue. $param['cw'] = "WHERE categorie='" . $res['categorie'][$i] . "' AND fin_validite='0000-00-00 00:00:00' ORDER BY nom"; $req = new clResultQuery(); $ras = $req->Execute("Fichier", "getDocuments", $param, "ResultQuery"); // Si on a un résultat, alors on parcourt ces documents. if ($ras['INDIC_SVC'][2]) { // Et on affiche le titre de la catégorie. $mod->MxText("categorie.titre", $res['categorie'][$i]); $k = 0; for ($j = 0; isset($ras['iddocument'][$j]); $j++) { // Nom du document. $param['cw'] = "WHERE iddocument='" . $ras['iddocument'][$j] . "' AND idpatient='" . $this->patient->getID() . "'"; $req = new clResultQuery(); $rus = $req->Execute("Fichier", "getDocumentsEdites", $param, "ResultQuery"); if ($rus['INDIC_SVC'][2]) { $td = "<td class=\"dejaedite\" style=\"text-align: left;\">"; } else { $td = "<td style=\"text-align: left;\">"; } if (!($j % $options->getOption("DocumentsParLigne")) and $j != 0) { $tr = "<tr>"; if ($k) { $tr .= "<td class=\"nostyle\"></td>"; } } else { $tr = ""; } if (!(($j + 1) % $options->getOption("DocumentsParLigne")) or !isset($ras['iddocument'][$j + 1])) { $ftr = "</tr>"; $k++; } else { $ftr = ""; } $mod->MxText("categorie.documents.tdo", $tr . $td); $mod->MxCheckerField("categorie.documents.c", "checkbox", "selection[]", $ras['iddocument'][$j]); $mod->MxText("categorie.documents.doc", $ras['nom'][$j]); $mod->MxText("categorie.documents.tdf", "</td>{$ftr}"); $mod->MxBloc("categorie.documents", "loop"); } $mod->MxBloc("categorie", "loop"); } } // Variable de navigation dans le cas du lancement des éditions. $mod->MxHidden("hidden1", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "genEdition")); // Variable de navigation dans le cas d'une action d'annulation. $mod->MxHidden("hidden2", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2))); // Récupération du code HTML généré. $this->af .= $mod->MxWrite("1"); } } }
function majDroitsProd() { $data = array(); // On efface les droits de base (idgroupe=0) sur le serveur de production. $raq = new clRequete(BASEXHAM, TABLEDROITS, $data, 'prod'); if ($raq->getConn()) { $ris = $raq->delRecord("idgroupe=0 AND idapplication=" . IDAPPLICATION); // On récupère la liste des droits. $req = new clResultQuery(); $param[cw] = "WHERE idgroupe=0 AND idapplication=" . IDAPPLICATION; $res = $req->Execute("Fichier", "getDroitsTous", $param, "ResultQuery"); //eko ( $res[INDIC_SVC] ) ; // Récupération du nom des attributs d'un droit. while (list($key, $val) = each($res)) { if ($key != "INDIC_SVC" and $key != "iddroit") { $keys[] = $key; } } // Pacours des droits existants. for ($i = 0; isset($res['iddroit'][$i]); $i++) { // Pour chaque droit on vérifie s'il existe en production. $param['cw'] = "WHERE idgroupe=0 AND libelle='" . addslashes($res['libelle'][$i]) . "' AND idapplication=" . IDAPPLICATION; $ras = $req->Execute("Fichier", "getDroitsProd", $param, "ResultQuery"); //eko ( $ras[INDIC_SVC] ) ; // S'il n'existe pas, if (!$ras['INDIC_SVC'][2]) { // On prépare le tableau contenant toutes les données du droit. for ($j = 0; isset($keys[$j]); $j++) { $data[$keys[$j]] = $res[$keys[$j]][$i]; } // On ajoute le droit en production. $raq = new clRequete(BASEXHAM, TABLEDROITS, $data, 'prod'); $ris = $raq->addRecord(); eko("insert : " . $res['libelle'][$i]); // S'il existe déjà, } else { // On prépare le tableau contenant les champs à mettre à jour. for ($j = 0; isset($keys[$j]); $j++) { if ($keys[$j] != "valeur" and $keys[$j] != "idgroupe") { $data[$keys[$j]] = $res[$keys[$j]][$i]; } } // On met à jour le droit en production. $raq = new clRequete(BASEXHAM, TABLEDROITS, $data, 'prod'); $ris = $raq->updRecord("libelle='" . addslashes($res['libelle'][$i]) . "' AND idapplication=" . IDAPPLICATION); eko("update : " . $res['libelle'][$i]); //eko ( $ris ) ; } } // Affichage d'un message d'information. $this->infos .= "La liste des droits a été mise à jour en production."; } }
function addPatientHL7($data, $table, $base = BDD) { global $errs; global $options; // Calcul de la durée depuis lequel le patient est admis. $d1 = new clDate(); $d2 = new clDate($data['dt_admission']); $duree = new clDuree($d1->getDifference($d2)); $duree->invertNegatif(); // Procédure anti-fantôme : si aucun de ces champs n'est saisi, on ne fait pas l'ajout du patient. if ($data['nom'] or $data['prenom'] or $data['sexe'] or $data['ilp']) { // Appel de la classe Requete. $requete = new clRequete($base, $table, $data); // Exécution de la requete. $res = $requete->addRecord(); // eko ( "On ajoute un nouveau patient (nsej=$nsej)" ) ; // Si le patient est admis depuis plus de 30 minutes, alors il est placé dans la table des sortis if ($duree->getMinutes() > $options->getOption('ImportsBasculeSortis')) { $pat = new clPatient($res['cur_id'], '', $base); $pat->sortirPatient('simple'); } $this->news1++; } }
function addGroupe() { // Récupération de la liste des groupes. $param['cw'] = "WHERE nomgroupe=\"" . $_POST['newgroupe'] . "\""; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getGroupes", $param, "ResultQuery"); if ($res['INDIC_SVC'][2]) { $this->erreurs .= "Le groupe \"" . stripslashes($_POST['newgroupe']) . "\" existe déjà, la création est annulée."; } else { $data['nomgroupe'] = $_POST['newgroupe']; // Préparation de la requête. $requete = new clRequete(BASEXHAM, "groupes", $data); // Exécution de la requête. $res = $requete->addRecord(); } }
function addNvxActe() { //eko ("coucou addNvxActe()"); global $session; //Concaténation des correspondances NGAP $cotationNGAP = $this->getCotationNGAP(); unset($param); $param[idActe] = $this->getIdSuiv("NGAP"); if ($cotationNGAP) { $param[libelleActe] = $_POST['libActe']; $param[idDomaine] = CCAM_IDDOMAINE; $cotationNGAP == "aucun#" ? $cotationNGAP = "" : ""; $param[cotationNGAP] = $cotationNGAP; $requete = new clRequete(CCAM_BDD, "ccam_actes_domaine", $param); $requete->addRecord(); $retourInfos[infos] = "L'acte '" . $param[idActe] . "' a été inséré dans la liste restreinte"; } else { $retourInfos[erreur] = "Insertion de l'acte '" . $param[idActe] . "' : \r\n\tLes coefficients saisis ne sont pas numériques ; l'insertion a été annulée"; } return $retourInfos; }
function addDoc() { global $session; global $errs; $date = new clDate(); // Message d'information. $this->infos .= "Création du document \"" . stripslashes($_POST['nomDoc']) . "\" effectuée."; if ($_POST['newCategorie']) { $data[categorie] = $_POST['newCategorie']; } else { if ($_POST['listeCategories']) { $data[categorie] = $_POST['listeCategories']; } else { $data[categorie] = "Non classés"; } } // Vérification de la validité du nom du document. if (eregi("[0-9a-zA-Z]", $_POST['nomDoc'])) { $data[nom] = stripslashes($_POST['nomDoc']); } else { $data[nom] = $date->getDatetime; } $data[contenu] = stripslashes($_POST['contenu']); $data[deb_validite] = $date->getDatetime(); $data[version] = 1; $requete = new clRequete(BDD, "documents", $data); $requete->addRecord(); }
function setSessionSQL() { global $options; // Date actuelle. $date = new clDate(); // On met à jour la session actuelle. $data['nombre'] = "nombre+1"; $data['last'] = $date->getDatetime(); $data['localisation'] = $this->navi; $data['idapplication'] = IDAPPLICATION; // Appel de la classe Requete. $requete = new clRequete(BASEXHAM, TABLESACTU, $data); // Exécution de la requete. $res = $requete->updRecord("uid='" . $this->informations['iduser'] . "' AND type='" . $this->informations['type'] . "' AND idsession='" . $_SESSION['sidtuv2' . $this->index] . "'"); // Affichage pour débugage. if (DEBUGLOGSESSION) { print affTab($res); } // Si la session n'a pas pu mettre à jour, on regarde les différents cas possibles. if (!$res['affected_rows']) { // La session existe-t-elle ? $param['cw'] = "WHERE idsession='" . $_SESSION['sidtuv2' . $this->index] . "'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getSessionsActuelles", $param, "ResultQuery"); // Affichage pour débugage. if (DEBUGLOGSESSION) { print affTab($res['INDIC_SVC']); } // Si la session existe. if ($res['INDIC_SVC'][2]) { // On historise son état actuel. unset($data); $data['idapplication'] = IDAPPLICATION; $data['nombre'] = $res['nombre'][0]; $data['uid'] = $res['uid'][0]; $data['type'] = $res['type'][0]; $data['ip'] = $res['ip'][0]; $data['dateshisto'] = $res['date'][0]; $data['dateslast'] = $res['last'][0]; $data['navigateur'] = $res['navigateur'][0]; $data['fonctions'] = $res['fonctions'][0]; $data['equipes'] = $res['equipes'][0]; $data['organisations'] = $res['organisations'][0]; // Appel de la classe Requete. $requete = new clRequete(BASEXHAM, TABLESHIST, $data); // Exécution de la requete. $res = $requete->addRecord(); // Affichage pour débugage. if (DEBUGLOGSESSION) { affTab($res); } // Puis on met à jour cette session. unset($data); $data['idapplication'] = IDAPPLICATION; $data['nombre'] = "1"; $data['localisation'] = $this->navi; $data['uid'] = $this->informations['iduser']; $data['type'] = $this->informations['type']; $data['ip'] = $_SERVER['REMOTE_ADDR']; $data['date'] = $date->getDatetime(); $data['last'] = $date->getDatetime(); $data['navigateur'] = $this->informations['navigateur']; $data['fonctions'] = implode('|', isset($this->informations['fonctions']) ? $this->informations['fonctions'] : array()); $data['equipes'] = implode('|', isset($this->informations['service']) ? $this->informations['service'] : array()); $data['organisations'] = $this->informations['org']; // Appel de la classe Requete. $requete = new clRequete(BASEXHAM, TABLESACTU, $data); // Exécution de la requete. $res = $requete->updRecord("idsession='" . $_SESSION['sidtuv2' . $this->index] . "'"); // Affichage pour débugage. if (DEBUGLOGSESSION) { print affTab($res); } } else { // Si la session n'existe pas, on la crée avec les bonnes informations. unset($data); if ($this->navi != "Importation" and $this->navi != "SW1wb3J0YXRpb24=" and $this->navi != "Q29uZmlndXJhdGlvbnxjcm9u") { $param[cw] = "WHERE uid='" . $this->informations['iduser'] . "'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getSessionsActuelles", $param, "ResultQuery"); if (DEBUGLOGSESSION) { print affTab($res['INDIC_SVC']); } if ($res['INDIC_SVC'][2] and $options->getOption("UniqLogin") and !$_POST['AuthentificationDemandee']) { $this->informations = ''; $this->informations['type'] = "Echec"; $this->informations['nom'] = "Invité"; $this->informations['prenom'] = "Invité"; $this->informations['pseudo'] = "Invité"; $this->informations['mail'] = "*****@*****.**"; $this->informations['iduser'] = "******"; $this->informations['idgroupe'] = "1"; $this->informations['ip'] = $_SERVER['REMOTE_ADDR']; $this->informations['navigateur'] = $_SERVER["HTTP_USER_AGENT"]; $this->informations['fonctions'] = array(); $this->informations['service'] = array(); $this->informations['org'] = ''; // Sauvegarde des informations. $_SESSION['informations'] = $this->informations; } else { $data['idapplication'] = IDAPPLICATION; $data['nombre'] = "1"; $data['localisation'] = $this->navi; $data['uid'] = $this->informations['iduser']; $data['type'] = $this->informations['type']; $data['ip'] = $_SERVER['REMOTE_ADDR']; $data['date'] = $date->getDatetime(); $data['last'] = $date->getDatetime(); $data['idsession'] = $_SESSION['sidtuv2' . $this->index]; $data['navigateur'] = $this->informations['navigateur']; $data['fonctions'] = implode('|', isset($this->informations['fonctions']) ? $this->informations['fonctions'] : array()); $data['equipes'] = implode('|', isset($this->informations['service']) ? $this->informations['service'] : array()); $data['organisations'] = $this->informations['org']; // Appel de la classe Requete. $requete = new clRequete(BASEXHAM, TABLESACTU, $data); // Exécution de la requete. $res = $requete->addRecord(); // Affichage pour débugage. if (DEBUGLOGSESSION) { print affTab($res); } } } } } if ($options->getOption("UniqLogin")) { $requete = new clRequete(BASEXHAM, TABLESACTU); // Exécution de la requete. $res = $requete->delRecord("uid='" . $this->informations['iduser'] . "' AND last<'" . $date->getDatetime() . "' AND idsession!='" . $_SESSION['sidtuv2' . $this->index] . "'"); if (DEBUGLOGSESSION) { print affTab($res); } } // Maintenant, on historise les sessions qui ne sont plus valides et on les supprime // de la table des sessions actuelles. $dmax = $options->getOption("DureeSession"); $dact = $date->getDatetime(); $date->addMinutes("-{$dmax}"); $param['cw'] = "WHERE last<'" . $date->getDatetime() . "' AND idapplication=" . IDAPPLICATION; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getSessionsActuelles", $param, "ResultQuery"); // Affichage pour débugage. if (DEBUGLOGSESSION) { print affTab($res[INDIC_SVC]); } for ($i = 0; isset($res['idsactu'][$i]); $i++) { unset($data); $data['idapplication'] = IDAPPLICATION; $data['nombre'] = $res['nombre'][$i]; $data['uid'] = $res['uid'][$i]; $data['type'] = $res['type'][$i]; $data['ip'] = $res['ip'][$i]; $data['dateshisto'] = $res['date'][$i]; $data['dateslast'] = $res['last'][$i]; $data['navigateur'] = $res['navigateur'][$i]; $data['fonctions'] = $res['fonctions'][$i]; $data['equipes'] = $res['equipes'][$i]; $data['organisations'] = $res['organisations'][$i]; // Appel de la classe Requete. $requete = new clRequete(BASEXHAM, TABLESHIST, $data); // Exécution de la requete. $ras = $requete->addRecord(); // Affichage pour débugage. if (DEBUGLOGSESSION) { affTab($ras); } unset($data); $data['idapplication'] = IDAPPLICATION; $data['nombre'] = "1"; // Appel de la classe Requete. $requete = new clRequete(BASEXHAM, TABLESACTU, $data); // Exécution de la requete. $rus = $requete->delRecord("idsession='" . $res['idsession'][$i] . "'"); // Affichage pour débugage. if (DEBUGLOGSESSION) { print affTab($rus); } } }
function addPatientSQL($idimport, $table) { global $errs; global $news1; global $mods1; global $errs1; global $news2; global $mods2; global $errs2; // Récupération des informations sur le patient à créer. $param['cw'] = "WHERE idimport='{$idimport}'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getImports", $param, "ResultQuery"); $i = 0; if ($res['uf'][$i] == '6004') { $base = 'terminal2_tuv2'; $news2++; } else { $base = BDD; $news1++; } if ($res['INDIC_SVC'][2]) { $ras = $req->Execute("Fichier", "getMaxIdToulon", $param, "ResultQuery"); $max = 1; for ($j = 0; isset($ras['idpatient'][$j]); $j++) { if ($ras['idpatient'][$j] > $max) { $max = $ras['idpatient'][$j]; } } $max++; $data['idpatient'] = $max; $data['idu'] = $res['idu'][$i]; $data['ilp'] = $res['ilp'][$i]; $data['nsej'] = $res['idpass'][$i]; $data['uf'] = $res['uf'][$i]; $data['nom'] = $res['nom'][$i]; $data['prenom'] = $res['prenom'][$i]; $data['sexe'] = $res['sexe'][$i]; $data['dt_naissance'] = $res['dt_naissance'][$i]; $data['adresse_libre'] = $res['adresse_libre'][$i]; $data['adresse_cp'] = $res['adresse_cp'][$i]; $data['adresse_ville'] = $res['adresse_ville'][$i]; $data['telephone'] = $res['telephone'][$i]; $data['prevenir'] = str_replace('^', '<br/>', $res['prevenir'][$i]); $data['medecin_traitant'] = $res['medecin_traitant'][$i]; $data['dt_admission'] = $res['dt_admission'][$i]; $data['mode_admission'] = $res['mode_admission'][$i]; $data['iduser'] = "******"; $data['manuel'] = 0; //newfct ( gen_affiche_tableau, $data ) ; // Calcul de la durée depuis lequel le patient est admis. $d1 = new clDate(); $d2 = new clDate($data['dt_admission']); $duree = new clDuree($d1->getDifference($d2)); $duree->invertNegatif(); // Appel de la classe Requete. $requete = new clRequete($base, $table, $data); // Exécution de la requete. $res = $requete->addRecord(); // Si le patient est admis depuis plus de 30 minutes, alors il est placé dans la table des sortis if ($duree->getMinutes() > 30) { $pat = new clPatient($res['cur_id'], '', $base); $pat->sortirPatient('simple'); } // Mise à jour de la date de traitement de l'import. $date = new clDate(); $data2['dt_traitement'] = $date->getDatetime(); // Appel de la classe Requete. $requete = new clRequete(BDD, IMPORTS, $data2); // Exécution de la requete. $requete->updRecord("idimport='{$idimport}'"); } else { // En cas d'erreur, on la signale... $errs->addErreur("clImportation : Impossible d'importer ce nouveau patient, l'identifiant de l'import est introuvable (idimport=\"{$idimport}\")."); $errs1++; $errs2++; } }
function setStartTime($date) { if ($this->isActive()) { return true; } $data = array('id_trigger' => $this->getIdTrigger(), 'date_debut' => $date->getDatetime()); $obRequete = new clRequete(BDD, 'enquetes', $data); $obRequete->addRecord(); return true; }
function tarifsNGAP() { global $session; //On a lancer le rapatriement des tarifs depuis Pastel if ($_POST['imgCalcul_x'] and $session->getDroit("CCAM_TarifsNGAP", "w")) { $req = new clResultQuery(); $res = $req->Execute("Fichier", "Tarifs_getTarifNGAP", array(), "ResultQuery"); eko($res); $mail = ""; for ($i = 0; isset($res[LC][$i]); $i++) { $lc = $res[LC][$i]; unset($param); //if ($res[TARIF][$i]!="0"){ // code de Christophe Boulet if ($res[TARIF][$i] >= 0) { // modification François Derock $param[tarif] = str_replace(",", ".", $res[TARIF][$i]); $req = new clResultQuery(); unset($paramRq); $paramRq[cw] = "lc='{$lc}'"; $res2 = $req->Execute("Fichier", "CCAM_getLC", $paramRq, "ResultQuery"); //eko($res2[INDIC_SVC]); if ($res2[INDIC_SVC][2]) { $requete = new clRequete(CCAM_BDD, "ccam_lettres_cle", $param); $retourRequete = $requete->updRecord("lc='{$lc}'"); } else { $param[lc] = $param[lcNat] = $lc; $requete = new clRequete(CCAM_BDD, "ccam_lettres_cle", $param); $retourRequete = $requete->addRecord(); } } else { $mail .= "{$lc}, "; } } if ($mail) { $mail = substr($mail, 0, -2); $content_type = "Content-Type: text/html; charset=\"iso-8859-1\""; $head = "From: " . Erreurs_MailApp . "\n" . $content_type . "\n"; $sujetMail = "Terminal des urgences : Mise à jour des tarifs des lettres-clé NGAP"; $txtMsg = "<b>Anomalie : </b>La mise à jour des tarifs (source PASTEL) renvoit '0' pour les lettres-clé suivantes : {$mail}<br>\r\n\t\t\t==> Les tarifs n'ont pas été mis à jour pour ces lettres-clés<p>\r\n\t\t\t<i>Ce mail est envoyé automatiquement</i>"; mail(Erreurs_Mail . "," . Erreurs_Mail_WebMaster, $sujetMail, $txtMsg, $head); // $retourInfos[erreur] = "Certains tarifs sont à '0' dans PASTEL. Un mail de synthèse a été envoyé. Leur mise à jour a été annulée."; } else { $content_type = "Content-Type: text/html; charset=\"iso-8859-1\""; $head = "From: " . Erreurs_MailApp . "\n" . $content_type . "\n"; $sujetMail = "Terminal des urgences : Mise à jour des tarifs des lettres-clé NGAP"; $txtMsg = "Les correspondances nationales et les tarifs ont été mis à jour à partir des données PASTEL<p>\r\n\t\t<i>Ce mail est envoyé automatiquement</i>"; mail(Erreurs_Mail . "," . Erreurs_Mail_WebMaster, $sujetMail, $txtMsg, $head); // $retourInfos[infos] = "Les correspondances nationales et les tarifs ont été mis à jour à partir des données PASTEL"; } } //On a validé les modifications if ($_POST['imgValider_x'] and $session->getDroit("CCAM_TarifsNGAP", "w")) { $req = new clResultQuery(); unset($paramRq); $paramRq[cw] = "lc!=''"; $res = $req->Execute("Fichier", "CCAM_getLC", $paramRq, "ResultQuery"); //eko($res[INDIC_SVC]); for ($i = 0; isset($res[lc][$i]); $i++) { $lc = $res[lc][$i]; $varLC = "LC_" . $lc; $tarifLC = "tarif_" . $lc; unset($param); $param[lcNat] = $_POST[$varLC]; $param[tarif] = str_replace(",", ".", $_POST[$tarifLC]); $requete = new clRequete(CCAM_BDD, "ccam_lettres_cle", $param); $retourRequete = $requete->updRecord("lc='{$lc}'"); } $retourInfos[infos] = "Les correspondances nationales et les tarifs ont été modifiés"; } // Appel du template $mod = new ModeliXe("CCAM_TarifsNGAP.mxt"); $mod->SetModeliXe(); if ($retourInfos[infos]) { $this->infos = $retourInfos[infos]; } elseif ($retourInfos[erreur]) { $this->erreurs = $retourInfos[erreur]; } if ($session->getDroit("CCAM_TarifsNGAP", "w")) { if (!$_POST['imgModifier_x']) { $mod->MxFormField("modifier.imgModifier", "image", "imgModifier", "", "src=\"" . URLIMG . "modifier2.gif\" align=\"abscenter\" \r\n\t\t\ttitle=\"Modifier les correspondances nationales et les tarifs\""); $mod->MxFormField("maj.imgCalcul", "image", "imgCalcul", "", "src=\"" . URLIMG . "calculer.gif\" align=\"abscenter\" \r\n\t\t\ttitle=\"Rapatrier les tarifs depuis PASTEL\""); $mod->MxBloc("valider", "delete"); } else { $mod->MxFormField("valider.imgValider", "image", "imgValider", "", "src=\"" . URLIMG . "Ok.gif\" align=\"abscenter\" \r\n\t\t\ttitle=\"Valider les modifications\""); $mod->MxFormField("valider.imgAnnuler", "image", "imgAnnuler", "", "src=\"" . URLIMG . "annuler2.gif\" align=\"abscenter\" \r\n\t\t\ttitle=\"Annuler les modifications\""); $mod->MxBloc("maj", "delete"); $mod->MxBloc("modifier", "delete"); } } else { $mod->MxBloc("modifier", "delete"); $mod->MxBloc("valider", "delete"); $mod->MxBloc("maj", "delete"); } $req = new clResultQuery(); unset($paramRq); $paramRq[cw] = "lc!=''"; $res = $req->Execute("Fichier", "CCAM_getLC", $paramRq, "ResultQuery"); //eko($res[INDIC_SVC]); for ($i = 0; isset($res[lc][$i]); $i++) { $lc = $res[lc][$i]; $mod->MxText("ligneLC.LC", $lc); if (!$_POST['imgModifier_x']) { $mod->MxText("ligneLC.LCnat", $res[lcNat][$i]); $mod->MxText("ligneLC.tarif", $res[tarif][$i]); } else { $varLC = "LC_" . $lc; $mod->MxFormField("ligneLC.LCnat", "text", $varLC, $res[lcNat][$i], "size=\"10\""); $tarifLC = "tarif_" . $lc; $mod->MxFormField("ligneLC.tarif", "text", $tarifLC, $res[tarif][$i], "size=\"10\""); } $mod->MxBloc("ligneLC", "loop"); } //Ne jamais afficher les boutons suivants // Affichage ou non du champs d'informations. if ($this->infos) { $mod->MxText("informations.infos", $this->infos); } else { $mod->MxBloc("informations", "delete"); } // Affichage ou non du champs d'erreurs. if ($this->erreurs) { $mod->MxText("erreurs.errs", $this->erreurs); } else { $mod->MxBloc("erreurs", "delete"); } $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0), $session->getNavi(1))); $this->af .= $mod->MxWrite("1"); }
function ajouterActeur() { $param['cw'] = "WHERE password='******'password'])) . "'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "authCodeAcces", $param, "ResultQuery"); if (!$_POST['nomActeur']) { $this->erreurs .= "Le nom ne doit pas être vide. La création est annulée.<br/>"; } if ($res['INDIC_SVC'][2]) { $this->erreurs .= "Ce mot de passe est déjà utilisé. La création est annulée.<br/>"; } if (!$this->erreurs) { $data['nomActeur'] = stripslashes($_POST['nomActeur']); $data['mailActeur'] = stripslashes($_POST['mailActeur']); $data['password'] = stripslashes($_POST['password']); $req = new clRequete(BASEXHAM, TABLEACTEURS, $data); $ris = $req->addRecord(); $this->infos .= "La création a réussi."; unset($_POST['idActeur']); } }
function majOptionsProd() { // Récupération de la liste des options en dev. $req = new clResultQuery(); $param['cw'] = "WHERE idapplication=" . IDAPPLICATION; $res = $req->Execute("Fichier", "getOptions", $param, "ResultQuery"); //eko ( $res[INDIC_SVC] ) ; // Préparation de la liste des attributs d'une option. while (list($key, $val) = each($res)) { if ($key != "INDIC_SVC" and $key != "idoption") { $keys[] = $key; } } // Pour chaque option, for ($i = 0; isset($res['idoption'][$i]); $i++) { // On regarde si elle existe en production. $param['cw'] = "WHERE libelle='" . addslashes($res['libelle'][$i]) . "' AND idapplication=" . IDAPPLICATION; $ras = $req->Execute("Fichier", "getOptionsProd", $param, "ResultQuery"); //eko ( $ras[INDIC_SVC] ) ; // S'il elle n'existe pas, if (!$ras['INDIC_SVC'][2]) { // On prépare le tableau contenant les données de l'option. for ($j = 0; isset($keys[$j]); $j++) { $data[$keys[$j]] = $res[$keys[$j]][$i]; } // Et on crée cette option en production. $raq = new clRequete(BASEXHAM, TABLEOPTS, $data, 'prod'); $ris = $raq->addRecord(); eko("insert : " . $res['libelle'][$i]); // Si elle existe, } else { // On crée le tableau contenant les champs à mettre à jour. for ($j = 0; isset($keys[$j]); $j++) { if ($keys[$j] != "valeur") { $data[$keys[$j]] = $res[$keys[$j]][$i]; } } // Mise à jour de l'option. eko("update : " . $res['libelle'][$i]); $raq = new clRequete(BASEXHAM, TABLEOPTS, $data, 'prod'); $ris = $raq->updRecord("libelle='" . addslashes($res['libelle'][$i]) . "' AND idapplication=" . IDAPPLICATION); } } // Message d'information sur l'opération effectuée. $this->infos .= "La liste des droits a été mise à jour en production."; }
function copierActes() { global $session; //Récupération des actes affectés au diagnostic sélectionné unset($param); $param[idDomaine] = CCAM_IDDOMAINE; $param[idListeSelection1] = $_POST[idListeSelection1]; $param[cw] = ""; $param[order] = "identifiant"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getActesDiags", $param, "ResultQuery"); //eko($res[INDIC_SVC]); unset($actes); for ($i = 0; isset($res[identifiant][$i]); $i++) { $actes[] = $res[identifiant][$i]; } if (is_array($_POST['listeDroite'])) { while (list($key, $val) = each($_POST['listeDroite'])) { if ($val and $val != "aucun#") { reset($actes); for ($i = 0; $i < count($actes); $i++) { unset($param); $param[idDomaine] = CCAM_IDDOMAINE; $param[idListeSelection1] = $val; $param[cw] = "and rel.idActe='{$actes[$i]}'"; $param[order] = "identifiant"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getActesDiags", $param, "ResultQuery"); //eko($res[INDIC_SVC]); if ($res[INDIC_SVC][2] == 0) { unset($param); $param[idDiag] = $val; $param[idDomaine] = CCAM_IDDOMAINE; $param[idActe] = $actes[$i]; $majrq = new clRequete(CCAM_BDD, "ccam_actes_diagnostic", $param); $majrq->addRecord(); } } } } $retourInfos = "Les actes rattachés au diagnostic '" . $_POST['idListeSelection1'] . "' ont été affectés aux diagnostics sélectionnés"; return $retourInfos; } }
function addPatientPresent() { global $session; global $listeMois; global $options; // Si la confirmation d'ajout est présente, alors on ajoute le nouveau patient dans la table. if ($_POST['ValiderAjouter'] or $_POST['ValiderAjouter_x']) { global $errs; // Préparation de la date d'admission. $date = new clDate(); $dateN = new clDate($_POST['naissance']); /*if ( $options -> getOption ( "DoubleEtablissement" ) AND ! ( $options -> getOption ( 'DoubleSansCom' ) ) ) { $req = new clResultQuery ; $ras = $req -> Execute ( "Fichier", "getMaxIdToulon", array(), "ResultQuery" ) ; $max = 1 ; for ( $j = 0 ; isset ( $ras['idpatient'][$j] ) ; $j++ ) if ( $ras['idpatient'][$j] > $max ) $max = $ras['idpatient'][$j] ; $max++ ; eko ( "Double Etablissement : Calcul du max ($max)" ) ; $data['idpatient'] = $max ; }*/ // Remplissage des champs pour la requête. $data['idu'] = "X"; $data['ilp'] = "X"; $data['nsej'] = "X"; $data['uf'] = $options->getOption("AjoutManuelUF"); $data['sexe'] = $_POST['sexe']; $data['prenom'] = $_POST['prenom']; $data['nom'] = $_POST['nom']; $data['dt_admission'] = $date->getDatetime(); $data['dt_naissance'] = $dateN->getDatetime(); $data['adresse_libre'] = $_POST['adresse']; $data['adresse_cp'] = $_POST['cp']; $data['adresse_ville'] = $_POST['ville']; $data['telephone'] = $_POST['telephone']; $data['salle_examen'] = $_POST['salle']; $data['dest_souhaitee'] = $_POST['destSouhaitee']; $data['dest_attendue'] = $_POST['destAttendue']; $data['adresseur'] = $_POST['adresseur']; $data['medecin_urgences'] = $_POST['medecin']; if ($_POST['medecin']) { $data[dt_examen] = $date->getDatetime(); } $data['recours_categorie'] = $_POST['categorieRecours']; $data['manuel'] = 1; // Préparation de la requête. $requete = new clRequete(BDD, PPRESENTS, $data); // Exécution de la requête. $resu = $requete->addRecord(); // On signale les éventuelles erreurs rencontrées. if ($resu['error']) { $errs->addErreur("clListesPatients : Erreur lors de la bascule d'un patient attendu en patient présent (" . $resu[error] . ")."); } $param['table'] = PPRESENTS; $param['cw'] = "WHERE idu='X'"; $req = new clResultQuery(); $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery"); for ($i = 0; isset($res['idpatient'][$i]); $i++) { $data2['idu'] = "MANU" . $res['idpatient'][$i]; $data2['ilp'] = "MANU" . $res['idpatient'][$i]; $data2['nsej'] = "MANU" . $res['idpatient'][$i]; // Préparation de la requête. $requete = new clRequete(BDD, PPRESENTS, $data2); // Exécution de la requête. $requete->updRecord("idpatient='" . $res['idpatient'][$i] . "'"); header('Location:' . URLNAVI . $session->genNavi($session->getNavi(0))); } } else { // Sinon, nous affichons le formulaire d'ajout d'un nouveau patient présent. // Chargement du template ModeliXe. $mod = new ModeliXe("addPresent.html"); $mod->SetModeliXe(); // Préparation du titre, des images, des urls... $mod->MxText("titre", "Ajouter un nouveau patient présent"); $mod->MxImage("imgClose", URLIMGFER, "Annuler"); $mod->MxUrl("lienClose", URLNAVI . $session->genNavi($session->getNavi(0))); // Champs IDU, IPP, et nsej... // $mod -> MxFormField ( "idu", "text", "idu", $_POST['idu'], "size=\"47\" maxlength=\"50\"" ) ; // $mod -> MxFormField ( "ilp", "text", "ilp", $_POST['ilp'], "size=\"47\" maxlength=\"50\"" ) ; // $mod -> MxFormField ( "nsej", "text", "nsej", $_POST['nsej'], "size=\"47\" maxlength=\"50\"" ) ; // Champs de l'état civil du patient. $data['M'] = "Homme"; $data['F'] = "Femme"; $data['I'] = "Indéterminé"; $javascript1 = XhamTools::genAjax('onKeyUp', 'getPatients', 'navi=' . $session->genNavi('Ajax', 'getPatientsSortis')); $javascript3 = XhamTools::genAjax('onChange', 'getPatients', 'navi=' . $session->genNavi('Ajax', 'getPatientsSortis')); $javascript1 = XhamTools::genAjaxWithTempo('getPatients', 'navi=' . $session->genNavi('Ajax', 'getPatientsSortis')); $mod->MxSelect("sexe", "sexe", $_POST['sexe'], $data, '', '', 'class="w300" ' . "{$javascript3}"); $mod->MxFormField("prenom", "text", "prenom", $_POST['prenom'], "size=\"47\" maxlength=\"50\" {$javascript1} {$javascript3}"); $mod->MxFormField("nom", "text", "nom", $_POST['nom'], "size=\"47\" maxlength=\"50\" {$javascript1} {$javascript3}"); // Gestion des champs de la date de naissance. $_POST['naissance'] = date('d/m/Y'); $mod->MxFormField("naissance", "text", "naissance", $_POST['naissance'], "id=\"naissance\""); // Adresse et téléphone du patient. $mod->MxFormField("adresse", "text", "adresse", $_POST['adresse'], "size=\"47\" maxlength=\"128\""); $mod->MxFormField("telephone", "text", "telephone", $_POST['telephone'], "size=\"47\" maxlength=\"64\""); $mod->MxFormField("cp", "text", "cp", $_POST['cp'], "size=\"5\" maxlength=\"5\""); $mod->MxFormField("ville", "text", "ville", $_POST['ville'], "size=\"38\" maxlength=\"64\""); // Préparation des listes dynamiques. $listeCom = new clListes("Recours", "recup"); $listeGen = new clListesGenerales("recup"); $listeMedecins = $listeGen->getListeItems("Médecins", "1", '', '', "1"); $listeSalles = $listeGen->getListeItems("Salles d'examens", "1", '', '', "1"); $listeCategoriesRecours = $listeCom->getListes("", "1"); $listeDestSouhaitees = $listeGen->getListeItems("Destinations souhaitées", "1", '', '', "1"); $listeDestAttendues = $listeGen->getListeItems("Destinations attendues", "1", '', '', "1"); // Affichage des listes dynamiques. $mod->MxSelect("medecin", "medecin", $_POST['medecin'], $listeMedecins, '', '', 'class="w300"'); $mod->MxSelect("salle", "salle", $_POST['salle'], $listeSalles, '', '', 'class="w300"'); $mod->MxSelect("categorieRecours", "categorieRecours", $_POST['categorieRecours'], $listeCategoriesRecours, '', '', 'class="w300"'); $mod->MxSelect("destSouhaitee", "destSouhaitee", $_POST['destSouhaitee'], $listeDestSouhaitees, '', '', 'class="w300"'); $mod->MxSelect("destAttendue", "destAttendue", $_POST['destAttendue'], $listeDestAttendues, '', '', 'class="w300"'); // Suppression du bouton de modification inutile ici. $mod->MxBloc("modifier", "modify", " "); // Variable de navigation. $mod->MxHidden("hidden", "navi=" . $session->genNavi($session->getNavi(0), "addPatientPresent")); // Récupération du code HTML généré par le template ModeliXe. $this->af .= $mod->MxWrite("1"); } }
function addItem($nomListe) { global $options; // On vérifie qu'un item ne porte pas déjà ce nom. $param[cw] = "WHERE nomitem='" . $_POST['nomItemF'] . "' AND nomliste='{$nomListe}'"; $param[idDomaine] = CCAM_IDDOMAINE; $param[order] = ""; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getListesItems", $param, "ResultQuery"); //newfct(gen_affiche_tableau,$res[INDIC_SVC]); // On signale l'erreur si le nom est déjà pris. if ($res[INDIC_SVC][2] > 0) { $this->erreurs .= "Dans la liste \"{$nomListe}\", un item portant ce nom \r\n\t\t(\"" . $_POST['nomItemF'] . "\") existe déjà. La création est annulée."; } else { // Nouveau nom correct. if (eregi("[0-9a-zA-Z]", $_POST['nomItemF'])) { // On positionne correctement le nouvel item et on déplace les autres. if ($options->getOption(stripslashes($nomListe)) != "Manuel") { $rang = 1; } else { $param[cw] = "WHERE iditem='" . $_POST['placerF'] . "' and nomliste='{$nomListe}'"; $param[idDomaine] = CCAM_IDDOMAINE; $param[order] = ""; $res2 = $req->Execute("Fichier", "CCAM_getListesItems", $param, "ResultQuery"); //newfct(gen_affiche_tableau,$res[INDIC_SVC]); $rang = $res2[rang][0] + 1; } $param[cw] = "WHERE rang>='{$rang}' AND nomliste='{$nomListe}'"; $param[idDomaine] = CCAM_IDDOMAINE; $param[order] = ""; $req = new clResultQuery(); $res = $req->Execute("Fichier", "CCAM_getListesItems", $param, "ResultQuery"); //newfct(gen_affiche_tableau,$res[INDIC_SVC]); for ($i = 0; isset($res[iditem][$i]); $i++) { $data2[rang] = $res[rang][$i] + 1; $requete = new clRequete(CCAM_BDD, "ccam_liste", $data2); $requete->updRecord("iditem='" . $res[iditem][$i] . "' and idDomaine=" . CCAM_IDDOMAINE); } // Insertion du nouveau item. $data[categorie] = "ListesCCAM"; $data[nomliste] = $nomListe; $data[nomitem] = $_POST['nomItemF']; $data[rang] = $rang; $data[idDomaine] = CCAM_IDDOMAINE; $requete = new clRequete(CCAM_BDD, "ccam_liste", $data); $requete->addRecord(); // Message d'information. $this->infos .= "L'item \"" . $_POST['nomItemF'] . "\" a été ajouté dans la liste \"" . stripslashes($nomListe) . "\"."; } else { $this->erreurs .= "Le nom choisi ne doit pas être vide."; } } }
function insertPatient($table) { global $session; global $errs; // Appel de la classe Requete. $this->patient[idpatient] = $this->idpatient; //$this->patient[iduser] = $session->getUser ; $requete = new clRequete($this->base, $table, $this->patient); // Exécution de la requete. $res = $requete->addRecord(); //$errs -> addErreur ( "Débugage (c'est normal) : Insertion d'un patient dans la table $table<br>Requête : ".$res[requete]."<br>error : ".$res[error]."<br>errno : ".$res[errno]."<br>current_id : ".$res[cur_id] ) ; if (!$res[error]) { return 1; } else { $errs->addErreur("clPatient : " . $res[error]); } }
function addNvxPack() { global $session; unset($param); $param[idActe] = $this->getIdSuiv("PACK"); $param[libelleActe] = $_POST['libActe']; $param[idDomaine] = CCAM_IDDOMAINE; //echo "<br>$param[idActe]"; $requete = new clRequete(CCAM_BDD, "ccam_actes_domaine", $param); $requete->addRecord(); $retourInfos[infos] = "Le pack '" . $param[idActe] . "' a été inséré dans la liste restreinte"; return $retourInfos; }