Example #1
0
function sortie_carpentras(clPatient $patient)
{
    //suppression des instances de formulaires
    $res = clFoRmXtOoLs::ListFromIds($patient->getIDU());
    if (is_array($res) && $res['INDIC_SVC'][2] > 0) {
        for ($i = 0; $i < $res['INDIC_SVC'][2]; $i++) {
            //formulaires à effacer
            if (in_array($res['idformx'][$i], array('CHC_Fiche_Administrative', 'CHC_Fiche_Examen_Medical', 'CHC_Fiche_IAO-IDE', 'CHC_Fiche_Suivi'))) {
                //mettre ici les id de formulaires à effacer
                $idInstance = $res['id_instance'][$i];
                formxTools::simpleRemoveInstance($idInstance);
            }
            //formulaires à cloturer
            if (in_array($res['idformx'][$i], array('CHC_Synthese'))) {
                //mettre ici les id de formulaires à effacer
                $idInstance = $res['id_instance'][$i];
                $formx = new clFoRmX_manip($patient->getIDU(), 'NO_POST_THREAT');
                $formx->loadInstance($idInstance);
                $formx->close();
            }
        }
    }
    //suppression des variables globales
    $tabVariables = array('Fiche_Administrative_Rep_Legal', 'ALD', 'Fiche_Administrative_Pansement', 'Fiche_Administrative_Non_Venu', 'Fiche_Administrative_Orientation', 'Fiche_Administrative_Etablissement', 'Fiche_Administrative_Documents', 'Fiche_Administrative_AT', 'Fiche_Administrative_date_AT', 'Fiche_Administrative_heure_AT', 'Fiche_Administrative_minute_AT', 'IDE_CTE_ARRIVEE', 'DATE_CTE_ARRIVEE', 'HEURE_CTE_ARRIVEE', 'PA_BG_CTE_ARRIVEE', 'PA_BD_CTE_ARRIVEE', 'FC_CTE_ARRIVEE', 'TEMP_CTE_ARRIVEE', 'HB_CTE_ARRIVEE', 'SAO2_CTE_ARRIVEE', 'DEXTRO_CTE_ARRIVEE', 'EVA_CTE_ARRIVEE', 'FR_CTE_ARRIVEE', 'ACTES_CTE_ARRIVEE', 'Fiche_IAO_Nom_IDE', 'Fiche_IAO_Jour_Consultation', 'Fiche_IAO_Heure_Consultation', 'Fiche_IAO_Accompagnant', 'Fiche_IAO_qui', 'Fiche_IAO_lettre_medecin', 'Fiche_IAO_ordonnance', 'Fiche_IAO_Traitement', 'Fiche_IAO_VAT', 'Fiche_IAO_Tetanos', 'Fiche_IAO_Bandelette_Urinaire', 'IAO_Glucose', 'IAO_Acetone', 'IAO_Sang', 'IAO_PH', 'IAO_Proteine', 'IAO_Nitrite', 'IAO_Leuco', 'Fiche_IAO_Actes', 'DATE_EXAM', 'HEURE_EXAM', 'ACTES_CTE_ARRIVEE', 'ATCD', 'ALLERGIES', 'TRAITEMENTS', 'OBSERVATIONS_MEDICALES');
    $obGlobals = formxTools::globalsLoad($patient->getIDU());
    foreach ($tabVariables as $variable) {
        $obGlobals->del($variable);
    }
    $obGlobals->save();
}
Example #2
0
 function __construct()
 {
     global $options;
     if (isset($_POST['idTrigger'])) {
         $trigger = new clTuFormxTrigger($_POST['idTrigger']);
         if (isset($_POST['activate'])) {
             $trigger->start();
         } else {
             if (isset($_POST['desactivate'])) {
                 $trigger->close();
             }
         }
     } else {
         if (isset($_POST['export'])) {
             $tabEnquete = clTuFormxTrigger::getTabEnquete($_POST['export']);
             $trigger = new clTuFormxTrigger($tabEnquete['id_trigger']);
             $dateD = new clDate($tabEnquete['date_debut']);
             $dateF = new clDate($tabEnquete['date_fin']);
             $data = array();
             $nomFic = '';
             clTuFormxTrigger::getDataExport($trigger, $dateD, $dateF, $data, $nomFic);
             $location = clFoRmXtOoLs::exportsGetCsvFromData($data, $nomFic);
             header('Location: ' . $location);
         }
     }
 }
Example #3
0
 function getAffichage()
 {
     //Recuperation seulement de la donn�e du nom prescipteur dans tous les formulaires radio
     $tab = clFoRmXtOoLs::getinstances('Formulaire_Radio', 'Val_F_RADIO_Nom_P', '');
     $nbResultats = $tab['INDIC_SVC'][2];
     $res = array();
     for ($i = 0; $i < $nbResultats; $i++) {
         $precripteur = $tab['Val_F_RADIO_Nom_P'][$i];
         $res[$precripteur]++;
     }
     return affTab($res);
     //AUTRES EXEMPLES
     //Recuperation de toutes les donn�es radio de la date $date1 � la date $date2
     //clFoRmXtOoLs::getinstances('Formulaire_Radio','','',$date1="",$date2="")
     //Recuperation de toutes les donn�es de tous les formulares demandes radio
     //$tabAllDonnesRadio = clFoRmXtOoLs::getinstances('Formulaire_Radio');
 }
Example #4
0
function sortie_carpentras(clPatient $patient)
{
    //suppression des instances de formulaires
    $res = clFoRmXtOoLs::ListFromIds($patient->getIDU());
    if (is_array($res) && $res['INDIC_SVC'][2] > 0) {
        for ($i = 0; $i < $res['INDIC_SVC'][2]; $i++) {
            if (in_array($res['idformx'][$i], array('tutorial', 'bachibouzouk', 'arrosoir'))) {
                //mettre ici les id de formulaires à effacer
                $idInstance = $res['id_instance'][$i];
                formxTools::simpleRemoveInstance($idInstance);
            }
        }
    }
    //suppression des variables globales
    $pGlobals = formxTools::globalsLoad($patient->getIDU());
    formxTools::globalsDelVar($pGlobals, 'pipou');
    formxTools::globalsDelVar($pGlobals, 'pipoux');
    formxTools::globalsDelVar($pGlobals, 'papux');
    formxTools::globalsDelVar($pGlobals, 'gnafouix');
    formxTools::globalsSave($pGlobals);
}
Example #5
0
 function genAffichageCS()
 {
     global $session;
     // Mise en page, arg !
     $af = "<div style=\"padding: 20px;\"><h4>Liste des consultations spécialisées par spécialiste :</h4><br/>";
     // Récupération de l'ensemble des formulaires des CS
     $tab = clFoRmXtOoLs::getinstances('formulaire_consultation_specialisee', '', '', '2009-01-01', '2009-12-31');
     $nbResultats = $tab['INDIC_SVC'][2];
     //eko ( $tab['INDIC_SVC'] ) ;
     //return ;
     $res = array();
     // Récupération de la liste des médecins ayant fait des CS
     for ($i = 0; $i < $nbResultats; $i++) {
         $med = $tab['Val_F_CS_Spe'][$i];
         // Compteur de CS par médecin
         $res[med]++;
     }
     // Tri par ordre décroissant sur le nombre de CS réalisées
     array_multisort($res, SORT_DESC);
     // Pour chaque médecin, on affiche un lien pour afficher ses CS
     while (list($key, $val) = each($res)) {
         if ($key and $key != '#') {
             $af .= '<a href="?navi=' . $session->genNaviFull() . '&amp;NOMMED=' . $key . '">' . $key . ' (<font color="red">' . $val . '</font>)' . '</a><br/>';
             // Si le lien a été cliqué, on affiche les CS du médecin.
             if ($_GET['NOMMED'] == $key) {
                 // Encore de la mise en page bien sale.
                 $af .= '<div style="padding-left: 20px;">';
                 // Affichage des CS du médecin.
                 for ($i = 0; $i < $nbResultats; $i++) {
                     if ($_GET['NOMMED'] == $tab['Val_F_CS_Spe'][$i]) {
                         $af .= ' - ' . $tab['Val_F_CS_Date'][$i] . ' : ' . $tab['Val_IDENT_NomPatient'][$i] . ' ' . $tab['Val_IDENT_PrenomPatient'][$i] . ' (' . $tab['Val_IDENT_IDUPatient'][$i] . ', Séjour : ' . $tab['Val_IDENT_NsejPatient'][$i] . ') demandée par ' . $tab['Val_F_CS_Nom_P'][$i] . '<br/>';
                     }
                 }
                 $af .= '</div>';
             }
         }
     }
     $af .= "</div>";
     $this->af = $af;
 }
Example #6
0
 function genCase($infobulle)
 {
     return clFoRmXtOoLs::genCase($infobulle);
 }
Example #7
0
 public static function getDataExport($trigger, $dateD, $dateF, &$data, &$nomFic)
 {
     global $options;
     $idFormx = $trigger->getIdFormx();
     set_time_limit(0);
     ini_set('memory_limit', '512M');
     $strDate1 = str_replace(array(' ', ':'), array('_', '-'), $dateD->getDatetime());
     $strDate2 = str_replace(array(' ', ':'), array('_', '-'), $dateF->getDatetime());
     $nomFic = 'etab_' . $options->getOption('RPU_IdActeur') . '_enquete_' . formxTools::strGetIdAtomiqueFx($idFormx) . '_du_' . $strDate1 . '_au_' . $strDate2 . '.csv';
     if ($trigger->isPassageLinked()) {
         $tabOptions = array('firstColsFunc' => 'clGestFormxTriggers::genTabinfoIdPassage', 'firstColsFuncArgField' => 'id_passage', 'crossWithTable' => array('base' => BDD, 'table' => 'patients_sortis', 'indexIds' => 'idu'));
     } else {
         $tabOptions = array();
     }
     $data = clFoRmXtOoLs::exportsGetTabIdform($idFormx, $tabOptions + array('basic' => true, 'cw' => " dt_creation <= '" . $dateF->getDatetime() . "' AND status IN ('F','H') AND dt_creation >= '" . $dateD->getDatetime() . "'   "));
 }
Example #8
0
 static function getinstances($idformx, $values = '', $filtre = "FX_getInstances", $date1 = "", $date2 = "")
 {
     formxSession::getInstance()->addErreur("getinstances est une fonction obsolette");
     if ($date1) {
         $date1 = clFoRmXtOoLs::anydate2datetime($date1);
     }
     if ($date2) {
         $date2 = clFoRmXtOoLs::anydate2datetime($date2);
     }
     if (!$filtre) {
         $filtre = "FX_getInstances";
     }
     $param = array();
     if ($date1 && $date2) {
         $param['cwdate'] = " AND dt_modif >= '{$date1}' and  dt_creation <= '{$date2}' ";
     } elseif ($date1) {
         $param['cwdate'] = " AND dt_modif >= '{$date1}' ";
     } elseif ($date2) {
         $param['cwdate'] = " AND dt_modif <= '{$date2}' ";
     } else {
         $param['cwdate'] = " AND 1=1 ";
     }
     if ($values) {
         if (!is_array($values)) {
             $values = array($values);
         }
     }
     if (is_array($idformx)) {
         $param['listeidformx'] = "'" . implode("','", $idformx) . "' AND";
         //		$param['cwdate'] = " AND " . $para['cwdate'];
     } else {
         $param['listeidformx'] = "'" . $idformx . "' AND";
         //		$param['cwdate'] = " AND " . $para['cwdate'];
     }
     //print affTab ( $param ) ; return ;
     $req = new clResultQuery();
     if (defined('FX_INSTANCES')) {
         $param['table'] = FX_INSTANCES;
     } else {
         $param['table'] = TABLEFORMX;
     }
     $res = $req->Execute("Fichier", $filtre, $param, "ResultQuery");
     $nb = $res['INDIC_SVC'][2];
     //print affTab ( $res['INDIC_SVC'] ) ;
     if ($nb == 0) {
         return array();
     }
     $ret = array();
     $ret['ids'] = array();
     $ret['id_instance'] = array();
     $ret['dt_creation'] = array();
     $ret['dt_modif'] = array();
     $ret['idformx'] = array();
     $ret['libelle'] = array();
     $ret['status'] = array();
     $ret['author'] = array();
     for ($i = 0; $i < $nb; $i++) {
         $ret['ids'][$i] = $res['ids'][$i];
         $ret['id_instance'][$i] = $res['id_instance'][$i];
         $ret['dt_creation'][$i] = $res['dt_creation'][$i];
         $ret['dt_modif'][$i] = $res['dt_modif'][$i];
         $ret['idformx'][$i] = $res['idformx'][$i];
         $ret['libelle'][$i] = $res['libelle'][$i];
         $ret['status'][$i] = $res['status'][$i];
         $ret['author'][$i] = $res['author'][$i];
         $newInstance = new clFoRmX($res['ids'][$i], 'NO_POST_THREAT');
         $newInstance->loadInstance($res['id_instance'][$i]);
         if (!$values) {
             $values = $newInstance->getAllItems();
         }
         foreach ($values as $val) {
             if (!isset($ret[$val])) {
                 $ret[$val] = array();
             }
             $ret[$val][$i] = utf8_decode($newInstance->getFormVar($val));
         }
         unset($newInstance);
     }
     $ret['INDIC_SVC'][2] = $nb;
     return $ret;
 }
Example #9
0
 static function rangerDossMedAEV($patientArg)
 {
     global $patient;
     $patient = $patientArg;
     $res = clFoRmXtOoLs::ListFromIds($patient->getIDU(), array('F', 'E', 'I'));
     //eko($res);
     $formAnt = "";
     if (is_array($res)) {
         for ($i = 0; $i < $res['INDIC_SVC'][2]; $i++) {
             if ($res['idformx'][$i] == 'Dossier_AEV_Synthese') {
                 $formAnt = $res['id_instance'][$i];
                 break;
             }
         }
     }
     if (!$formAnt) {
         return false;
     }
     $form = new clFoRmX_manip($patient->getIDU());
     $form->loadInstance($formAnt);
     $form->close('H');
     $form->passDocopi();
 }