public function executeSaveUploadKnowledge() { $scores = $this->getRequestParameter('score'); $id_course = 0; foreach ($scores as $k => $score) { if ($score != null) { if ($score != '-') { $ids = split('_', $k); #$ids [0] == Id Student #$ids [1] == Id Course Schedule #$ids [2] == Id Grade Spec $course_schedule = CourseSchedulePeer::retrieveByPK($ids[1]); $id_course = $course_schedule->getId(); $cw = new Criteria(); $cw->add(CourseRegulationPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $cw->add(CourseRegulationPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cw->add(CourseRegulationPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c_regulation = CourseRegulationPeer::doSelectOne($cw); $cd = new Criteria(); $cd->add(StudentAccalPeer::STUDENT_ID, $ids[0]); $cd->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cd->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $stu_accal = StudentAccalPeer::doSelectOne($cd); if ($ids[2] == 92) { $cm = new Criteria(); $cm->add(CourseRegulationPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $cm->add(CourseRegulationPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cm->add(CourseRegulationPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c_regulation = CourseRegulationPeer::doSelectOne($cm); $c = new Criteria(); $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[2]); $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $g = StudentRaportPeer::doSelectOne($c); if ($g == null) { $g = new StudentRaport(); } $g->setStudentId($ids[0]); $g->setGradeSpecId($ids[2]); $g->setGrade($score); $g->setSubjectCurrId($course_schedule->getSubjectCurrId()); $g->setClassGroupId($course_schedule->getClassGroupId()); $g->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $g->setCitationId($stu_accal->getId()); $g->save(); if ($c_regulation) { $cg = new Criteria(); $cg->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $cg->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[2]); $cg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $cg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $nr = StudentRaportPeer::doSelectOne($cg); $f = new Criteria(); $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $f->add(StudentRaportPeer::GRADE_SPEC_ID, 14); $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $uh = StudentRaportPeer::doSelectOne($f); if ($nr->getGrade() >= $c_regulation->getKkm()) { if ($uh == null) { $uh = new StudentRaport(); } $uh->setStudentId($ids[0]); $uh->setGradeSpecId(14); $uh->setGrade($c_regulation->getKkm()); $uh->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uh->setClassGroupId($course_schedule->getClassGroupId()); $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uh->setCitationId($stu_accal->getId()); $uh->save(); } elseif ($nr->getGrade() < $c_regulation->getKkm()) { if ($uh == null) { $uh = new StudentRaport(); $uh->setStudentId($ids[0]); $uh->setGradeSpecId(14); $uh->setGrade($nr->getGrade()); $uh->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uh->setClassGroupId($course_schedule->getClassGroupId()); $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uh->setCitationId($stu_accal->getId()); $uh->save(); } else { if ($nr->getGrade() > $uh->getGrade()) { $uh->setStudentId($ids[0]); $uh->setGradeSpecId(14); $uh->setGrade($nr->getGrade()); $uh->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uh->setClassGroupId($course_schedule->getClassGroupId()); $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uh->setCitationId($stu_accal->getId()); $uh->save(); } } } } } else { $c = new Criteria(); $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[2]); $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $g = StudentRaportPeer::doSelectOne($c); if ($g == null) { $g = new StudentRaport(); } $g->setStudentId($ids[0]); $g->setGradeSpecId($ids[2]); $g->setGrade($score); $g->setSubjectCurrId($course_schedule->getSubjectCurrId()); $g->setClassGroupId($course_schedule->getClassGroupId()); $g->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $g->setCitationId($stu_accal->getId()); $g->save(); $cg = new Criteria(); $cg->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $cg->add(StudentRaportPeer::GRADE_SPEC_ID, 22); $cg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $cg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $cg->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId()); $praktek_uts = StudentRaportPeer::doSelectOne($cg); $cf = new Criteria(); $cf->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $cf->add(StudentRaportPeer::GRADE_SPEC_ID, 23); $cf->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $cf->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cf->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $cf->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId()); $teori_uts = StudentRaportPeer::doSelectOne($cf); if ($praktek_uts != null && $teori_uts != null) { $score_uts = round(($praktek_uts->getGrade() + $teori_uts->getGrade()) / 2); $f = new Criteria(); $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $f->add(StudentRaportPeer::GRADE_SPEC_ID, 14); $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $f->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId()); $uts = StudentRaportPeer::doSelectOne($f); if ($uts == null) { $uts = new StudentRaport(); } $uts->setStudentId($ids[0]); $uts->setGradeSpecId(14); $uts->setGrade($score_uts); $uts->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uts->setClassGroupId($course_schedule->getClassGroupId()); $uts->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uts->setCitationId($stu_accal->getId()); $uts->save(); } elseif ($praktek_uts != null && $teori_uts == null) { $score_uts = $praktek_uts->getGrade(); $f = new Criteria(); $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $f->add(StudentRaportPeer::GRADE_SPEC_ID, 14); $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $f->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId()); $uts = StudentRaportPeer::doSelectOne($f); if ($uts == null) { $uts = new StudentRaport(); } $uts->setStudentId($ids[0]); $uts->setGradeSpecId(14); $uts->setGrade($score_uts); $uts->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uts->setClassGroupId($course_schedule->getClassGroupId()); $uts->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uts->setCitationId($stu_accal->getId()); $uts->save(); } elseif ($praktek_uts == null && $teori_uts != null) { $score_uts = $teori_uts->getGrade(); $f = new Criteria(); $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $f->add(StudentRaportPeer::GRADE_SPEC_ID, 14); $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $f->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId()); $uts = StudentRaportPeer::doSelectOne($f); if ($uts == null) { $uts = new StudentRaport(); } $uts->setStudentId($ids[0]); $uts->setGradeSpecId(14); $uts->setGrade($score_uts); $uts->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uts->setClassGroupId($course_schedule->getClassGroupId()); $uts->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uts->setCitationId($stu_accal->getId()); $uts->save(); } # Praktek UAS dan Teori UAS $ct = new Criteria(); $ct->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $ct->add(StudentRaportPeer::GRADE_SPEC_ID, 27); $ct->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $ct->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $ct->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $praktek_uas = StudentRaportPeer::doSelectOne($ct); $ch = new Criteria(); $ch->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $ch->add(StudentRaportPeer::GRADE_SPEC_ID, 28); $ch->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $ch->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $ch->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $teori_uas = StudentRaportPeer::doSelectOne($ch); if ($praktek_uas != null && $teori_uas != null) { $score_uas = round(($praktek_uas->getGrade() + $teori_uas->getGrade()) / 2); $fg = new Criteria(); $fg->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $fg->add(StudentRaportPeer::GRADE_SPEC_ID, 15); $fg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $fg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $fg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $fg->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId()); $uas = StudentRaportPeer::doSelectOne($fg); if ($uas == null) { $uas = new StudentRaport(); } $uas->setStudentId($ids[0]); $uas->setGradeSpecId(15); $uas->setGrade($score_uas); $uas->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uas->setClassGroupId($course_schedule->getClassGroupId()); $uas->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uas->setCitationId($stu_accal->getId()); $uas->save(); } elseif ($praktek_uas != null && $teori_uas == null) { $score_uas = $praktek_uas->getGrade(); $fg = new Criteria(); $fg->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $fg->add(StudentRaportPeer::GRADE_SPEC_ID, 15); $fg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $fg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $fg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $fg->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId()); $uas = StudentRaportPeer::doSelectOne($fg); if ($uas == null) { $uas = new StudentRaport(); } $uas->setStudentId($ids[0]); $uas->setGradeSpecId(15); $uas->setGrade($score_uas); $uas->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uas->setClassGroupId($course_schedule->getClassGroupId()); $uas->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uas->setCitationId($stu_accal->getId()); $uas->save(); } elseif ($praktek_uas == null && $teori_uas != null) { $score_uas = $teori_uas->getGrade(); $fg = new Criteria(); $fg->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $fg->add(StudentRaportPeer::GRADE_SPEC_ID, 15); $fg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $fg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $fg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $fg->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId()); $uas = StudentRaportPeer::doSelectOne($fg); if ($uas == null) { $uas = new StudentRaport(); } $uas->setStudentId($ids[0]); $uas->setGradeSpecId(15); $uas->setGrade($score_uas); $uas->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uas->setClassGroupId($course_schedule->getClassGroupId()); $uas->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uas->setCitationId($stu_accal->getId()); $uas->save(); } } } else { $ids = split('_', $k); $c = new Criteria(); $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[1]); $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $g = StudentRaportPeer::doSelectOne($c); if ($g != null) { $g->delete(); } } } } return $this->redirect('course_score_new/uploadKnowledgeFinish?course_id=' . $id_course); }
public function executeSaveRaportHistory() { $course_id = $this->getRequestParameter('course_id'); $course_schedule = CourseSchedulePeer::retrieveByPK($course_id); $this->forward404Unless($course_schedule); $cw = new Criteria(); $cw->add(CourseRegulationPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $cw->add(CourseRegulationPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cw->add(CourseRegulationPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c_regulation = CourseRegulationPeer::doSelectOne($cw); if ($c_regulation) { $scores = $this->getRequestParameter('score'); foreach ($scores as $k => $score) { if ($score != null) { if ($score != '-') { $ids = split('_', $k); $cd = new Criteria(); $cd->add(StudentAccalPeer::STUDENT_ID, $ids[0]); $cd->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cd->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $stu_accal = StudentAccalPeer::doSelectOne($cd); $c = new Criteria(); $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[1]); $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $g = StudentRaportPeer::doSelectOne($c); if ($g == null) { $g = new StudentRaport(); } $g->setStudentId($ids[0]); $g->setGradeSpecId($ids[1]); $g->setGrade($score); $g->setSubjectCurrId($course_schedule->getSubjectCurrId()); $g->setClassGroupId($course_schedule->getClassGroupId()); $g->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $g->setCitationId($stu_accal->getId()); $g->save(); } else { $ids = split('_', $k); $c = new Criteria(); $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[1]); $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $g = StudentRaportPeer::doSelectOne($c); if ($g != null) { $g->delete(); } } } } #Nilai Utama dan Remed $exams = $this->getRequestParameter('exam'); foreach ($exams as $k => $exam) { if ($exam != null) { if ($exam != '-') { $ids = split('_', $k); $cd = new Criteria(); $cd->add(StudentAccalPeer::STUDENT_ID, $ids[0]); $cd->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cd->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $stu_accal = StudentAccalPeer::doSelectOne($cd); $c = new Criteria(); $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[1]); $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $g = StudentRaportPeer::doSelectOne($c); if ($g == null) { $g = new StudentRaport(); } $g->setStudentId($ids[0]); $g->setGradeSpecId($ids[1]); $g->setGrade($exam); $g->setSubjectCurrId($course_schedule->getSubjectCurrId()); $g->setClassGroupId($course_schedule->getClassGroupId()); $g->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $g->setCitationId($stu_accal->getId()); $g->save(); $grade_spec = GradeSpecPeer::retrieveByPK($ids[1]); #Nilai Utama if ($grade_spec->getCode() == 'NU') { $cg = new Criteria(); $cg->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $cg->add(StudentRaportPeer::GRADE_SPEC_ID, $grade_spec->getId()); $cg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $cg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $nu = StudentRaportPeer::doSelectOne($cg); $f = new Criteria(); $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $f->add(StudentRaportPeer::GRADE_SPEC_ID, $grade_spec->getParent()); $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $uh = StudentRaportPeer::doSelectOne($f); if ($uh == null) { $uh = new StudentRaport(); } $uh->setStudentId($ids[0]); $uh->setGradeSpecId($grade_spec->getParent()); $uh->setGrade($nu->getGrade()); $uh->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uh->setClassGroupId($course_schedule->getClassGroupId()); $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uh->setCitationId($stu_accal->getId()); $uh->save(); #Nilai Remedial } elseif ($grade_spec->getCode() == 'NR') { $cg = new Criteria(); $cg->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $cg->add(StudentRaportPeer::GRADE_SPEC_ID, $grade_spec->getId()); $cg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $cg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $nr = StudentRaportPeer::doSelectOne($cg); $f = new Criteria(); $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $f->add(StudentRaportPeer::GRADE_SPEC_ID, $grade_spec->getParent()); $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $uh = StudentRaportPeer::doSelectOne($f); if ($nr->getGrade() >= $c_regulation->getKkm()) { if ($uh == null) { $uh = new StudentRaport(); } $uh->setStudentId($ids[0]); $uh->setGradeSpecId($grade_spec->getParent()); $uh->setGrade($c_regulation->getKkm()); $uh->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uh->setClassGroupId($course_schedule->getClassGroupId()); $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uh->setCitationId($stu_accal->getId()); $uh->save(); } elseif ($nr->getGrade() < $c_regulation->getKkm()) { if ($uh == null) { $uh = new StudentRaport(); $uh->setStudentId($ids[0]); $uh->setGradeSpecId($grade_spec->getParent()); $uh->setGrade($nr->getGrade()); $uh->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uh->setClassGroupId($course_schedule->getClassGroupId()); $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uh->setCitationId($stu_accal->getId()); $uh->save(); } else { if ($nr->getGrade() > $uh->getGrade()) { $uh->setStudentId($ids[0]); $uh->setGradeSpecId($grade_spec->getParent()); $uh->setGrade($nr->getGrade()); $uh->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uh->setClassGroupId($course_schedule->getClassGroupId()); $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uh->setCitationId($stu_accal->getId()); $uh->save(); } } } #Nilai Pengayaan } elseif ($grade_spec->getCode() == 'NP') { $cg = new Criteria(); $cg->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $cg->add(StudentRaportPeer::GRADE_SPEC_ID, $grade_spec->getId()); $cg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $cg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $cg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $nr = StudentRaportPeer::doSelectOne($cg); $f = new Criteria(); $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $f->add(StudentRaportPeer::GRADE_SPEC_ID, $grade_spec->getParent()); $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $uh = StudentRaportPeer::doSelectOne($f); if ($nr->getGrade() >= $uh->getGrade()) { $score_atas = $nr->getGrade() - $uh->getGrade(); $score_bawah = round(0.1 * (100 - $uh->getGrade())); $score = round($uh->getGrade() + $score_atas / $score_bawah); if ($uh == null) { $uh = new StudentRaport(); } $uh->setStudentId($ids[0]); $uh->setGradeSpecId($grade_spec->getParent()); $uh->setGrade($score); $uh->setSubjectCurrId($course_schedule->getSubjectCurrId()); $uh->setClassGroupId($course_schedule->getClassGroupId()); $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId()); $uh->setCitationId($stu_accal->getId()); $uh->save(); } } } else { $ids = split('_', $k); $c = new Criteria(); $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]); $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[1]); $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId()); $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId()); $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId()); $g = StudentRaportPeer::doSelectOne($c); if ($g != null) { $g->delete(); } } } } } return $this->redirect('course_score/listHistory'); }