/** * Test A28 - Create patient with full demographic data * * @param CCnStep $step Step * * @throws CMbException * * @return void */ static function testA28(CCnStep $step) { // PDS-PAM_Identification_Mgt_Merge $patient = new CPatient(); // Random sur les champs du patient $patient->random(); $test = $step->_ref_test; $partner = $test->_ref_partner; // On sélectionne le nom du patient en fonction du partenaire, du test et de l'étape $patient->nom = "{$partner->name}_{$test->_id}_{$step->number}"; self::storeObject($patient); }
/** * Load patient PES * * @param CCnStep $step Step * @param int $step_number Step number * * @throws CMbException * * @return CPatient $patient */ static function loadPatientPES(CCnStep $step, $step_number) { // PES-PAM_Encounter_Management_Basic $test = $step->_ref_test; $partner = $test->_ref_partner; $name = null; switch ($step_number) { case 10: $name = "ONE"; break; case 20: $name = "TWO"; break; case 30: $name = "THREE"; break; case 40: $name = "FOUR"; break; case 50: if ($step->number == 80) { $name = "UPDATE"; } else { $name = "FIVE"; } break; } $name = "PAM{$name}"; $patient = new CPatient(); $where = array(); $where["nom"] = " = '{$name}_{$partner->name}_{$test->_id}'"; $patient->loadObject($where); if (!$patient->_id) { $patient->random(); $patient->nom = "{$name}_{$partner->name}_{$test->_id}"; if ($msg = $patient->store()) { throw new CMbException($msg); } } return $patient; }