} $sejour->loadRefAdresseParPraticien(); $sejour->_ref_patient->loadRefsFwd(); $sejour->loadRefsActes(); foreach ($sejour->_ref_actes_ccam as $actes_ccam) { $actes_ccam->loadRefPraticien(); } $sejour->loadRefsAffectations(); $sejour->loadNDA(); $sejour->loadLogs(); $sejour->loadRefsConsultations(); $sejour->loadRefsConsultAnesth(); $sejour->_ref_last_log->type = "create"; $dest_hprim = new CDestinataireHprim(); $dest_hprim->message = "patients"; $dest_hprim->loadMatchingObject(); if (!$sejour->_NDA) { $nda = new CIdSante400(); //Paramétrage de l'id 400 $nda->object_class = "CSejour"; $nda->object_id = $nda->_id; $nda->tag = $dest_hprim->_tag_sejour; $nda->loadMatchingObject(); $sejour->_NDA = $nda->id400; } if (CAppUI::conf("sip send_sej_pa") && $sejour->_etat != "preadmission") { continue; } if (CAppUI::conf("sip sej_no_numdos") && $sejour->_NDA && $sejour->_NDA != "-") { continue; }
/** * Mapping et enregistrement de la venue * * @param CSejour &$newVenue Séjour * @param array $data Datas * @param string $etatVenueEliminee État de la venue à éliminer * @param CIdSante400 &$idexVenue Idex de la venue * @param CIdSante400 &$idexVenueEliminee Idex de la venue à éliminer * * @return array */ private function mapAndStoreVenue(&$newVenue, $data, $etatVenueEliminee, CIdSante400 &$idexVenue, CIdSante400 &$idexVenueEliminee) { $sender = new CDestinataireHprim(); $sender->nom = $data['idClient']; $sender->loadMatchingObject(); $messages = array(); // Mapping de la venue a éliminer $newVenue = $this->mappingVenue($data['venueEliminee'], $newVenue); // Mapping de la venue a garder $newVenue = $this->mappingVenue($data['venue'], $newVenue); // Notifier les autres destinataires $newVenue->_eai_sender_guid = $sender->_guid; // Séjour retrouvé if ($newVenue->loadMatchingSejour() || $newVenue->_id) { $messages['_code_NumDos'] = "A121"; $messages['_code_Venue'] = "store"; } else { $messages['_code_NumDos'] = "I122"; $messages['_code_Venue'] = "create"; } $messages['msgVenue'] = $newVenue->store(); $messages['commentaire'] = CEAISejour::getComment($newVenue); $idexVenue->object_id = $newVenue->_id; $idexVenue->last_update = CMbDT::dateTime(); $messages['msgNumDosVenue'] = $idexVenue->store(); $idexVenueEliminee->tag = $etatVenueEliminee != "préadmission" ? CAppUI::conf('dPplanningOp CSejour tag_dossier_cancel') . $sender->_tag_sejour : CAppUI::conf('dPplanningOp CSejour tag_dossier_pa') . $sender->_tag_sejour; $idexVenueEliminee->object_id = $newVenue->_id; $idexVenueEliminee->last_update = CMbDT::dateTime(); $messages['msgNumDosVenueEliminee'] = $idexVenueEliminee->store(); return $messages; }