/** * Generate content message * * @param CAffectation $affectation Movement * @param bool $referent Is referring ? * * @return void */ function generateFromOperation(CAffectation $affectation, $referent) { $evenementsPatients = $this->documentElement; $evenementPatient = $this->addElement($evenementsPatients, "evenementPatient"); $mouvementPatient = $this->addElement($evenementPatient, "mouvementPatient"); $actionConversion = array("create" => "création", "store" => "modification", "delete" => "suppression"); $affectation->loadLastLog(); $action = $affectation->_ref_last_log->type ? $affectation->_ref_last_log->type : "create"; $this->addAttribute($mouvementPatient, "action", $actionConversion[$action]); $affectation->loadRefSejour(); $affectation->_ref_sejour->loadNDA(); $affectation->_ref_sejour->loadRefPatient(); $affectation->_ref_sejour->loadRefPraticien(); $patient = $this->addElement($mouvementPatient, "patient"); // Ajout du patient $this->addPatient($patient, $affectation->_ref_sejour->_ref_patient, $referent); $venue = $this->addElement($mouvementPatient, "venue"); // Ajout de la venue $this->addVenue($venue, $affectation->_ref_sejour, $referent); // Ajout du mouvement (1 seul dans notre cas pas l'historique) $mouvements = $this->addElement($mouvementPatient, "mouvements"); $this->addMouvement($mouvements, $affectation); // Traitement final $this->purgeEmptyElements(); }