Пример #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();
}
Пример #2
0
function contraintes_carpentras(clPatient $obPatient)
{
    //on parcourt les formulaires fusions carpentras jusqu'à en trouver un avec le  IDPASS en cours
    foreach (formxTools::peerGetFromIdIdu('CHC_Synthese', $obPatient->getIDU()) as $formx) {
        if ($formx->getFormVar('Val_IDENT_NSEJPatient') == $obPatient->getNSej()) {
            return array('isContrainte' => false);
        }
    }
    return array('isContrainte' => true, 'titreContrainte' => "Formulaire Synthèse", 'messageContrainte' => "Vous devez créer un formulaire de synthèse.");
}
Пример #3
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);
}
 function writeBALall($tabIdPatient)
 {
     global $fusion;
     global $table_patient_manuel;
     global $table_patient_automatique;
     //newfct(gen_affiche_tableau,$tabIdPatient);
     for ($ind = 0; $ind <= 1; $ind++) {
         if ($ind == 0) {
             //controleActesPresents
             $this->controleActesPresents($tabIdPatient[$ind + 1]);
             //
             unset($paramRq);
             $paramRq[cw] = "idEvent=" . $tabIdPatient[$ind + 1] . " and idDomaine=" . CCAM_IDDOMAINE;
             $req = new clResultQuery();
             $res = $req->Execute("Fichier", "CCAM_getActesDiagsCotation", $paramRq, "ResultQuery");
             $dateDemande = $res["dateDemande"][0];
             //eko($res);
             // Mise à jour des données de $tabIdPatient[$ind]
             // Prendre le nom du medecin et son code ADELI de $tabIdPatient[$ind+1]
             // On prend le nom du medecin du patient
             $param[cw] = "WHERE idpatient='" . $tabIdPatient[$ind + 1] . "'";
             $param[table] = $table_patient_manuel;
             $req = new clResultQuery();
             $res = $req->Execute("Fichier", "getPatients", $param, "ResultQuery");
             // On prend le numero ADELI
             unset($param);
             $param[nomitem] = $res["medecin_urgences"][0];
             $req = new clResultQuery();
             $res2 = $req->Execute("Fichier", "getMatriculeMedecin", $param, "ResultQuery");
             $Medecin_urgences = $res["medecin_urgences"][0];
             $Matricule = $res2["matricule"][0];
             // Mise à jour de la fiche patient $tabIdPatient[$ind] seulement pour l'acte ATU
             $paramModif["envoi_nomIntervenant"] = $Medecin_urgences;
             $paramModif["envoi_matriculeIntervenant"] = $Matricule;
             $paramModif["dateDemande"] = $dateDemande;
             $requete = new clRequete(CCAM_BDD, "ccam_cotation_actes", $paramModif);
             $sql = $requete->updRecord("idEvent=" . $tabIdPatient[$ind] . " and idDomaine=" . CCAM_IDDOMAINE);
             unset($paramRq);
             $paramRq[cw] = "idEvent=" . $tabIdPatient[$ind] . " and idDomaine=" . CCAM_IDDOMAINE;
             $req = new clResultQuery();
             $res = $req->Execute("Fichier", "CCAM_getActesDiagsCotation", $paramRq, "ResultQuery");
             //eko($table_patient_automatique);
             if ($table_patient_automatique == PSORTIS) {
                 $type = "suppression";
                 $this->contenuBAL($res, $type);
             }
             //Suppression dans la table ccam_cotation_actes (patient pastel pour le Ch-Hyeres)
             $requete = new clRequete(CCAM_BDD, "ccam_cotation_actes", array());
             $sql = $requete->delRecord("idEvent=" . $tabIdPatient[$ind] . " and idDomaine=" . CCAM_IDDOMAINE);
         } else {
             //Récup des infos de pastel pour maj identité patient manuel
             if ($this->patientSorti($tabIdPatient[$ind])) {
                 $table = "Sortis";
             } else {
                 $table = "";
             }
             $patient = new clPatient($tabIdPatient[$ind], $table);
             unset($param);
             $param[numSejour] = $patient->getNSej();
             $param[idu] = $patient->getIDU();
             $param[ipp] = $patient->getILP();
             $param[nomu] = $patient->getNom();
             $param[pren] = $patient->getPrenom();
             $param[sexe] = $patient->getSexe();
             $param[dtnai] = substr($patient->getDateNaissance(), 0, 10);
             //eko($param);
             $requete = new clRequete(CCAM_BDD, "ccam_cotation_actes", $param);
             $sql = $requete->updRecord("idEvent=" . $tabIdPatient[$ind] . " and idDomaine=" . CCAM_IDDOMAINE);
             if ($table) {
                 //Le patient manuel maintenant fusionné était sorti, on peut donc maintenant envoyer ses actes à la BAL
                 /*$lesion=$this->lesion($tabIdPatient[$ind]);
                    $tabAsso=$this->tabAsso($tabIdPatient[$ind],$lesion);
                    
                    unset($paramRq);
                  	$paramRq[cw]="idEvent=$tabIdPatient[$ind] and idDomaine=".CCAM_IDDOMAINE;
                  	$req=new clResultQuery;
                  	$res=$req->Execute("Fichier","CCAM_getActesDiagsCotation",$paramRq,"ResultQuery");
                  	//eko($res[INDIC_SVC]);
                    $type="creation";
                    $this->contenuBAL($res,$type,$tabAsso);*/
                 $this->writeBALSorti("", $tabIdPatient[$ind]);
             }
         }
         //eko("ind:$ind-idPatient:".$tabIdPatient[$ind]);
     }
 }