/** * 培训课程授课人数类别列表 */ public function csntlist() { Fn::ajax_call($this, 'removeCSNT', 'setCSNT'); $data = array(); $data['csnt_list'] = CourseModel::courseStuNumTypeList(); $this->load->view('course/csntlist', $data); }
/** * @description 预览学生信息 * @author * @final * @param int $uid 学生id */ public function preview($uid = 0) { if (!$this->check_power('student_list,student_manage')) { return; } $uid = intval($uid); /* * 基本信息 */ $uid && ($student = StudentModel::get_student($uid)); if (!$student) { message('学生信息不存在。'); return; } $db = Fn::db(); $sbinfo = $db->fetchRow("SELECT * FROM t_student_base WHERE sb_uid = {$uid}"); if (is_array($sbinfo)) { $student = array_merge($student, $sbinfo); } $sql = <<<EOT SELECT sbs_stunumtype FROM t_student_base_stunumtype WHERE sbs_uid = {$uid} EOT; $student['sbs_stunumtype'] = $db->fetchCol($sql); $sql = <<<EOT SELECT sbclassid_classid FROM t_student_base_classid WHERE sbclassid_uid = {$uid} EOT; $student['sbclassid_classid'] = $db->fetchCol($sql); $sql = <<<EOT SELECT a.*, b.ti_id, b.ti_name, b.ti_typeid, b.ti_flag, b.ti_provid, b.ti_cityid, b.ti_areaid, c.cors_id, c.cors_cmid, c.cors_name, c.cors_flag, c.cors_tiid, c.cors_stunumtype FROM t_student_base_course a LEFT JOIN v_training_institution b ON a.sbc_tiid = b.ti_id LEFT JOIN v_course c ON a.sbc_corsid = c.cors_id WHERE a.sbc_uid = {$uid} AND a.sbc_idx = 0 EOT; $sbcinfo = $db->fetchRow($sql); if (is_array($sbcinfo)) { $student = array_merge($student, $sbcinfo); $student['no_tiid'] = 0; } else { $student['no_tiid'] = 1; } /* * 成绩排名 */ $sql = <<<EOT SELECT * FROM rd_student_ranking WHERE uid = ? ORDER BY grade_id ASC EOT; $score_ranks = $db->fetchAll($sql, $uid); /* * 竞赛成绩 */ $sql = <<<EOT SELECT * FROM rd_student_awards WHERE uid = ? EOT; $rows = $db->fetchAll($sql, $uid); $awards_list = array(); foreach ($rows as $row) { $awards_list[$row['typeid']][] = $row; } /* * 社会实践 */ $sql = <<<EOT SELECT * FROM rd_student_practice WHERE uid = ? EOT; $practice = $db->fetchRow($sql, $uid); /* * 学生意愿 */ $sql = <<<EOT SELECT * FROM rd_student_wish WHERE uid = ? EOT; $student_wish = $db->fetchRow($sql, $uid); /* * 家长意愿 */ $sql = <<<EOT SELECT * FROM rd_student_parent_wish WHERE uid = ? EOT; $parent_wish = $db->fetchRow($sql, $uid); // 学考选考 $sql = <<<EOT SELECT * FROM rd_xuekao_xuankao WHERE uid = ? EOT; $xuekao_xuankao = $db->fetchRow($sql, $uid); /* * 处理完善学生信息 */ $grades = C('grades'); $student['birthday'] = date('Y-m-d', $student['birthday']); $row1 = SchoolModel::schoolInfo($student['school_id'], 'school_name'); $student['school_name'] = $row1['school_name']; $student['grade_name'] = $grades[$student['grade_id']]; $specs = array('0' => '哲学', '1' => '经济学', '2' => '法学', '3' => '教育学', '4' => '文学', '5' => '历史学', '6' => '理学', '7' => '工学', '8' => '农学', '9' => '医学', '10' => '军事学', '11' => '管理学', '12' => '艺术类', '13' => '不清楚'); $school_id_arr = array(); $swv = Fn::db()->fetchOne("SELECT volunteer FROM rd_student_wish WHERE uid = {$uid}"); $school_id_arr = json_decode($swv); if ($swv) { foreach ($school_id_arr as $k => $v) { $school_id[$k] = $v; if ($v != 0) { $volunteer[$k] = Fn::db()->fetchOne("SELECT school_name FROM rd_school WHERE school_id = {$v}"); } } } $data['volunteer'] = $volunteer; $data['subjects'] = C('subject'); $data['specs'] = $specs; $data['uid'] = $uid; $data['grades'] = $grades; $data['student'] = $student; $data['score_ranks'] = $score_ranks; $data['awards_list'] = $awards_list; $data['practice'] = $practice; $data['student_wish'] = $student_wish; $data['parent_wish'] = $parent_wish; $data['xuekao_xuankao'] = $xuekao_xuankao; $data['subject_list'] = C('subject'); $data['awards_levels'] = C('awards_level'); $data['stunumtype_list'] = CourseModel::courseStuNumTypeList(); $data['class_list'] = ClassModel::get_class_list($student['grade_id']); // 模版 $this->load->view('student/preview', $data); }
public function preview() { Fn::ajax_call($this, 'login', 'logout'); if (!$this->_uinfo['uid']) { redirect('student/index/login'); } $uid = $this->_uinfo['uid']; $data = array(); $data['uinfo'] = $this->_uinfo; if ($uid) { // 基本信息 $student = StudentModel::get_student($uid); // 学习概况 $db = Fn::db(); $sbinfo = $db->fetchRow("SELECT * FROM t_student_base WHERE sb_uid = {$uid}"); if (is_array($sbinfo)) { $student = array_merge($student, $sbinfo); } $sql = <<<EOT SELECT sbs_stunumtype FROM t_student_base_stunumtype WHERE sbs_uid = {$uid} EOT; $student['sbs_stunumtype'] = $db->fetchCol($sql); $sql = <<<EOT SELECT sbclassid_classid FROM t_student_base_classid WHERE sbclassid_uid = {$uid} EOT; $student['sbclassid_classid'] = $db->fetchCol($sql); // 培训机构、课程、授课教师 $sql = <<<EOT SELECT a.*, b.ti_id, b.ti_name, b.ti_typeid, b.ti_flag, b.ti_provid, b.ti_cityid, b.ti_areaid, c.cors_id, c.cors_cmid, c.cors_name, c.cors_flag, c.cors_tiid, c.cors_stunumtype FROM t_student_base_course a LEFT JOIN v_training_institution b ON a.sbc_tiid = b.ti_id LEFT JOIN v_course c ON a.sbc_corsid = c.cors_id WHERE a.sbc_uid = {$uid} AND a.sbc_idx = 0 EOT; $sbcinfo = $db->fetchRow($sql); if (is_array($sbcinfo)) { $student = array_merge($student, $sbcinfo); $student['no_tiid'] = 0; } else { $student['no_tiid'] = 1; } // 成绩排名 $this->db->order_by('grade_id ASC'); $query = $this->db->get_where('student_ranking', array('uid' => $uid)); $score_ranks = $query->result_array(); $start_grade = $student['grade_id'] < 3 ? 1 : $student['grade_id'] - 2; $grades = array(); for ($i = $student['grade_id']; $i >= $start_grade; $i--) { $grades[] = $i; } /******TODO 暂时去除掉 **************************************** foreach ($score_ranks as $v){ if ( ! in_array($v[grade_id], $grades)) { message('请填写最近三年年级成绩排名', 'student/profile/awards'); //$message[] = '请填写最近三年年级成绩排名'; break; } } /****************************************************************/ // 竞赛成绩 $query = $this->db->get_where('student_awards', array('uid' => $uid)); $awards_list = array(); foreach ($query->result_array() as $row) { $awards_list[$row['typeid']][] = $row; } // 社会实践 $query = $this->db->get_where('student_practice', array('uid' => $uid)); $practice = $query->row_array(); // 学生意愿 $query = $this->db->get_where('student_wish', array('uid' => $uid)); $student_wish = $query->row_array(); // 家长意愿 $query = $this->db->get_where('student_parent_wish', array('uid' => $uid)); $parent_wish = $query->row_array(); // 学考选考 $query = $this->db->get_where('xuekao_xuankao', array('uid' => $uid)); $xuekao_xuankao = $query->row_array(); $subject_first = unserialize($xuekao_xuankao[subject_first]); /*** TODO 暂时去除掉 ************************************** if ( ($student['grade_id'] == 11||$student['grade_id'] == 12) && !$subject_first[subject_id]&&!$subject_first[fenshu]&&! $subject_first[shijian] ) { message('第一次参加的选考科目及成绩', 'student/profile/awards'); } /**************************************************************/ } else { if (!($student = $this->session->userdata('student'))) { message('请填写基本信息!', 'student/profile/basic'); } if (!($sbinfo = $this->session->userdata('student_base'))) { message('请填写学习概况!', 'student/profile/base'); } if (is_array($sbinfo)) { $student = array_merge($student, $sbinfo); } if (!isset($student['sbs_stunumtype']) || !is_array($student['sbs_stunumtype'])) { $student['sbs_stunumtype'] = array(); } if (!isset($student['sbclassid_classid']) || !is_array($student['sbclassid_classid'])) { $student['sbclassid_classid'] = array(); } $score_ranks = $this->session->userdata('score_ranks'); $start_grade = $student['grade_id'] < 3 ? 1 : $student['grade_id'] - 2; $grades = array(); for ($i = $student['grade_id']; $i >= $start_grade; $i--) { $grades[] = $i; } foreach ($score_ranks as $v) { if (!in_array($v[grade_id], $grades)) { message('请填写最近三年年级成绩排名', 'student/profile/awards'); // $message[] = '请填写最近三年年级成绩排名'; break; } } $awards_list = $this->session->userdata('awards_list'); $xuekao_xuankao = $this->session->userdata('xuekao_xuankao'); $subject_first = unserialize($xuekao_xuankao[subject_first]); if ($student['grade_id'] > 1 && !$score_ranks) { message('请填写学习成绩', 'student/profile/awards'); } if (($student['grade_id'] == 11 || $student['grade_id'] == 12) && !$subject_first[subject_id] && !$subject_first[fenshu] && !$subject_first[shijian]) { message('第一次参加的选考科目及成绩', 'student/profile/awards'); } if (!($practice = $this->session->userdata('practice'))) { message('请填写社会实践情况!', 'student/profile/practice'); } if (!($student_wish = $this->session->userdata('student_wish'))) { message('请填写学生意愿!', 'student/profile/wish'); } if (!($parent_wish = $this->session->userdata('parent_wish'))) { message('请填写家长意愿!', 'student/profile/pwish'); } $this->session->set_userdata('complete', 1); } $grades = C('grades'); // 使用Yaf样式RegionModel代替 //$this->load->model('admin/region_model'); //$this->load->model('admin/school_model'); $student['birthday'] = date('Y-m-d', $student['birthday']); //$student['region_text'] = $this->region_model->get_region_text(array($student['province'],$student['city'],$student['area'])); $row1 = SchoolModel::schoolInfo($student['school_id'], 'school_name'); $student['school_name'] = $row1['school_name']; $student['grade_name'] = isset($grades[$student['grade_id']]) ? $grades[$student['grade_id']] : ''; $data['uid'] = $uid; $data['grades'] = $grades; $specs = array('0' => '哲学', '1' => '经济学', '2' => '法学', '3' => '教育学', '4' => '文学', '5' => '历史学', '6' => '理学', '7' => '工学', '8' => '农学', '9' => '医学', '10' => '军事学', '11' => '管理学', '12' => '艺术类', '13' => '不清楚'); $data['subjects'] = C('subject'); $data['specs'] = $specs; $data['xuekao_xuankao'] = $xuekao_xuankao; $data['student'] = $student; $data['score_ranks'] = $score_ranks; $data['awards_list'] = $awards_list; $data['practice'] = $practice; $data['student_wish'] = $student_wish; $data['parent_wish'] = $parent_wish; $data['ranks'] = array('1' => 'A', '2' => 'B', '3' => 'C', '4' => 'E'); $data['subject_list'] = C('subject'); $data['awards_levels'] = C('awards_level'); $data['stunumtype_list'] = CourseModel::courseStuNumTypeList(); $data['class_list'] = ClassModel::get_class_list($student['grade_id']); // 模版 $this->load->view('profile/preview', $data); }