当前位置: 首页>>代码示例>>PHP>>正文


PHP CSejour::fieldModified方法代码示例

本文整理汇总了PHP中CSejour::fieldModified方法的典型用法代码示例。如果您正苦于以下问题:PHP CSejour::fieldModified方法的具体用法?PHP CSejour::fieldModified怎么用?PHP CSejour::fieldModified使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CSejour的用法示例。


在下文中一共展示了CSejour::fieldModified方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getCodeSejour

 /**
  * Get admit HL7 event code
  *
  * @param CSejour $sejour Admit
  *
  * @return null|string
  */
 function getCodeSejour(CSejour $sejour)
 {
     $current_log = $sejour->loadLastLog();
     if (!in_array($current_log->type, array("create", "store"))) {
         return null;
     }
     $receiver = $sejour->_receiver;
     $configs = $receiver->_configs;
     $sejour->loadOldObject();
     // Cas d'une pré-admission
     if ($sejour->_etat == "preadmission") {
         // Création d'une pré-admission
         if ($current_log->type == "create") {
             // Pending admit
             if ($configs["iti31_pending_event_management"] && $sejour->recuse == -1) {
                 return "A14";
             }
             return "A05";
         }
         // Cancel the pending admission
         if ($configs["iti31_pending_event_management"] && $sejour->recuse == -1 && $sejour->fieldModified("annule", "1")) {
             return "A27";
         }
         // Modification d'une pré-admission
         // Cas d'une annulation ?
         if ($sejour->fieldModified("annule", "1")) {
             return "A38";
         }
         // Cas d'un rétablissement d'annulation ?
         if ($sejour->fieldModified("annule", "0") && $sejour->_old->annule == 1) {
             return "A05";
         }
         // Annulation de l'admission
         if ($sejour->_old->entree_reelle && !$sejour->entree_reelle) {
             return "A11";
         }
         // Réattribution dossier administratif
         if ($sejour->fieldModified("patient_id")) {
             return "A44";
         }
         if (!$configs["modification_before_admit"] && !$sejour->entree_reelle) {
             return;
         }
         // Simple modification ?
         return $this->getModificationAdmitCode($sejour->_receiver);
     }
     // Cas d'un séjour en cours (entrée réelle)
     if ($sejour->_etat == "encours") {
         // Admission faite
         $sejour_old = $sejour->_old;
         if ($sejour->fieldModified("entree_reelle") && !$sejour_old->entree_reelle || $sejour->entree_reelle && !$sejour_old->entree_reelle) {
             // Patient externe
             if (in_array($sejour->type, self::$outpatient)) {
                 return "A04";
             }
             // Admission hospitalisé
             return "A01";
         }
         // Confirmation de sortie
         if ($sejour->fieldFirstModified("confirme")) {
             return "A16";
         }
         // Annulation confirmation de sortie
         if ($sejour->fieldEmptyValued("confirme")) {
             return "A25";
         }
         // Bascule du type et type_pec
         if ($sejour->fieldModified("type")) {
             $sejour->_old->_receiver = $sejour->_receiver;
             return $this->getBasculeCode($sejour->_old, $sejour);
         }
         // Changement du médecin responsable
         if ($sejour->fieldModified("praticien_id")) {
             $first_log = $sejour->loadFirstLog();
             $praticien_id = $sejour->getValueAtDate($first_log->date, "praticien_id");
             $send_change_attending_doctor = $configs["send_change_attending_doctor"];
             // Annulation du médecin responsable
             if ($sejour->praticien_id == $praticien_id) {
                 return $send_change_attending_doctor == "A54" ? "A55" : $this->getModificationAdmitCode($receiver);
             }
             return $send_change_attending_doctor == "A54" ? "A54" : $this->getModificationAdmitCode($receiver);
         }
         // Réattribution dossier administratif
         if ($sejour->fieldModified("patient_id")) {
             return "A44";
         }
         // Cas d'une annulation
         if ($sejour->fieldModified("annule", "1")) {
             return "A11";
         }
         // Cas d'une rétablissement on simule une nouvelle admission
         if ($sejour->fieldModified("annule", "0")) {
             // Patient externe
//.........这里部分代码省略.........
开发者ID:fbone,项目名称:mediboard4,代码行数:101,代码来源:CITI31DelegatedHandler.class.php


注:本文中的CSejour::fieldModified方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。