/** * Chargement du patient * * @return CPatient */ function loadRefPatient() { return $this->_ref_patient = $this->_ref_operation->loadRefPatient(); }
/** * Prepare the data to send from the given operation * * @param COperation $operation The operation * @param string $encoding The encoding * @param string $modality The target modality * @param string $calling_ae_title The AE title who requested the worklist * @param CDicomConfig $dicom_config The Exchange Dicom * * @return array */ protected static function getDataFromOperation($operation, $encoding, $modality, $calling_ae_title, $dicom_config) { $patient = $operation->loadRefPatient(); $operation->updateFormFields(); $operation->loadRefPlageOp(); $sejour = $operation->loadRefSejour(); $chir = $operation->loadRefChir(); $patient->loadIPP(); $sejour->loadNDA(); $libelle = ""; if ($operation->libelle) { $libelle = substr($operation->libelle, 0, 64); } else { $libelle = "Pas de libellé"; } $date = ""; if ($operation->date) { $date = str_replace("-", "", $operation->date); } else { $date = str_replace("-", "", $operation->_ref_plageop->date); } $time = ""; if ($operation->time_operation) { $time = str_replace(":", "", $operation->time_operation); $time .= ".000000"; } else { $time = str_replace(':', '', CMbDT::time()) . '.000000'; } $sejour_id = $sejour->_id; if ($sejour->_NDA) { $sejour_id = $sejour->_NDA; } $patient_id = $patient->_id; if ($patient->_IPP) { $patient_id = $patient->_IPP; } $age = intval(substr(trim($patient->_age), 0, 2)); $chir_name = "{$chir->_user_last_name} {$chir->_user_first_name}"; $data = array(0x8 => array(0x50 => self::encodeValue($sejour_id, $encoding)), 0x10 => array(0x10 => self::encodeValue("{$patient->nom}^{$patient->prenom}", $encoding), 0x20 => self::encodeValue("{$patient_id}", $encoding), 0x30 => self::encodeValue(str_replace("-", "", $patient->naissance), $encoding), 0x40 => self::encodeValue(strtoupper($patient->sexe), $encoding)), 0x20 => array(0xd => self::encodeValue($sejour_id, $encoding)), 0x38 => array(0x10 => self::encodeValue($sejour->_NDA, $encoding)), 0x40 => array(0x100 => array(array(array("group_number" => 0x8, "element_number" => 0x60, "value" => self::encodeValue($modality, $encoding)), array("group_number" => 0x40, "element_number" => 0x1, "value" => self::encodeValue($calling_ae_title, $encoding)), array("group_number" => 0x40, "element_number" => 0x2, "value" => self::encodeValue($date, $encoding)), array("group_number" => 0x40, "element_number" => 0x3, "value" => self::encodeValue($time, $encoding)), array("group_number" => 0x40, "element_number" => 0x6, "value" => self::encodeValue($chir_name, $encoding)), array("group_number" => 0x40, "element_number" => 0x7, "value" => self::encodeValue($libelle, $encoding)), array("group_number" => 0x40, "element_number" => 0x9, "value" => self::encodeValue($sejour_id, $encoding)))), 0x1001 => self::encodeValue($sejour_id, $encoding))); /* We had the field 0x0032,0x1032 if it's configured */ if ($dicom_config->send_0032_1032) { if (!array_key_exists(0x32, $data)) { $data[0x32] = array(); } $data[0x32][0x1032] = self::encodeValue($chir_name, $encoding); /* Add the field into the sequence of item 0x0040,0x0100 */ /*$data[0x0040][0x0100][0][] = array( "group_number" => 0x0032, "element_number" => 0x1032, "value" => self::encodeValue($chir_name, $encoding) );*/ } return $data; }
$check_lists_no_has = $check_items_no_has_categories = $listValidateurs_no_has = array(); $listAnesthType = array(); if ($selOp->_id) { $selOp->canDo(); $selOp->loadRefs(); $selOp->loadRefsFiles(); $selOp->loadRefsDocs(); $consult_anesth = $selOp->loadRefsConsultAnesth(); $consult_anesth->countDocItems(); $consultation = $consult_anesth->loadRefConsultation(); $consultation->countDocItems(); $consultation->canRead(); $consultation->canEdit(); $selOp->loadRefPlageOp(true); $selOp->loadRefChir()->loadRefFunction(); $selOp->loadRefPatient(); $selOp->loadRefCommande(); $date = CMbDT::date($selOp->_datetime); // Récupération de l'utilisateur courant $currUser = CMediusers::get(); $currUser->isAnesth(); $currUser->isPraticien(); $selOp->countExchanges(); $selOp->loadBrancardage(); $selOp->isCoded(); $selOp->_ref_consult_anesth->loadRefsTechniques(); $sejour = $selOp->_ref_sejour; $sejour->loadRefDossierMedical(); $sejour->_ref_dossier_medical->loadRefsBack(); $sejour->loadRefsConsultAnesth(); $sejour->_ref_consult_anesth->loadRefsFwd();
<?php /** * Onglet d'accouchement pour une parturiente en salle d'opération * * @category Maternite * @package Mediboard * @author SARL OpenXtrem <*****@*****.**> * @license GNU General Public License, see http://www.gnu.org/licenses/gpl.html * @version SVN: $Id:$ * @link http://www.mediboard.org */ $operation_id = CValue::get("operation_id"); $operation = new COperation(); $operation->load($operation_id); $operation->loadRefPlageOp(1); $sejour = $operation->loadRefSejour(true); $grossesse = $sejour->loadRefGrossesse(); $grossesse->loadRefsSejours(); $grossesse->loadRefsConsultations(); foreach ($grossesse->_ref_consultations as $_consult) { $_consult->loadRefPlageConsult(); } $grossesse->_semaine_grossesse = ceil(CMbDT::daysRelative($grossesse->_date_fecondation, CMbDT::date($operation->_datetime)) / 7); $grossesse->_terme_vs_operation = CMbDT::daysRelative($grossesse->terme_prevu, CMbDT::date($operation->_datetime)); $patient = $operation->loadRefPatient(); $smarty = new CSmartyDP(); $smarty->assign("operation", $operation); $smarty->display("inc_vw_grossesse.tpl");