public function executeUpdateApplicantGrade() { $grades = $this->getRequestParameter('grade'); foreach ($grades as $k => $grade) { if ($grade != null) { $ids = split('_', $k); $c = new Criteria(); $c->add(TestScorePeer::TEST_APPLICANT_ID, $ids[0]); $c->add(TestScorePeer::TEST_SUBJECT_ID, $ids[1]); $g = TestScorePeer::doSelectOne($c); if ($g == null) { $g = new TestScore(); } $g->setTestApplicantId($ids[0]); $g->setTestSubjectId($ids[1]); $g->setGrade($grade); $g->save(); } } $ts = TestSchedulePeer::retrieveByPK($this->getRequestParameter('id')); $avgGrades = $this->getRequestParameter('avgGrade'); foreach ($avgGrades as $appl_id => $avgGrade) { $c = new Criteria(); $c->add(TestApplSchedPeer::TEST_APPLICANT_ID, $appl_id); $c->add(TestApplSchedPeer::TEST_SCHEDULE_ID, $ts->getId()); $g = TestApplSchedPeer::doSelectOne($c); #if ($g == null) $g = new TestGrade(); $g->setTestApplicantId($appl_id); $g->setTestScheduleId($ts->getId()); $g->setAvgGrade($avgGrade); $g->save(); } $ranks = $this->getRequestParameter('rank'); foreach ($ranks as $appl_id => $rank) { $c = new Criteria(); $c->add(TestApplSchedPeer::TEST_APPLICANT_ID, $appl_id); $c->add(TestApplSchedPeer::TEST_SCHEDULE_ID, $ts->getId()); $g = TestApplSchedPeer::doSelectOne($c); #if ($g == null) $g = new TestGrade(); $g->setTestApplicantId($appl_id); $g->setTestScheduleId($ts->getId()); $g->setRank($rank); $g->save(); } $status_ = $this->getRequestParameter('status'); if ($status_) { foreach ($status_ as $appl_id => $status) { $c = new Criteria(); $c->add(TestApplicantPeer::ID, $appl_id); $ta = TestApplicantPeer::doSelectOne($c); #if ($g == null) $g = new TestGrade(); $ta->setId($appl_id); $ta->setStatus($status); $ta->save(); } } /** $location1_ = $this->getRequestParameter('location1'); if ($location1_) { foreach ($location1_ as $appl_id => $location) { $c = new Criteria(); $c->add(TestApplicantPeer::ID, $appl_id); $ta = TestApplicantPeer::doSelectOne($c); $ta->setId($appl_id); $ta->setLocation1($location); $ta->save(); } } **/ return $this->redirect('test_schedule/listApplicant?id=' . $ts->getId() . '&dept_id=' . $this->getRequestParameter('department_id') . '&location_id=' . $this->getRequestParameter('location_id')); }
public function addTestScore(TestScore $l) { $this->collTestScores[] = $l; $l->setTestApplicant($this); }