本文整理汇总了PHP中CSejour类的典型用法代码示例。如果您正苦于以下问题:PHP CSejour类的具体用法?PHP CSejour怎么用?PHP CSejour使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了CSejour类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: logForSejour
/**
* logSejourAccess
*
* @param CSejour $sejour
*
* @return bool has the access been logged
*/
static function logForSejour($sejour)
{
$group = $sejour->loadRefEtablissement();
if (!CAppUI::conf("admin CLogAccessMedicalData enable_log_access", $group) || !$sejour->_id) {
return false;
}
$user = CMediusers::get();
$conf = CAppUI::conf("admin CLogAccessMedicalData round_datetime", $group);
$datetime = CMbDT::dateTime();
switch ($conf) {
case '1m':
// minute
$datetime = CMbDT::format($datetime, "%y-%m-%d %H:%M:00");
break;
case '10m':
// 10 minutes
$minute = CMbDT::format($datetime, "%M");
$minute = str_pad(floor($minute / 10) * 10, 2, 0, STR_PAD_RIGHT);
$datetime = CMbDT::format($datetime, "%y-%m-%d %H:{$minute}:00");
break;
case '1d':
// 1 day
$datetime = CMbDT::format($datetime, "%y-%m-%d 00:00:00");
break;
default:
// 1 hour
$datetime = CMbDT::format($datetime, "%y-%m-%d %H:00:00");
break;
}
return self::logintoDb($user->_id, $sejour->_class, $sejour->_id, $datetime, $group->_id);
}
示例2: loadRefContext
/**
* Load context
*
* @return CConsultation|CSejour|CPatient
*/
function loadRefContext()
{
if ($this->context_class && $this->context_id) {
$this->_ref_context = new $this->context_class();
$this->_ref_context = $this->_ref_context->getCached($this->context_id);
}
}
示例3: loadRefSejour
/**
* Charge le séjour associé
*
* @return CSejour
*/
function loadRefSejour()
{
$this->_ref_sejour = new CSejour();
$this->_ref_sejour->load($this->sejour_id);
$this->_ref_sejour->loadRefsFwd();
return $this->_ref_sejour;
}
示例4: generateFromOperation
/**
* Generate content message
*
* @param CSejour $sejour Admit
*
* @return void
*/
function generateFromOperation(CSejour $sejour)
{
$evenementsServeurEtatsPatient = $this->documentElement;
// Ajout du patient
$mbPatient = $sejour->loadRefPatient();
$patient = $this->addElement($evenementsServeurEtatsPatient, "patient");
$this->addPatient($patient, $mbPatient, false, true);
// Ajout de la venue, c'est-à-dire le séjour
$venue = $this->addElement($evenementsServeurEtatsPatient, "venue");
$this->addVenue($venue, $sejour, false, true);
$dateObservation = $this->addElement($evenementsServeurEtatsPatient, "dateObservation");
$this->addDateHeure($dateObservation, CMbDT::dateTime());
// Ajout des diagnostics
$Diagnostics = $this->addElement($evenementsServeurEtatsPatient, "Diagnostics");
$this->addDiagnosticsEtat($Diagnostics, $sejour);
// Traitement final
$this->purgeEmptyElements();
}
示例5: createDomain
/**
* Create domains
*
* @return bool
*/
protected function createDomain()
{
$ds = $this->ds;
$groups = $ds->loadList("SELECT * FROM groups_mediboard");
$tab = array("CPatient", "CSejour");
foreach ($groups as $_group) {
$group_id = $_group["group_id"];
$group_configs = $ds->loadHash("SELECT * FROM groups_config WHERE object_id = '{$group_id}'");
foreach ($tab as $object_class) {
if ($object_class == "CPatient") {
$tag_group = CPatient::getTagIPP($group_id);
if (!$group_configs || !array_key_exists("ipp_range_min", $group_configs)) {
continue;
}
$range_min = $group_configs["ipp_range_min"];
$range_max = $group_configs["ipp_range_max"];
} else {
$tag_group = CSejour::getTagNDA($group_id);
if (!$group_configs || !array_key_exists("nda_range_min", $group_configs)) {
continue;
}
$range_min = $group_configs["nda_range_min"];
$range_max = $group_configs["nda_range_max"];
}
if (!$tag_group) {
continue;
}
// Insert domain
$query = "INSERT INTO `domain` (`domain_id`, `incrementer_id`, `actor_id`, `actor_class`, `tag`)\n VALUES (NULL, NULL, NULL, NULL, '{$tag_group}');";
$ds->query($query);
$domain_id = $ds->insertId();
// Insert group domain
$query = "INSERT INTO `group_domain` (`group_domain_id`, `group_id`, `domain_id`, `object_class`, `master`)\n VALUES (NULL, '{$group_id}', '{$domain_id}', '{$object_class}', '1');";
$ds->query($query);
// Select incrementer for this group
$select = "SELECT *\n FROM `incrementer`\n LEFT JOIN `domain` ON `incrementer`.`incrementer_id` = `domain`.`incrementer_id`\n LEFT JOIN `group_domain` ON `domain`.`domain_id` = `group_domain`.`domain_id`\n WHERE `incrementer`.`object_class` = '{$object_class}'\n AND `group_domain`.`group_id` = '{$group_id}';";
$incrementer = $ds->loadHash($select);
$incrementer_id = $incrementer["incrementer_id"];
if ($incrementer_id) {
// Update domain with incrementer_id
$query = "UPDATE `domain`\n SET `incrementer_id` = '{$incrementer_id}'\n WHERE `domain_id` = '{$domain_id}';";
$ds->query($query);
// Update incrementer
if (!array_key_exists("nda_range_min", $group_configs) || !$range_max || $range_min === null) {
continue;
}
$query = "UPDATE `incrementer`\n SET `range_min` = '{$range_min}', `range_max` = '{$range_max}'\n WHERE `incrementer_id` = '{$incrementer_id}';";
$ds->query($query);
}
}
}
// Update constraints to stick to the event
return true;
}
示例6: canAccess
/**
* check if we can access to the view following the configuration and already granted.
*
* @param CSejour $sejour sejour object
*
* @return bool
*/
static function canAccess($sejour)
{
$group = $sejour->loadRefEtablissement();
$user = CMediusers::get();
//check for config and elements
if (!$sejour->_id || !CAppUI::conf("admin CBrisDeGlace enable_bris_de_glace", $group) || $sejour->praticien_id == $user->_id || !$user->use_bris_de_glace) {
return true;
}
$today = CMbDT::date();
$bris = new self();
$where = array();
$where["date"] = " BETWEEN '{$today} 00:00:00' AND '{$today} 23:59:59'";
$where["object_class"] = " = 'CSejour'";
$where["object_id"] = " = '{$sejour->_id}'";
$where["user_id"] = " = '{$user->_id}'";
// no need of bris de glace
if ($bris->countList($where)) {
return true;
}
return false;
}
示例7: onAfterStore
/**
* @see parent::onAfterStore()
*/
function onAfterStore(CMbObject $mbObject)
{
if (!$this->isHandled($mbObject)) {
return false;
}
if (!$mbObject->_id || !$this->create) {
return false;
}
$group_id = $mbObject->_id;
$object_class = array("CSejour", "CPatient");
global $dPconfig;
$original_value = $dPconfig["eai"]["use_domain"];
$dPconfig["eai"]["use_domain"] = "0";
foreach ($object_class as $_class) {
switch ($_class) {
case "CSejour":
$tag_group = CSejour::getTagNDA($group_id);
break;
case "CPatient":
$tag_group = CPatient::getTagIPP($group_id);
break;
default:
$tag_group = null;
}
if (!$tag_group) {
continue;
}
$domain = new CDomain();
$domain->tag = $tag_group;
if ($domain->store()) {
continue;
}
$group_domain = new CGroupDomain();
$group_domain->group_id = $group_id;
$group_domain->domain_id = $domain->_id;
$group_domain->object_class = $_class;
$group_domain->master = "1";
$group_domain->store();
}
$dPconfig["eai"]["use_domain"] = "{$original_value}";
return true;
}
示例8: CSejour
<?php
/**
* $Id$
*
* @category Soins
* @package Mediboard
* @author SARL OpenXtrem <dev@openxtrem.com>
* @license GNU General Public License, see http://www.gnu.org/licenses/gpl.html
* @version $Revision$
*/
CCanDo::checkEdit();
$consult_id = CValue::get("consult_id", 0);
$sejour_id = CValue::get("sejour_id", 0);
$chir_id = CValue::get("chir_id", 0);
$sejour = new CSejour();
$sejour->load($sejour_id);
if ($sejour->_id) {
$chir = new CMediusers();
if ($chir_id) {
$chir->load($chir_id);
} else {
$chir->load($sejour->praticien_id);
}
$sejour->loadRefPraticien();
$sejour->loadRefsActes();
$sejour->updateFormFields();
$sejour->_datetime = CMbDT::dateTime();
// Récupération des tarifs
/** @var CTarif $tarif */
$tarif = new CTarif();
示例9: array
$period = CValue::get("period");
$forms_limit = CValue::get("forms_limit");
if (!$sejour_id) {
CAppUI::stepMessage(UI_MSG_WARNING, "Veuillez sélectionner un sejour pour visualiser le dossier complet");
return;
}
$fiches_anesthesies = array();
$formulaires = null;
global $atc_classes;
$atc_classes = array();
$datetime_min = "";
if ($period) {
$datetime_min = CMbDT::dateTime("- {$period} HOURS");
}
// Chargement du sejour
$sejour = new CSejour();
$sejour->load($sejour_id);
$sejour->loadNDA();
$sejour->loadExtDiagnostics();
$sejour->loadRefsConsultAnesth();
$sejour->_ref_consult_anesth->loadRefConsultation();
$sejour->canRead();
// Chargement des affectations
$sejour->loadRefCurrAffectation()->loadRefLit();
foreach ($sejour->loadRefsAffectations() as $_affectation) {
$_affectation->loadRefLit();
}
// Chargement des tâches
foreach ($sejour->loadRefsTasks() as $_task) {
$_task->loadRefPrescriptionLineElement();
$_task->setDateAndAuthor();
示例10: CMediusers
$testChir = new CMediusers();
$testChir->load($chir_id);
if ($testChir->isPraticien()) {
$chir = $testChir;
}
}
$chir->loadRefFunction();
$prat = $chir;
// Chargement du patient
$patient = new CPatient();
if ($patient_id && !$operation_id && !$sejour_id) {
$patient->load($patient_id);
$patient->loadRefsSejours();
}
// On récupère le séjour
$sejour = new CSejour();
if ($sejour_id && !$operation_id) {
$sejour->load($sejour_id);
CAccessMedicalData::checkForSejour($sejour);
$sejour->loadRefsFwd();
$sejour->loadRefCurrAffectation()->loadRefService();
if (!$chir_id) {
$chir = $sejour->_ref_praticien;
}
// On ne change a priori pas le praticien du séjour
$sejour->_ref_praticien->canDo();
$prat = $sejour->_ref_praticien;
$patient = $sejour->_ref_patient;
}
$grossesse = new CGrossesse();
if ($grossesse_id && !$sejour_id && !$operation_id) {
示例11: CDiscipline
/**
* $Id: httpreq_pathologies.php 20186 2013-08-19 07:47:12Z phenxdesign $
*
* @package Mediboard
* @subpackage Hospi
* @author SARL OpenXtrem <dev@openxtrem.com>
* @license GNU General Public License, see http://www.gnu.org/licenses/gpl.html
* @version $Revision: 20186 $
*/
$affichage_patho = CValue::getOrSession("affichage_patho");
$date = CValue::getOrSession("date", CMbDT::date());
$pathos = new CDiscipline();
// Recuperation de l'id du sejour
$sejour_id = CValue::get("sejour_id");
$sejour = new CSejour();
$sejour->load($sejour_id);
$sejour->loadRefPraticien();
$sejour->_ref_praticien->loadRefFunction();
$sejour->loadRefPatient();
$sejour->loadRefsOperations();
foreach ($sejour->_ref_operations as &$operation) {
$operation->loadExtCodesCCAM();
}
// Création du template
$smarty = new CSmartyDP();
$smarty->assign("pathos", $pathos);
$smarty->assign("date", $date);
$smarty->assign("curr_sejour", $sejour);
$smarty->assign("affichage_patho", $affichage_patho);
$smarty->display("inc_pathologies.tpl");
示例12: CSejour
* $Id$
*
* @category Search
* @package Mediboard
* @author SARL OpenXtrem <dev@openxtrem.com>
* @license GNU General Public License, see http://www.gnu.org/licenses/gpl.html
* @link http://www.mediboard.org
*/
CCanDo::checkRead();
$prescription_id = CValue::get("prescription_id", null);
$sejour_id = CValue::get("sejour_id");
$contexte = CValue::get("contexte");
$user = CMediusers::get();
$_ref_object = new CSejour();
if ($sejour_id) {
$sejour = new CSejour();
$sejour->load($sejour_id);
$_ref_object = $sejour;
if (!$contexte) {
$contexte = "pmsi";
}
}
if ($prescription_id) {
$prescription = new CPrescription();
$prescription->load($prescription_id);
$prescription->loadRefObject();
$_ref_object = $prescription->_ref_object;
if (!$contexte) {
$contexte = $user->isPraticien() ? "prescription" : "pharmacie";
}
}
示例13: CSejour
// Type d'affichage
$uhcd_affichage = CValue::postOrSession("uhcd_affichage", CAppUI::conf("dPurgences default_view"));
// Parametre de tri
$order_way = CValue::getOrSession("order_way", "DESC");
$order_col = CValue::getOrSession("order_col", CAppUI::pref("defaultRPUSort"));
// Selection de la date
$date = CValue::getOrSession("date", CMbDT::date());
$date_tolerance = CAppUI::conf("dPurgences date_tolerance");
$date_before = CMbDT::date("-{$date_tolerance} DAY", $date);
$date_after = CMbDT::date("+1 DAY", $date);
// L'utilisateur doit-il voir les informations médicales
$user = CMediusers::get();
$medicalView = $user->isMedical();
$group = CGroups::loadCurrent();
$listPrats = $user->loadPraticiens(PERM_READ, $group->service_urgences_id);
$sejour = new CSejour();
$where = array();
$ljoin["rpu"] = "sejour.sejour_id = rpu.sejour_id";
$ljoin["patients"] = "sejour.patient_id = patients.patient_id";
$where[] = "sejour.entree BETWEEN '{$date}' AND '{$date_after}' \n OR (sejour.sortie_reelle IS NULL AND sejour.entree BETWEEN '{$date_before}' AND '{$date_after}' AND sejour.annule = '0')";
$where[] = CAppUI::pref("showMissingRPU") ? "sejour.type = 'comp' OR rpu.rpu_id IS NOT NULL" : "rpu.rpu_id IS NOT NULL";
$where["sejour.group_id"] = "= '{$group->_id}'";
$where["sejour.UHCD"] = "= '1'";
if ($uhcd_affichage == "prendre_en_charge") {
$ljoin["consultation"] = "consultation.sejour_id = sejour.sejour_id";
$where["consultation.consultation_id"] = "IS NULL";
}
if ($uhcd_affichage == "presents") {
$where["sejour.sortie_reelle"] = "IS NULL";
$where["sejour.annule"] = " = '0'";
if (CAppUI::conf("dPurgences create_sejour_hospit")) {
示例14: array
$dateW = $consult->_ref_plageconsult->date;
$whereN = array();
$ljoin = array();
$ljoin["plageconsult"] = "plageconsult.plageconsult_id = consultation.plageconsult_id";
$whereN["patient_id"] = " = '{$consult->patient_id}'";
$whereN["plageconsult.date"] = " >= '{$dateW}'";
$whereN["heure"] = " >= '{$consult->heure}'";
/** @var CConsultation[] $consults */
$consults = $consult->loadListWithPerms(PERM_READ, $whereN, null, null, null, $ljoin);
foreach ($consults as $_consult) {
$_consult->loadRefPraticien()->loadRefFunction();
$_consult->loadRefSejour();
}
// sejours
$where = array();
$where[] = "'{$consult->_date}' BETWEEN DATE(entree) AND DATE(sortie)";
$where["sejour.type"] = "!= 'consult'";
$where["sejour.group_id"] = "= '{$group_id}'";
$where["sejour.patient_id"] = "= '{$consult->patient_id}'";
/** @var CSejour[] $sejours */
$sejour = new CSejour();
$sejours = $sejour->loadListWithPerms(PERM_READ, $where);
CMbObject::massLoadFwdRef($sejours, "praticien_id");
foreach ($sejours as $_sejour) {
$_sejour->loadRefPraticien()->loadRefFunction();
}
$smarty = new CSmartyDP();
$smarty->assign("sejours", $sejours);
$smarty->assign("consult", $consult);
$smarty->assign("next_consults", $consults);
$smarty->display("inc_link_sejour.tpl");
示例15: CSejour
<?php
/**
* $Id: httpreq_list_diags.php 19374 2013-06-01 12:56:17Z mytto $
*
* @package Mediboard
* @subpackage PMSI
* @author SARL OpenXtrem <dev@openxtrem.com>
* @license GNU General Public License, see http://www.gnu.org/licenses/gpl.html
* @version $Revision: 19374 $
*/
CCanDo::checkEdit();
$sejour_id = CValue::getOrSession("sejour_id");
$sejour = new CSejour();
$sejour->load($sejour_id);
$sejour->loadRefDossierMedical()->updateFormFields();
$patient = $sejour->loadRefPatient();
$patient->loadRefDossierMedical()->updateFormFields();
// Création du template
$smarty = new CSmartyDP();
$smarty->assign("patient", $sejour->_ref_patient);
$smarty->assign("sejour", $sejour);
$smarty->display("inc_list_diags.tpl");