當前位置: 首頁>>代碼示例>>PHP>>正文


PHP CPatient::trashIPP方法代碼示例

本文整理匯總了PHP中CPatient::trashIPP方法的典型用法代碼示例。如果您正苦於以下問題:PHP CPatient::trashIPP方法的具體用法?PHP CPatient::trashIPP怎麽用?PHP CPatient::trashIPP使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在CPatient的用法示例。


在下文中一共展示了CPatient::trashIPP方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: storeIPP

 /**
  * Recording IPP
  * 
  * @param CIdSante400    $IPP     Object id400
  * @param CPatient       $patient Patient
  * @param CInteropSender $sender  Sender
  * 
  * @return null|string null if successful otherwise returns and error message
  */
 static function storeIPP(CIdSante400 $IPP, CPatient $patient, CInteropSender $sender)
 {
     /* Gestion du numéroteur */
     $group = new CGroups();
     $group->load($sender->group_id);
     $group->loadConfigValues();
     // Purge de l'IPP existant sur le patient et on le remplace par le nouveau
     if ($sender->_configs && $sender->_configs["purge_idex_movements"]) {
         // On charge l'IPP courant du patient
         $patient->loadIPP($sender->group_id);
         $ref_IPP = $patient->_ref_IPP;
         if ($ref_IPP) {
             // Si l'IPP actuel est identique à celui qu'on reçoit on ne fait rien
             if ($ref_IPP->id400 == $IPP->id400) {
                 return;
             }
             // On passe l'IPP courant en trash
             $ref_IPP->tag = CAppUI::conf("dPpatients CPatient tag_ipp_trash") . $ref_IPP->tag;
             $ref_IPP->_eai_sender_guid = $sender->_guid;
             $ref_IPP->store();
             $patient->trashIPP($ref_IPP);
         }
         // On sauvegarde le nouveau
         $IPP->tag = $sender->_tag_patient;
         $IPP->object_class = "CPatient";
         $IPP->object_id = $patient->_id;
         $IPP->last_update = CMbDT::dateTime();
         $IPP->_eai_sender_guid = $sender->_guid;
         return $IPP->store();
     }
     // Génération de l'IPP ?
     /* @todo sip_idex_generator doit être remplacé par isIPPSupplier */
     if ($sender->_configs && !$group->_configs["sip_idex_generator"]) {
         if (!$IPP->id400) {
             return null;
         }
         if ($patient) {
             $IPP->object_id = $patient->_id;
         }
         $IPP->last_update = CMbDT::dateTime();
         $IPP->_eai_sender_guid = $sender->_guid;
         return $IPP->store();
     } else {
         $IPP_temp = CIdSante400::getMatch("CPatient", $sender->_tag_patient, null, $patient->_id);
         // Pas d'IPP passé
         if (!$IPP->id400) {
             if ($IPP_temp->_id) {
                 return null;
             }
             if (!CIncrementer::generateIdex($patient, $sender->_tag_patient, $sender->group_id)) {
                 return CAppUI::tr("CEAIPatient-error-generate-idex");
             }
             return null;
         } else {
             // Si j'ai déjà un identifiant
             if ($IPP_temp->_id) {
                 // On passe l'IPP courant en trash
                 $IPP_temp->tag = CAppUI::conf("dPpatients CPatient tag_ipp_trash") . $IPP_temp->tag;
                 $IPP_temp->_eai_sender_guid = $sender->_guid;
                 $IPP_temp->store();
             }
             $incrementer = $sender->loadRefGroup()->loadDomainSupplier("CPatient");
             if ($incrementer && $IPP->id400 < $incrementer->range_min || $IPP->id400 > $incrementer->range_max) {
                 return CAppUI::tr("CEAIPatient-idex-not-in-the-range");
             }
             $IPP->object_id = $patient->_id;
             $IPP->last_update = CMbDT::dateTime();
             $IPP->_eai_sender_guid = $sender->_guid;
             return $IPP->store();
         }
     }
 }
開發者ID:fbone,項目名稱:mediboard4,代碼行數:81,代碼來源:CEAIPatient.class.php


注:本文中的CPatient::trashIPP方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。