global $atc_classes; $atc_classes = array(); $datetime_min = ""; if ($period) { $datetime_min = CMbDT::dateTime("- {$period} HOURS"); } // Chargement du sejour $sejour = new CSejour(); $sejour->load($sejour_id); $sejour->loadNDA(); $sejour->loadExtDiagnostics(); $sejour->loadRefsConsultAnesth(); $sejour->_ref_consult_anesth->loadRefConsultation(); $sejour->canRead(); // Chargement des affectations $sejour->loadRefCurrAffectation()->loadRefLit(); foreach ($sejour->loadRefsAffectations() as $_affectation) { $_affectation->loadRefLit(); } // Chargement des tâches foreach ($sejour->loadRefsTasks() as $_task) { $_task->loadRefPrescriptionLineElement(); $_task->setDateAndAuthor(); $_task->loadRefAuthor(); $_task->loadRefAuthorRealise(); } // Chargement des opérations $sejour->loadRefsOperations(); foreach ($sejour->_ref_operations as $_interv) { $_interv->loadRefChir(); $_interv->loadRefAnesth();
$sejour->load($sejour_id); $sejour->loadRefsFwd(); $praticien =& $sejour->_ref_praticien; $praticien->canDo(); $patient =& $sejour->_ref_patient; $patient->loadRefsSejours(); $sejours =& $patient->_ref_sejours; } else { $patient = new CPatient(); $patient->load($patient_id); $patient->loadRefsSejours(); $sejours =& $patient->_ref_sejours; } $sejour->makeDatesOperations(); $sejour->loadNDA(); $sejour->loadRefCurrAffectation()->loadRefService(); $patient->loadRefsFwd(); $patient->loadRefsCorrespondants(); $patient->loadRefsCorrespondantsPatient(); $correspondantsMedicaux = array(); if ($patient->_ref_medecin_traitant->_id) { $correspondantsMedicaux["traitant"] = $patient->_ref_medecin_traitant; } foreach ($patient->_ref_medecins_correspondants as $correspondant) { $correspondantsMedicaux["correspondants"][] = $correspondant->_ref_medecin; } $medecin_adresse_par = ""; if ($sejour->adresse_par_prat_id && $sejour->adresse_par_prat_id != $patient->_ref_medecin_traitant->_id) { $medecin_adresse_par = new CMedecin(); $medecin_adresse_par->load($sejour->adresse_par_prat_id); }
CPrescription::$mode_plan_soins = true; // Permet de gerer le cas ou des unites de prises contiennent des ' $unite_prise = stripslashes(preg_replace('~�*([0-9]+);~e', 'chr(\\1)', $unite_prise)); // Recuperation du sejour_id si seulement l'object est passé if ($object_id && $object_class) { $object = new $object_class(); $object->load($object_id); $sejour_id = $object->_ref_prescription->object_id; } // Initialisations $operation = new COperation(); $operations = array(); // Chargement du sejour $sejour = new CSejour(); $sejour->load($sejour_id); $sejour->loadRefCurrAffectation(); $sejour->_ref_curr_affectation->loadView(); if ($group->_id != $sejour->group_id) { CAppUI::stepAjax("Ce séjour n'est pas dans l'établissement courant", UI_MSG_WARNING); return; } $planif_manuelle = CAppUI::conf("dPprescription CPrescription planif_manuelle", $group->_guid); $sejour->loadRefPatient(); $sejour->loadRefPraticien(); // Chargement des caracteristiques du patient $patient =& $sejour->_ref_patient; $patient->loadRefPhotoIdentite(); $patient->loadRefLatestConstantes(null, array("poids", "taille")); $patient->loadRefDossierMedical(); $dossier_medical = $patient->_ref_dossier_medical; if ($dossier_medical->_id) {
$affectation->entree = $entree; $affectation->sortie = $sortie; if ($_lock_all_lits_urgences) { $affectation->function_id = $function_id; } if ($msg = $affectation->store()) { CAppUI::setMsg($msg, UI_MSG_ERROR); } } } echo CAppUI::getMsg(); CApp::rip(); } else { $tolerance = CAppUI::conf("dPhospi CAffectation create_affectation_tolerance", CGroups::loadCurrent()); $sejour_id = CValue::post("sejour_id"); $affectation_id = CValue::post("affectation_id"); //Si on est en création d'afectation et qu'il y a un sejour_id if (!$affectation_id && $sejour_id) { $sejour = new CSejour(); $sejour->load($sejour_id); $curr_affectation = $sejour->loadRefCurrAffectation(); //On modifie au lieu de créer une affectation si l'afectation courante ne dépasse pas la tolérance if ($curr_affectation && $curr_affectation->_id) { if (CMbDT::addDateTime("00:{$tolerance}:00", $curr_affectation->entree) > $entree) { $_POST["affectation_id"] = $curr_affectation->_id; } } } $do = new CDoObjectAddEdit("CAffectation", "affectation_id"); $do->doIt(); }
$lit_id = CValue::post("lit_id"); $service_sortie_id = CValue::post("service_sortie_id"); $mode_sortie = CValue::post("mode_sortie"); $type = CValue::post("type"); $entree_preparee_trigger = CValue::post("_entree_preparee_trigger"); $sejour_id = CValue::post("sejour_id"); $create_affectation = CAppUI::conf("urgences create_affectation"); $sejour = new CSejour(); $sejour->load($sejour_id); $rpu = $sejour->loadRefRPU(); if ($rpu && $rpu->mutation_sejour_id) { $sejour_id = $sejour->_ref_rpu->mutation_sejour_id; } $sejour_hospit = new CSejour(); $sejour_hospit->load($sejour_id); $curr_affectation_hospit = $sejour_hospit->loadRefCurrAffectation(); // Pour un séjour ayant comme mode de sortie urgence: if ($create_affectation && $mode_sortie == "mutation" && $rpu && $rpu->_id && ($lit_id && $curr_affectation_hospit->lit_id != $lit_id || $service_sortie_id && $curr_affectation_hospit->service_id != $service_sortie_id)) { // Création de l'affectation d'hospitalisation $affectation_hospit = new CAffectation(); $affectation_hospit->entree = CMbDT::dateTime(); $affectation_hospit->lit_id = $lit_id; $affectation_hospit->service_id = $service_sortie_id; // Mutation en provenance des urgences $affectation_hospit->_mutation_urg = true; $sejour_hospit->forceAffectation($affectation_hospit); } // Lancement des formulaires automatiques sur le champ entrée préparée if ($sejour->_id && $entree_preparee_trigger && CModule::getActive("forms")) { $ex_class_events = CExClassEvent::getForObject($sejour, "preparation_entree_auto", "required"); echo CExClassEvent::getJStrigger($ex_class_events);
$fin = CMbDT::date("next sunday", $debut); $debut = CMbDT::date("+1 day", $debut); $nbjours = 7; $patient = $sejour->loadRefPatient(); // Chargement des caracteristiques du patient $patient =& $sejour->_ref_patient; $patient->loadRefPhotoIdentite(); $patient->loadRefLatestConstantes(null, array("poids", "taille")); $dossier_medical = $patient->loadRefDossierMedical(); if ($dossier_medical->_id) { $dossier_medical->loadRefsAllergies(); $dossier_medical->loadRefsAntecedents(); $dossier_medical->countAntecedents(); $dossier_medical->countAllergies(); } $sejour->loadRefCurrAffectation($debut); if (!$sejour->_ref_curr_affectation->_id) { $sejour->loadRefsAffectations(); $sejour->_ref_curr_affectation = $sejour->_ref_last_affectation; } //Instanciation du planning $planning = new CPlanningWeek($debut, $debut, $fin, $nbjours, false, 450, null, true); $planning->title = ""; $planning->guid = $sejour->_guid; $planning->hour_min = "07"; $planning->hour_max = "20"; $planning->pauses = array("12"); $ljoin = array(); $ljoin['plageconsult'] = "consultation.plageconsult_id = plageconsult.plageconsult_id"; $where = array(); $where[] = "plageconsult.date BETWEEN '{$debut}' AND '{$fin}'";