Пример #1
0
 public function school_list()
 {
     $where = array();
     if ($area_id = intval($this->input->get('area_id'))) {
         $where['area_id'] = $area_id;
     }
     if ($city_id = intval($this->input->get('city_id'))) {
         $where['city_id'] = $city_id;
     }
     if ($school_property = intval($this->input->get('school_property'))) {
         $where['school_property'] = $school_property;
     }
     if ($keyword = trim($this->input->get('keyword'))) {
         $where['keyword'] = $keyword;
     }
     if ($grade_id = intval($this->input->get('grade_id'))) {
         $grade_period = get_grade_period($grade_id);
         if ($grade_period) {
             $where['grade_period'] = $grade_period;
         }
     }
     $schools = SchoolModel::search_school($where);
     echo json_encode($schools);
 }
Пример #2
0
    /**
     * @description 编辑学生信息表单页面
     * @author
     * @final
     * @param int $uid 学生id
     */
    public function edit($uid)
    {
        if (!$this->check_power('student_manage')) {
            return;
        }
        Fn::ajax_call($this, 'baseFetchTIList', 'baseFetchCORSList', 'baseFetchCTeacherList');
        /*
         * 基本信息
         */
        $uid = intval($uid);
        $student = StudentModel::get_student($uid);
        $school_id = array();
        $volunteer = array();
        if (empty($student)) {
            message('信息不存在');
            return;
        }
        $school = SchoolModel::schoolInfo($student['school_id'], 'school_id, school_name');
        $student['school_name'] = $school['school_name'];
        $student['birthday'] = date('Y-m-d', $student['birthday']);
        if ($uid) {
            $db = Fn::db();
            $sbinfo = $db->fetchRow("SELECT * FROM t_student_base WHERE sb_uid = {$uid}");
            if ($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;
            }
        }
        $data['student'] = $student;
        $data['act'] = 'edit';
        /*
         * 学校列表
         * 根据当前学生的年级获取拥有该年级的所有学校
         */
        $grade_period = get_grade_period($student['grade_id']);
        $query = $this->db->select('school_id,school_name')->like('grade_period', $grade_period)->get('school');
        $data['school_list'] = $query->result_array();
        $data['school_list'] || ($data['school_list'] = array());
        /*
         * 成绩排名
         */
        $sql = <<<EOT
SELECT * FROM rd_student_ranking WHERE uid = ? ORDER BY grade_id ASC
EOT;
        $data['score_ranks'] = Fn::db()->fetchAll($sql, $uid);
        /*
         * 竞赛成绩
         */
        $sql = <<<EOT
SELECT * FROM rd_student_awards WHERE uid = ?
EOT;
        $rows = Fn::db()->fetchAll($sql, $uid);
        $awards_list = array();
        foreach ($rows as $row) {
            $awards_list[$row['typeid']][] = $row;
        }
        $data['awards_list'] = $awards_list;
        /*
         * 社会实践
         */
        $sql = <<<EOT
SELECT * FROM rd_student_practice WHERE uid = ?
EOT;
        $data['practice'] = Fn::db()->fetchRow($sql, $uid);
        /*
         * 学生意愿
         */
        $sql = <<<EOT
SELECT * FROM rd_student_wish WHERE uid = ?
EOT;
        $data['student_wish'] = Fn::db()->fetchRow($sql, $uid);
        /*
         * 家长意愿
         */
        $sql = <<<EOT
SELECT * FROM rd_student_parent_wish WHERE uid = ?
EOT;
        $data['parent_wish'] = Fn::db()->fetchRow($sql, $uid);
        if (empty($data['parent_wish'])) {
            // 初始化,防止模版notice错误
            $data['parent_wish'] = array('family_bg' => '', 'upmethod' => '', 'wish' => '');
        }
        $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}");
                }
            }
        }
        //选考学考
        $sql = <<<EOT
SELECT * FROM rd_xuekao_xuankao WHERE uid = ?
EOT;
        $data['xuekao_xuankao'] = Fn::db()->fetchRow($sql, $uid);
        // 公共数据
        $specs = array('0' => '哲学', '1' => '经济学', '2' => '法学', '3' => '教育学', '4' => '文学', '5' => '历史学', '6' => '理学', '7' => '工学', '8' => '农学', '9' => '医学', '10' => '军事学', '11' => '管理学', '12' => '艺术类', '13' => '不清楚');
        $data['grades'] = C('grades');
        $data['grade_periods'] = C('grade_periods');
        $data['subject_list'] = C('subject');
        $data['awards_types'] = C('awards_type');
        $data['awards_levels'] = C('awards_level');
        $data['family_bg_list'] = C('family_bg');
        $data['subjects'] = C('subject');
        $data['specs'] = $specs;
        $data['ranks'] = array('1' => 'A', '2' => 'B', '3' => 'C', '4' => 'E');
        $data['school_id'] = $school_id;
        $data['volunteer'] = $volunteer;
        $data['province_list'] = RegionModel::get_regions(1);
        $data['city_list'] = RegionModel::get_regions($student['sb_addr_provid'], FALSE, 2);
        $data['area_list'] = RegionModel::get_regions($student['sb_addr_cityid'], FALSE, 3);
        // 班级类型
        $data['stunumtype_list'] = CourseModel::courseStuNumTypeList();
        // 考试类型
        $data['class_list'] = ClassModel::get_class_list($student['grade_id']);
        // 培训机构类型
        $data['tit_list'] = TrainingInstitutionModel::trainingInstitutionTypeList();
        // 课程授课模式
        $data['cm_list'] = CourseModel::courseModeList();
        // 模版
        $this->load->view('student/edit', $data);
    }
Пример #3
0
 /**
  * 编辑考场信息
  *
  * @return  void
  */
 public function edit($id = 0)
 {
     if (!$this->check_power('exam_manage')) {
         return;
     }
     $id = intval($id);
     $id && ($place = ExamPlaceModel::get_place($id));
     if (empty($place)) {
         message('考场不存在');
         return;
     }
     $parent = ExamModel::get_exam($place['exam_pid'], 'exam_id,exam_name,exam_pid,grade_id,creator_id,managers,exam_isfree');
     if (empty($parent) or $parent['exam_pid'] > 0) {
         message('考试期次不存在', 'admin/exam/index');
         return;
     }
     $managers = $parent['managers'] ? json_decode($parent['managers'], true) : array();
     $this->check_exam_manager_power($parent['creator_id'], $managers);
     $place['start_time'] = date('Y-m-d H:i', $place['start_time']);
     $place['end_time'] = date('Y-m-d H:i', $place['end_time']);
     $place['exam_time_custom'] = json_decode($place['exam_time_custom'], true);
     $grade_period = get_grade_period($parent['grade_id']);
     $query = $this->db->select('s.school_id,s.school_name,count(u.uid) nums')->from('school s')->join('student u', 's.school_id=u.school_id')->like('s.grade_period', $grade_period)->where(array('u.is_delete' => 0))->group_by('s.school_id')->get();
     $schools = $query->result_array();
     if ($schools) {
         $school_ids = array();
         foreach ($schools as $item) {
             $school_ids[] = $item['school_id'];
         }
         $param['schcls_schid'] = implode(',', $school_ids);
         $data['class'] = SchoolModel::schoolClassList("*", $param, 1, time());
     }
     $data['act'] = 'edit';
     $data['place'] =& $place;
     $data['parent'] =& $parent;
     $data['schools'] =& $schools;
     // 模版
     $this->load->view('exam_place/edit', $data);
 }