Ejemplo n.º 1
0
     $evenement_ssr = new CEvenementSSR();
     $where = array();
     $where["sejour_id"] = " = '{$_sejour->_id}'";
     $where["therapeute_id"] = " = '{$_plage_conge->user_id}'";
     $where["debut"] = " BETWEEN '{$date_min}' AND '{$date_max}'";
     $count_evts["{$_plage_conge->_id}-{$_sejour->_id}"] = $evenement_ssr->countList($where);
     $_sejour->checkDaysRelative($date);
     $replacement = $_sejour->loadRefReplacement($_plage_conge->_id);
     if (!$replacement->_id || $type == "reeducateur") {
         $sejours_count++;
     }
     if ($replacement->_id || $type == "kine") {
         $replacement->loadRefReplacer()->loadRefFunction();
     }
     if (!$replacement->_id && $type == "kine") {
         $replacement->_ref_guessed_replacers = CEvenementSSR::getAllTherapeutes($_sejour->patient_id, $kine->function_id);
         unset($replacement->_ref_guessed_replacers[$kine->_id]);
     }
     // Bilan SSR
     $bilan = $_sejour->loadRefBilanSSR();
     // Kine principal
     /** @var CTechnicien $technicien */
     $technicien = $bilan->loadFwdRef("technicien_id");
     $technicien->loadRefKine()->loadRefFunction();
     // Patient
     $patient = $_sejour->loadRefPatient();
     $patient->loadIPP();
 }
 if (count($_sejours)) {
     $sejours[$_plage_conge->_id] = $_sejours;
 }
Ejemplo n.º 2
0
}
// Chargement des praticiens
$user = new CMediusers();
$user->load($conge->user_id);
$user->loadRefFunction();
$users = $user->loadUsers(PERM_READ, $user->function_id);
// Séjours des patients
$therapeutes = array();
$all_sejours = array();
foreach ($sejours as $_sejour) {
    $patient = $_sejour->loadRefPatient();
    foreach ($patient->loadRefsSejours() as $_other_sejour) {
        $_other_sejour->loadRefPatient();
        $all_sejours[$_other_sejour->_id] = $_other_sejour;
        $_other_sejour->loadRefBilanSSR()->loadRefTechnicien();
        $therapeutes += CEvenementSSR::getAllTherapeutes($_other_sejour->patient_id, $user->function_id);
    }
}
// Chargement des comptes d'événements
$evenements_counts = array();
$evenement = new CEvenementSSR();
$where["sejour_id"] = CSQLDataSource::prepareIn(array_keys($all_sejours));
$where["therapeute_id"] = CSQLDataSource::prepareIn(array_keys($therapeutes));
/** @var CEvenementSSR $_evenement */
foreach ($evenement->loadList($where) as $_evenement) {
    @$evenements_counts[$_evenement->sejour_id][$_evenement->therapeute_id]++;
}
if (!$replacement->_id) {
    $replacement->conge_id = $conge_id;
    $replacement->sejour_id = $sejour_id;
}