/** * @param $eventQuery * * @throws CHttpException * @throws Exception */ protected function assignEvent($eventQuery) { $creator = new \OEModule\OphCiExamination\components\ExaminationCreator(); $data = $eventQuery->examination_data; $examination = json_decode($data, true); $eventType = EventType::model()->find('name = "Examination"'); $portalUserId = $creator->getPortalUser(); $refractionType = \OEModule\OphCiExamination\models\OphCiExamination_Refraction_Type::model()->find('name = "Ophthalmologist"'); $eyeIds = $creator->getEyes(); $patientId = Yii::app()->request->getPost('patient_id'); $patient = Patient::model()->findByPk($patientId); $episodeId = $patient->getCataractEpisodeId(); if (!$episodeId) { throw new CHttpException(400, 'Patient has no cataract episode'); } $this->createExamination($eventQuery, $episodeId, $creator, $portalUserId, $examination, $eventType, $eyeIds, $refractionType); }