/** * Initialize the class specifications * * @return CMbFieldSpec */ function getSpec() { $spec = parent::getSpec(); $spec->table = "sender_sftp"; $spec->key = "sender_sftp_id"; return $spec; }
/** * Get backward reference specifications * * @return array */ function getBackProps() { $backProps = parent::getBackProps(); $backProps["exchange_dicom"] = "CExchangeDicom sender_id"; $backProps["session_dicom"] = "CDicomSession sender_id"; $backProps['config'] = 'CDicomConfig sender_id'; return $backProps; }
function getBackProps() { $backProps = parent::getBackProps(); $backProps["expediteur_hprimxml"] = "CEchangeHprim sender_id"; $backProps["expediteur_hprimsante"] = "CExchangeHprimSante sender_id"; $backProps["expediteur_hprim21"] = "CEchangeHprim21 sender_id"; $backProps["expediteur_hl7v2"] = "CExchangeHL7v2 sender_id"; $backProps["expediteur_hl7v3"] = "CExchangeHL7v3 sender_id"; $backProps["expediteur_dmp"] = "CExchangeDMP sender_id"; $backProps["expediteur_phast"] = "CExchangePhast sender_id"; $backProps["expediteur_any"] = "CExchangeAny sender_id"; $backProps["expediteur_mvsante"] = "CExchangeMVSante sender_id"; $backProps["config_hprimsante"] = "CHPrimSanteConfig sender_id"; $backProps["config_hprimxml"] = "CHprimXMLConfig sender_id"; $backProps["config_hl7"] = "CHL7Config sender_id"; $backProps["config_mvsante"] = "CMVSanteXMLConfig sender_id"; return $backProps; }
/** * @see parent::store() */ function store() { if ($msg = parent::store()) { return $msg; } if ($this->_duplicate) { $duplicate = new self(); foreach ($this->getProperties() as $name => $value) { if ($name[0] !== "_" && $name != $this->_spec->key) { $duplicate->{$name} = $value; } } $duplicate->nom .= " (Copy)"; if ($duplicate->libelle) { $duplicate->libelle .= " (Copy)"; } $duplicate->store(); } $this->_duplicate = null; }
/** * Recording NDA * * @param CIdSante400 $NDA Object id400 * @param CSejour $sejour Admit * @param CInteropSender $sender Sender * * @return null|string null if successful otherwise returns and error message */ static function storeNDA(CIdSante400 $NDA, CSejour $sejour, CInteropSender $sender) { /* Gestion du numéroteur */ $group = new CGroups(); $group->load($sender->group_id); $group->loadConfigValues(); // Purge du NDA existant sur le séjour et on le remplace par le nouveau if ($sender->_configs["purge_idex_movements"]) { // On charge le NDA courant du séjour $sejour->loadNDA($sender->group_id); $ref_NDA = $sejour->_ref_NDA; if ($ref_NDA) { // Si le NDA actuel est identique à celui qu'on reçoit on ne fait rien if ($ref_NDA->id400 == $NDA->id400) { return; } // On passe le NDA courant en trash $ref_NDA->tag = CAppUI::conf("dPplanningOp CSejour tag_dossier_trash") . $ref_NDA->tag; $ref_NDA->_eai_sender_guid = $sender->_guid; $ref_NDA->store(); } // On sauvegarde le nouveau $NDA->tag = $sender->_tag_sejour; $NDA->object_class = "CSejour"; $NDA->object_id = $sejour->_id; $NDA->last_update = CMbDT::dateTime(); $NDA->_eai_sender_guid = $sender->_guid; return $NDA->store(); } // Génération du NDA ? // Non if (!$group->_configs["smp_idex_generator"]) { if (!$NDA->id400) { return null; } if ($sejour) { $NDA->object_id = $sejour->_id; } $NDA->last_update = CMbDT::dateTime(); $NDA->_eai_sender_guid = $sender->_guid; return $NDA->store(); } else { $NDA_temp = CIdSante400::getMatch("CSejour", $sender->_tag_sejour, null, $sejour->_id); if ($NDA_temp->_id) { return; } // Pas de NDA passé if (!$NDA->id400) { if (!CIncrementer::generateIdex($sejour, $sender->_tag_sejour, $sender->group_id)) { return CAppUI::tr("CEAISejour-error-generate-idex"); } return null; } else { $incrementer = $sender->loadRefGroup()->loadDomainSupplier("CSejour"); if ($incrementer && $NDA->id400 < $incrementer->range_min || $NDA->id400 > $incrementer->range_max) { return CAppUI::tr("CEAISejour-idex-not-in-the-range"); } $NDA->object_id = $sejour->_id; $NDA->last_update = CMbDT::dateTime(); $NDA->_eai_sender_guid = $sender->_guid; return $NDA->store(); } } }
/** * Get objects * * @return array CInteropReceiver/CInteropSender collection */ function getObjects() { $receiver = new CInteropReceiver(); $sender = new CInteropSender(); return array("CInteropReceiver" => $receiver->getObjects(), "CInteropSender" => $sender->getObjects()); }
/** * Recording RI sender * * @param string $RI_sender Idex value * @param CPatient $patient Patient * @param CInteropSender $sender Sender * * @return null|string null if successful otherwise returns and error message */ static function storeRISender($RI_sender, CPatient $patient, CInteropSender $sender) { $domain = $sender->loadRefDomain(); $idex = new CIdSante400(); $idex->object_class = "CPatient"; $idex->object_id = $patient->_id; $idex->tag = $domain->tag; $idex->id400 = $RI_sender; return $idex->store(); }