Ejemplo n.º 1
0
        $plage->multicountOperations();
        $nbIntervNonPlacees += $plage->_count_operations - $plage->_count_operations_placees;
        $plage->loadAffectationsPersonnel();
        $plage->fin = min($plage->fin, $max);
        $plage->debut = max($plage->debut, $min);
        $plage->updateFormFields();
        $plage->makeView();
        if ($plage->debut >= $plage->fin) {
            unset($listPlages[$keyDate][$plage->_id]);
        }
    }
    // Remplissage du tableau de visualisation
    foreach ($listPlages[$keyDate] as $plage) {
        $plage->debut = CMbDT::timeGetNearestMinsWithInterval($plage->debut, CPlageOp::$minutes_interval);
        $plage->fin = CMbDT::timeGetNearestMinsWithInterval($plage->fin, CPlageOp::$minutes_interval);
        $plage->_nbQuartHeure = CMbDT::timeCountIntervals($plage->debut, $plage->fin, "00:" . CPlageOp::$minutes_interval . ":00");
        for ($time = $plage->debut; $time < $plage->fin; $time = CMbDT::time("+" . CPlageOp::$minutes_interval . " minutes", $time)) {
            $affichages["{$keyDate}-{$time}"] = "full";
        }
        $affichages["{$keyDate}-{$plage->debut}"] = $plage->_id;
    }
    // Ajout des interventions hors plage
    foreach ($horsPlages as $_op) {
        if ($_op->salle_id) {
            $affichages["{$keyDate}-HorsPlage"][$_op->_id] = $_op;
        }
    }
}
//Création du template
$smarty = new CSmartyDP();
$smarty->assign("listPlages", $listPlages);
 $plage->loadRefsFwd(true);
 $function_id = $plage->_ref_chir->function_id;
 $plage->loadRefsConsultations(false, true, true);
 $plage->loadFillRate();
 $plage->_ref_chir->loadRefFunction();
 for ($i = 0; $i < $plage->_total; $i++) {
     $minutes = $plage->_freq * $i;
     $listPlace[$i]["time"] = CMbDT::time("+ {$minutes} minutes", $plage->debut);
     $listPlace[$i]["consultations"] = array();
 }
 foreach ($plage->_ref_consultations as $keyConsult => $valConsult) {
     $consultation =& $plage->_ref_consultations[$keyConsult];
     $consultation->loadRefPatient();
     // Chargement de la categorie
     $consultation->loadRefCategorie();
     $keyPlace = CMbDT::timeCountIntervals($plage->debut, $consultation->heure, $plage->freq);
     if ($keyPlace < 0) {
         $listBefore[$keyPlace] =& $consultation;
     }
     if ($consultation->heure >= $plage->fin) {
         $listAfter[$keyPlace] =& $consultation;
     }
     for ($i = 0; $i < $consultation->duree; $i++) {
         if (isset($listPlace[$keyPlace + $i])) {
             $listPlace[$keyPlace + $i]["consultations"][] =& $consultation;
         }
     }
 }
 // Utilisation des prises de rdv
 // Pour ceux de la même fonction
 $user = new CMediusers();
Ejemplo n.º 3
0
 /**
  * @see parent::updateFormFields()
  */
 function updateFormFields()
 {
     parent::updateFormFields();
     $this->_total = CMbDT::timeCountIntervals($this->debut, $this->fin, $this->freq);
     if ($this->freq == "1:00:00" || $this->freq == "01:00:00") {
         $this->_freq = "60";
     } else {
         $this->_freq = substr($this->freq, 3, 2);
         $this->_freq_minutes = CMbDT::minutesRelative("00:00:00", $this->freq);
     }
 }