/**
  * Represents an HL7 ROL message segment (Role)
  *
  * @param CPatient $patient Patient
  *
  * @return void
  */
 function addROLs(CPatient $patient)
 {
     $patient->loadRefsCorrespondants();
     if ($patient->_ref_medecin_traitant->_id) {
         /** @var CHL7v2SegmentROL $ROL */
         $ROL = CHL7v2Segment::create("ROL", $this->message);
         $ROL->medecin = $patient->_ref_medecin_traitant;
         $ROL->role_id = "ODRP";
         // Mise à jour du médecin
         if ($patient->fieldModified("medecin_traitant")) {
             $ROL->action = "UP";
         }
         $ROL->build($this);
     }
     foreach ($patient->_ref_medecins_correspondants as $_correspondant) {
         $medecin = $_correspondant->loadRefMedecin();
         if ($medecin->type != "medecin") {
             continue;
         }
         /** @var CHL7v2SegmentROL $ROL */
         $ROL = CHL7v2Segment::create("ROL", $this->message);
         $ROL->medecin = $medecin;
         $ROL->role_id = "RT";
         $ROL->build($this);
     }
 }
Ejemplo n.º 2
0
    $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);
}
// L'utilisateur est-il un praticien
$mediuser = CMediusers::get();