/** * @see parent::store() */ function store() { // Transférer les événéments de l'ancien référent vers le nouveau if ($this->technicien_id && $this->fieldAltered("technicien_id")) { $technicien = $this->loadRefTechnicien(); $old_technicien = new CTechnicien(); $old_technicien->load($this->_old->_id); $evenement = new CEvenementSSR(); $evenement->therapeute_id = $old_technicien->kine_id; $evenement->sejour_id = $this->sejour_id; foreach ($evenement->loadMatchingList() as $_evenement) { /** @var CEvenementSSR $_evenement */ if (!$_evenement->_traite) { $_evenement->therapeute_id = $technicien->kine_id; $_evenement->store(); CAppUI::setMsg("{$_evenement->_class}-msg-modify", UI_MSG_OK); } } } return parent::store(); }
* @author SARL OpenXtrem <*****@*****.**> * @license GNU General Public License, see http://www.gnu.org/licenses/gpl.html * @version $Revision$ */ CCanDo::checkRead(); // Plateau du contexte $plateau = new CPlateauTechnique(); $plateau->load(CValue::get("plateau_id")); // Détails des techniciens $date = CMbDT::date(); foreach ($plateau->loadRefsTechniciens(false) as $_technicien) { $_technicien->countSejoursDate($date); } // Technicien à editer $technicien = new CTechnicien(); $technicien->load(CValue::get("technicien_id")); $technicien->plateau_id = $plateau->_id; $technicien->loadRefsNotes(); $technicien->loadRefPlateau(); $technicien->loadRefKine(); $technicien->countSejoursDate($date); // Alter egos pour les transferts de séjours $where["kine_id"] = "= '{$technicien->kine_id}'"; /** @var CTechnicien[] $alteregos */ $alteregos = $technicien->loadList($where); unset($alteregos[$technicien->_id]); foreach ($alteregos as $_alterego) { $_alterego->loadRefPlateau(); $_alterego->loadRefKine(); } // Kinés
* $Id$ * * @package Mediboard * @subpackage SSR * @author SARL OpenXtrem <*****@*****.**> * @license GNU General Public License, see http://www.gnu.org/licenses/gpl.html * @version $Revision$ */ CCanDo::checkRead(); // Plateaux disponibles $show_cancelled_services = CValue::getOrSession("show_cancelled_services"); $technicien_id = CValue::get("technicien_id"); $service_id = CValue::getOrSession("service_id"); $date = CValue::getOrSession("date", CMbDT::date()); $technicien = new CTechnicien(); $technicien->load($technicien_id); $technicien->loadRefKine(); $kine_id = $technicien->_ref_kine->_id; $sejours = CBilanSSR::loadSejoursSSRfor($technicien_id, $date, $show_cancelled_services); $services = array(); $all_sejours = array(); foreach ($sejours as $_sejour) { // Filtre sur service $service = $_sejour->loadFwdRef("service_id"); $services[$service->_id] = $service; if (!$technicien_id && $service_id && $_sejour->service_id != $service_id) { unset($sejours[$_sejour->_id]); continue; } $all_sejours[] = $_sejour; $_sejour->checkDaysRelative($date);