예제 #1
0
파일: GetDateE2.php 프로젝트: jeromecc/tuv2
function getDateE2($formx)
{
    global $tool;
    $idu = $formx->getVar('ids');
    $req = new clResultQuery();
    $param = array();
    $param['cw'] = "dt_naissance";
    $param['idu'] = $idu;
    $res = $req->Execute("Fichier", "getInfoPatientFromIDU", $param, "ResultQuery");
    $DateNPat = $res['dt_naissance'][0];
    //eko($DateNPat);
    // Calcul sur les différentes dates.
    $age = new clDate($DateNPat);
    $dateSimple = $age->getDate("d-m-Y");
    $dateComple = $age->getDateText();
    $duree = new clDuree();
    return "" . utf8_encode($dateComple) . "";
}
예제 #2
0
function getPatientMineur($formx)
{
    global $tool;
    $idu = $formx->getVar('ids');
    $req = new clResultQuery();
    $param = array();
    $param['cw'] = "dt_naissance";
    $param['idu'] = $idu;
    $res = $req->Execute("Fichier", "getInfoPatientFromIDU", $param, "ResultQuery");
    $DateNPat = $res['dt_naissance'][0];
    //eko($DateNPat);
    // Calcul sur les différentes dates.
    $age = new clDate($DateNPat);
    $dateSimple = $age->getDate("d-m-Y");
    $dateComple = $age->getDateText();
    $duree = new clDuree();
    $duree->getAgePrecis($age->getTimestamp());
    if ($duree->getYears() < 18) {
        return "mineur";
    } else {
        return "majeur";
    }
}
예제 #3
0
파일: clPatient.php 프로젝트: jeromecc/tuv2
 static function genInfoBulle($res, $i)
 {
     global $options;
     $e = '';
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("InfoBulle.mxt");
     $mod->SetModeliXe();
     // Génération de l'id pour rattacher l'info-bulle à une entrée de la liste.
     $mod->MxText("iddiv", "id" . $res['idpatient'][$i]);
     $libelle = '';
     $libelle .= "<b>idpatient : </b>" . $res['idpatient'][$i] . "<br/>";
     if ($res['idu'][$i] != $res['ilp'][$i]) {
         $libelle .= "<b>IDU : </b>" . $res['idu'][$i] . "<br/>";
     }
     $libelle .= "<b>IPP : </b>" . $res['ilp'][$i] . "<br/>";
     $libelle .= "<b>NSej : </b>" . $res['nsej'][$i] . "<br/>";
     // Affichage des informations sur l'UF
     $ufExec = $options->getOption('numUFexec');
     $ufUHCD = $options->getOption('numUFUHCD');
     $ufUHCDrepere = $options->getOption('numUFUHCDrepere');
     $ufSC = $options->getOption('numUFSC');
     $dtUHCD = new clDate($res['dt_UHCD'][$i]);
     if ($res['uf'][$i] == $ufUHCD) {
         $sup = '(UHCD)';
     } elseif ($res['uf'][$i] == $ufSC) {
         $sup = '(Soins Continus)';
     } elseif ($res['uf'][$i] == $ufUHCDrepere and $res['uf'][$i]) {
         $sup = '(UHCD repéré)';
     } elseif (!$res['uf'][$i]) {
         $sup = '(???)';
     } else {
         $sup = '(Urgences)';
     }
     $libelle .= "<b>UF : </b>" . $res['uf'][$i] . " {$sup}<br/>";
     // Etat civil
     $libelle .= "<b>(" . $res['sexe'][$i] . ") " . ucfirst(strtolower($res['prenom'][$i])) . " " . strtoupper($res['nom'][$i]) . "</b><br />";
     $age = new clDate($res['dt_naissance'][$i]);
     $dta = new clDate($res['dt_admission'][$i]);
     $dte = new clDate($res['dt_examen'][$i]);
     $dts = new clDate($res['dt_sortie'][$i]);
     $dateSimple = $age->getDate("d-m-Y");
     $dateComple = $age->getDateText();
     $duree = new clDuree();
     if ($res['dt_naissance'][$i] != "0000-00-00 00:00:00") {
         $libelle .= "Né{$e} le {$dateComple} (" . str_replace("<br>", " et ", $duree->getAgePrecis($age->getTimestamp())) . ")<br />";
     } else {
         $libelle .= "Date de naissance inconnue<br />";
     }
     // Date d'admission.
     if ($res['dt_admission'][$i] != "0000-00-00 00:00:00") {
         $libelle .= "<b>Date d'admission :</b> " . $dta->getDate("d-m-Y H:i") . "<br />";
     } else {
         $libelle .= "<b>Date d'admission :</b> " . VIDEDEFAUT . "<br />";
     }
     // Date d'examen.
     if ($res['dt_examen'][$i] != "0000-00-00 00:00:00") {
         $libelle .= "<b>Date d'examen :</b> " . $dte->getDate("d-m-Y H:i") . "<br />";
     } else {
         $libelle .= "<b>Date d'examen :</b> " . VIDEDEFAUT . "<br />";
     }
     // Date de sortie.
     if ($res['dt_sortie'][$i] != "0000-00-00 00:00:00") {
         $libelle .= "<b>Date de sortie :</b> " . $dts->getDate("d-m-Y H:i") . "<br />";
     } else {
         $libelle .= "<b>Date de sortie :</b> " . VIDEDEFAUT . "<br />";
     }
     // Adresseur.
     if ($res['adresseur'][$i]) {
         $libelle .= "<b>Adresseur :</b> " . $res['adresseur'][$i] . "<br />";
     } else {
         $libelle .= "<b>Adresseur :</b> " . VIDEDEFAUT . "<br />";
     }
     // Mode d'admission.
     if ($res['mode_admission'][$i]) {
         $libelle .= "<b>Mode d'admission :</b> " . $res['mode_admission'][$i] . "<br />";
     } else {
         $libelle .= "<b>Mode d'admission :</b> " . VIDEDEFAUT . "<br />";
     }
     // Médecin.
     if ($res['medecin_urgences'][$i]) {
         $libelle .= "<b>Médecin :</b> " . $res['medecin_urgences'][$i] . "<br />";
     } else {
         $libelle .= "<b>Médecin :</b> " . VIDEDEFAUT . "<br />";
     }
     // IDE.
     if ($res['ide'][$i]) {
         $libelle .= "<b>IDE :</b> " . $res['ide'][$i] . "<br />";
     } else {
         $libelle .= "<b>IDE :</b> " . VIDEDEFAUT . "<br />";
     }
     // Salle d'examen.
     if ($res['salle_examen'][$i]) {
         $libelle .= "<b>Salle d'examen :</b> " . $res['salle_examen'][$i] . "<br />";
     } else {
         $libelle .= "<b>Salle d'examen :</b> " . VIDEDEFAUT . "<br />";
     }
     // Motif de recours.
     if ($res['motif_recours'][$i]) {
         $libelle .= "<b>Motif de recours :</b> " . $res['motif_recours'][$i] . "<br />";
     } else {
         $libelle .= "<b>Motif de recours :</b> " . VIDEDEFAUT . "<br />";
     }
     // Destination souhaitée.
     if ($res['dest_souhaitee'][$i]) {
         $libelle .= "<b>Dest. souhaitée :</b> " . $res['dest_souhaitee'][$i] . "<br />";
     } else {
         $libelle .= "<b>Dest. souhaitée :</b> " . VIDEDEFAUT . "<br />";
     }
     // Destination attendue.
     if ($res['dest_attendue'][$i]) {
         $libelle .= "<b>Dest. attendue :</b> " . $res['dest_attendue'][$i] . "<br />";
     } else {
         $libelle .= "<b>Dest. attendue :</b> " . VIDEDEFAUT . "<br />";
     }
     // Catégorie de diagnostic.
     if ($res['diagnostic_categorie'][$i]) {
         $libelle .= "<b>Cat. de diag. :</b> " . $res['diagnostic_categorie'][$i] . "<br />";
     } else {
         $libelle .= "<b>Cat. de diag. :</b> " . VIDEDEFAUT . "<br />";
     }
     // Diagnostic.
     if ($res['diagnostic_libelle'][$i]) {
         $libelle .= "<b>Diagnostic :</b> " . $res['diagnostic_libelle'][$i] . "<br />";
     } else {
         $libelle .= "<b>Diagnostic :</b> " . VIDEDEFAUT . "<br />";
     }
     // CCMU.
     if ($res['ccmu'][$i]) {
         $libelle .= "<b>CCMU :</b> " . $res['ccmu'][$i] . "<br />";
     }
     // GEMSA.
     if ($res['gemsa'][$i]) {
         $libelle .= "<b>GEMSA :</b> " . $res['gemsa'][$i] . "<br />";
     }
     // Ajout des informations dans l'info-bulle.
     $text = preg_replace("/(\r\n|\n|\r)/", " ", nl2br($libelle));
     $mod->MxText("libelle", str_replace("'", "\\'", $text));
     // Récupération du code HTML généré.
     return $mod->MxWrite("1");
 }
예제 #4
0
 function genGraphs($mod, $dateG = '', $nbDays = '7')
 {
     $param['cs'] = "*";
     $req = new clResultQuery();
     $date = new clDate($dateG);
     $dateT = new clDate($date->getDate("Y-m-d 00:00:00"));
     $dateT->addDays(-1);
     $dateH = new clDate($dateT->getDate("Y-m-d"));
     $dateT->addDays(1);
     $dateT->addDays(-$nbDays);
     $dateS = new clDate($dateT->getDate("Y-m-d"));
     $dateT->addDays($nbDays);
     $j = 0;
     for ($dateDeb = $dateH; $dateDeb->getTimestamp() < $dateT->getTimestamp();) {
         $heureA = $dateDeb->getHours();
         $dateA = $dateDeb->getDatetime();
         $dateDeb->addHours(1);
         $param['cs'] = "*";
         $param['cw'] = "WHERE iduser LIKE '" . $_POST['choix'] . "' AND ( date BETWEEN '" . $dateA . "' AND '" . $dateDeb->getDatetime() . "' ) AND idapplication=" . IDAPPLICATION . " AND type='navi'";
         $res = $req->Execute("Fichier", "getLogs", $param, "ResultQuery");
         $tab[0][0][] = $res['INDIC_SVC'][2];
         //eko ( $res['INDIC_SVC'] ) ;
         $tab[1][0][$j] = 0;
         $tab[1][1][$j] = 0;
         //      $tab[0][1][$j] = 0 ;
         $titres[1][] = $heureA . "h - " . $dateDeb->getHours() . "h";
         for ($i = 0; isset($res['idlog'][$i]); $i++) {
             $tab[1][0][$j] += $res['tempsPage'][$i];
             $tab[1][1][$j] += $res['tempsSQL'][$i];
             //$tab[0][1][$j] += $res['nombreSQL'][$i] ;
         }
         if ($res['INDIC_SVC'][2]) {
             $tab[1][0][$j] = $tab[1][0][$j] / $res['INDIC_SVC'][2];
             $tab[1][1][$j] = $tab[1][1][$j] / $res['INDIC_SVC'][2];
         }
         $j++;
     }
     $dateH->addDays(-1);
     $jpG = new clJpGraph();
     $jpG->arh_graph("Nombre de clics et requetes par heure (" . $_POST['choix'] . ") - " . $dateH->getDateText(), '', '', $tab[0], array('Clics', 'Requetes'), array('#DDCC55', '#CC3355'), 800, 500, "image1.png", $titres[1], "45", '#C8DE3D', "groupbar", '#FFFFFF', "%d");
     $jpG->arh_graph("Temps moyen par heure (" . $_POST['choix'] . ") - " . $dateH->getDateText(), '', '', $tab[1], array('Temps total', 'Temps SQL'), array('#DDCC55', '#CC3355'), 800, 400, "image2.png", $titres[1], "45", '#C8DE3D', "groupbar", '#FFFFFF', "%2.2f");
     $j = 0;
     for ($dateDeb = $dateS; $dateDeb->getTimestamp() < $dateT->getTimestamp();) {
         $jourA = $dateDeb->getDayWeek();
         $dateA = $dateDeb->getDatetime();
         $dateDeb->addDays(1);
         $param['cs'] = "*";
         $param['cw'] = "WHERE iduser LIKE '" . $_POST['choix'] . "' AND ( date BETWEEN '" . $dateA . "' AND '" . $dateDeb->getDatetime() . "' ) AND idapplication=" . IDAPPLICATION . " AND type='navi'";
         $res = $req->Execute("Fichier", "getLogs", $param, "ResultQuery");
         $tab[2][0][] = $res['INDIC_SVC'][2];
         $titres[2][] = $jourA;
         /*
         //eko ( $res['INDIC_SVC'] ) ;
         $tab[3][0][$j] = 0 ;
         $tab[3][1][$j] = 0 ;
         //$tab[2][1][$j] = 0 ;
         $titres[2][] = $jourA ;
         for ( $i = 0 ; isset ( $res['idlog'][$i] ) ; $i++ ) {
         	$tab[3][0][$j] += $res['tempsPage'][$i] ;
         	$tab[3][1][$j] += $res['tempsSQL'][$i] ;
         	//$tab[2][1][$j] += $res['nombreSQL'][$i] ;
         }
         if ( $res['INDIC_SVC'][2] ) {
         	$tab[3][0][$j] = $tab[3][0][$j] / $res['INDIC_SVC'][2] ;
         	$tab[3][1][$j] = $tab[3][1][$j] / $res['INDIC_SVC'][2] ;
         }
         $j++ ;
         */
     }
     // eko ( $tab[3][1] ) ;
     $jpG->arh_graph("Nombre de clics et requetes par jour (" . $_POST['choix'] . ") ", '', '', $tab[2], array('Clics', 'Requetes'), array('#DDCC55', '#CC3355'), 800, 500, "image3.png", $titres[2], "45", '#C8DE3D', "groupbar", '#FFFFFF', "%d");
     //$jpG->arh_graph( "Temps moyen par jour - ".$date->getDateText ( ),'','', $tab[3], array ( 'Temps total', 'Temps SQL' ), array ( '#DDCC55', '#CC3355' ), 800, 400, "image4.png", $titres[2], "45", '#C8DE3D', "groupbar", '#FFFFFF', "%2.2f" ) ;
 }
예제 #5
0
파일: clRPU.php 프로젝트: jeromecc/tuv2
 function gestSend()
 {
     global $session;
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("rpuGestSend.html");
     $mod->SetModeliXe();
     $dateL = new clDate(DATELANCEMENT);
     $dateA = new clDate();
     $dateA->addDays(-1);
     $tabDate[$dateA->getDate('Y-m-d')] = 'Hier';
     $dateA->addDays(-1);
     for (; $dateL->getTimestamp() < $dateA->getTimestamp(); $dateA->addDays(-1)) {
         $tabDate[$dateA->getDate('Y-m-d')] = $dateA->getDateText();
     }
     $mod->MxSelect('listeDates', 'dateRPU', $_POST['dateRPU'], $tabDate, '', '', 'onChange="reload(this.form)"');
     $mod->MxHidden('hidden', 'navi=' . $session->genNavi($session->getNavi(0), $session->getNavi(1)));
     $this->genXMLH1N1($_POST['dateRPU']);
     $this->genXML($_POST['dateRPU']);
     $mod->MxText('xmlRpu', '<p>' . nl2br(htmlentities($this->xmlRpu)) . '</p>');
     $mod->MxText('message', $this->sendXML($_REQUEST['EnvoyerRPU']));
     $this->af .= $mod->MxWrite("1");
 }
예제 #6
0
 function EtatCivil()
 {
     global $session;
     global $options;
     global $pi;
     // Chargement du template ModeliXe.
     $mod = new ModeliXe("EtatCivil.mxt");
     $mod->SetModeliXe();
     // Affichage du sexe de la personne.
     switch ($this->patient->getSexe()) {
         case 'M':
             $img = URLIMG . "mini_homme.png";
             $e = "";
             break;
         case 'F':
             $img = URLIMG . "mini_femme.png";
             $e = "e";
             break;
         default:
             $img = URLIMG . "mini_Indefini.png";
             $e = "(e)";
             break;
     }
     // Calcul sur les différentes dates.
     $age = new clDate($this->patient->getDateNaissance());
     $dateSimple = $age->getDate("d-m-Y");
     $dateComple = $age->getDateText();
     $duree = new clDuree();
     $adm = new clDate($this->patient->getDateAdmission());
     $exa = new clDate($this->patient->getDateExamen());
     $sor = new clDate($this->patient->getDateSortie());
     // Affichage des attributs sexe, nom, prénom et date de naissance.
     $mod->MxText("sexe", "<img src=\"{$img}\" alt=\"Sexe\" />");
     $mod->MxText("nom", ucfirst(strtolower($this->patient->getPrenom())) . " " . strtoupper($this->patient->getNom()));
     $pedi = $options->getOption("FiltreSalleSup");
     if (ereg($pedi, $this->patient->getSalle())) {
         $mod->MxText("etatUHCD", " (" . ($options->getOption('nomSalleSup') ? $options->getOption('nomSalleSup') : 'Pédiatrie') . ")");
     } elseif ($this->patient->getEtatUHCD()) {
         $inf = $pi->genInfoBulle('Cliquez ici pour changer l\'état UHCD');
         if ($session->getDroit($this->type . "_EtatCivil", "m")) {
             $link = '<a href="' . URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), 'changerEtatUHCD') . '"><img src="' . URLIMG . 'valider.png" alt="Changer l\'état" ' . $inf . ' /></a>';
         } else {
             $link = '';
         }
         if ($this->patient->isSoinsContinus()) {
             $mod->MxText("etatUHCD", " (<font color=\"red\">Soins Continus</font>)");
         } elseif ($this->patient->getUF() == $options->getOption("numUFUHCD")) {
             $mod->MxText("etatUHCD", " (UHCD {$link})");
         } elseif ($this->patient->getUF() == $options->getOption("numUFUHCDrepere") and $options->getOption("numUFUHCDrepere")) {
             $mod->MxText("etatUHCD", " (UHCD repéré {$link})");
         } elseif (!$this->patient->getUF()) {
             $mod->MxText("etatUHCD", " (Aucune UF)");
         } elseif ($this->patient->isChirurgie()) {
             $mod->MxText("etatUHCD", " (Chirurgie)");
         } else {
             $mod->MxText("etatUHCD", " (Urgences {$link})");
         }
     }
     if ($options->getOption("ModuleEtiquettes") == "Non") {
         $mod->MxText("etiquettes", "");
     } else {
         $inf = $pi->genInfoBulle('Cliquez ici pour lancer l\'impression des étiquettes');
         $link = '<a href="' . URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), 'impressionEtiquettes') . '"><img src="' . URLIMG . 'etiquettes.png" alt="Impression des étiquettes" ' . $inf . ' /></a>';
         $mod->MxText("etiquettes", $link);
     }
     //eko ( $this->patient->getManuel ( ) ) ;
     if ($session->getDroit($this->type . "_EtatCivil", "m") and $this->patient->getManuel()) {
         $link = URLNAVI . $session->genNavi($session->getNavi(0), $session->getNavi(1), $session->getNavi(2), "modPatient");
         $inf = $pi->genInfoBulle('Cliquez ici pour modifier les informations du patient manuel');
         $mod->MxText("lienModPatient", '<a href="' . $link . '" ><img src="images/modPat.png" alt="Modifier le patient" ' . $inf . '/></a>');
     }
     if ($session->getDroit($this->type . "_EtatCivil", "m")) {
         $mod->MxText("lienQuestion", $this->getGenQuestionSortie());
     }
     if ($this->patient->getDateNaissance() != "0000-00-00 00:00:00") {
         $mod->MxText("naissance", "Né{$e} le {$dateComple} (" . str_replace("<br>", " et ", $duree->getAgePrecis($age->getTimestamp())) . ")");
     } else {
         $mod->MxText("naissance", "Date de naissance inconnue");
     }
     // Affichage de l'adresse et du numéro de téléphone.
     $mod->MxText("adresse", $this->patient->getAdresse() . " - " . $this->patient->getCodePostal() . " " . $this->patient->getVille());
     $mod->MxText("telephone", $this->patient->getTel());
     // Affichage des autres blocs de l'état civil.
     $this->genBlocEtatCivil("Prevenir", $mod, "m");
     $this->genBlocEtatCivil("MedecinTraitant", $mod, "m");
     $this->genBlocEtatCivil("DateExamen", $mod, "m", $exa);
     $this->genBlocEtatCivil("DateSortie", $mod, "d", $sor, '1');
     // Affichage de la date d'admission.
     if ($this->patient->getDateAdmission() > 0) {
         $mod->MxText("admission", $adm->getDate("d-m-Y H:i"));
     } else {
         $mod->MxText("admission", VIDEDEFAUT);
     }
     // On renvoit le code HTML généré.
     return $mod->MxWrite("1");
 }