Example #1
0
 public function regions()
 {
     $p_id = $this->input->get('p_id');
     $p_id = $p_id ? $p_id : 1;
     $regions = RegionModel::get_regions($p_id);
     echo json_encode($regions);
 }
Example #2
0
 public function IndexAction()
 {
     Site::$keywords = $this->company->tags;
     Site::$title = $this->company->name . ' на PromSpace';
     $group_tags_array = GroupModel::GetList();
     $region_tags_array = RegionModel::GetList();
     $region_tags_array[0] = 'Вся Россия';
     $group_tags_array[0] = 'Не определено';
     $products = ProductModel::GetAll()->where('company_id = ?', [0 => $this->company->id]);
     $contacts = array();
     if (!User::isLogged()) {
         if ($this->company->open == 2) {
             $contacts = ContactsModel::GetAll()->where('company_id = ?', [0 => $this->company->id]);
         }
         $this->render('nologged', ['company' => $this->company, 'group_tags' => $group_tags_array, 'region_tags' => $region_tags_array, 'contacts' => $contacts, 'products' => $products, 'simmilar' => $this->GetSimmilar()]);
     } elseif ($this->company->id == User::company() or User::admin()) {
         if ($this->company->logo == '') {
             Site::Message('Мы рекомендуем Вам установить логтип для профиля, это сделает его более привлекательным для клиентов');
         }
         $contacts = ContactsModel::GetAll()->where('company_id = ?', [0 => $this->company->id]);
         $this->render('edit', ['company' => $this->company, 'group_tags' => $group_tags_array, 'region_tags' => $region_tags_array, 'contacts' => $contacts, 'products' => $products, 'simmilar' => $this->GetSimmilar()]);
     } else {
         if ($this->company->open == 0 and FavoriteModel::i_friend($this->company->id) or $this->company->open > 0) {
             $contacts = ContactsModel::GetAll()->where('company_id = ?', [0 => $this->company->id]);
         }
         $this->render('index', ['company' => $this->company, 'group_tags' => $group_tags_array, 'region_tags' => $region_tags_array, 'favorite' => FavoriteModel::my_friend($this->company->id) ? 'favorite.png' : 'star.png', 'contacts' => $contacts, 'products' => $products, 'simmilar' => $this->GetSimmilar()]);
     }
 }
 private function ShowList($list)
 {
     $groups_array = GroupModel::GetList();
     $groups_array[0] = 'Не определено';
     $regions_array = RegionModel::GetList();
     $regions_array[0] = 'Вся Россия';
     $companys = SQL::Query('SELECT * FROM `companys` WHERE `id` IN (' . $list . ') ORDER BY `rate` DESC')->fetchAll(PDO::FETCH_OBJ);
     $this->Render('index', ['company' => $this->company, 'companys' => $companys, 'group_tags' => $groups_array, 'region_tags' => $regions_array]);
 }
Example #4
0
 public function SetregionAction()
 {
     if (isset($_GET['id'])) {
         $this->region_id = intval(Request::get('id', 0));
         setcookie('region_id', $this->region_id, time() + 3600, '/');
         $this->IndexAction();
     } else {
         $regions = RegionModel::GetAll()->all('ORDER BY `name`');
         $this->render('setregion', ['regions' => $regions]);
     }
 }
 /**
  * 编辑校区表单页面
  * @param   int     $tc_id  要编辑的校区ID
  */
 public function settcinfo($tc_id)
 {
     Fn::ajax_call($this, 'setTC');
     $tc_id = intval($tc_id);
     $data = array();
     if ($tc_id) {
         $data['tc_info'] = TrainingInstitutionModel::trainingCampusInfo($tc_id);
     }
     if (empty($data['tc_info'])) {
         message('查询无记录', '/admin/traininginstitution/tilist');
     }
     $data['province_list'] = RegionModel::get_regions(1);
     $data['city_list'] = RegionModel::get_regions($data['tc_info']['tc_provid'], FALSE, 2);
     $data['area_list'] = RegionModel::get_regions($data['tc_info']['tc_cityid'], FALSE, 3);
     $this->load->view('traininginstitution/settcinfo', $data);
 }
 public function SetregionAction()
 {
     $region_id = intval(Request::get('id', '0'));
     if (RegionModel::isExists($region_id) or $region_id == 0) {
         $this->company->region_id = $region_id;
         $this->company->save();
         $this->LogoAction();
     } else {
         Site::Error('Ошибка выбора региона, попробуйте ещё раз');
         $this->RegionAction();
     }
 }
Example #7
0
 static function getsByPid($pid = 0)
 {
     $model = new RegionModel();
     $result = $model->getsByPid($pid);
     return $result;
 }
Example #8
0
 public function export()
 {
     if (!$this->check_power('region_manage')) {
         return;
     }
     $provinces = RegionModel::get_regions(1, FALSE);
     $data = array();
     $cities = array();
     $areas = array();
     foreach ($provinces as $province) {
         $arr = array($province['region_id'], $province['region_name'], $province['parent_id']);
         $data[] = $arr;
         $cities = array_merge($cities, RegionModel::get_regions($province['region_id'], FALSE));
     }
     unset($provinces);
     foreach ($cities as $city) {
         $arr = array($city['region_id'], $city['region_name'], $city['parent_id']);
         $data[] = $arr;
         $areas = array_merge($areas, RegionModel::get_regions($city['region_id'], FALSE));
     }
     unset($cities);
     foreach ($areas as $area) {
         $arr = array($area['region_id'], $area['region_name'], $area['parent_id']);
         $data[] = $arr;
     }
     unset($areas);
     $jingtai = str_replace("/system/", '', BASEPATH);
     $fp = fopen($jingtai . "/cache/address.js", "w");
     //文件被清空后再写入
     if ($fp) {
         $flag = fwrite($fp, "_regions =" . json_encode($data));
         if (!$flag) {
             message('写入文件失败!', 'admin/region/index');
         } else {
             message('写入文件成功!', 'admin/region/index');
         }
     } else {
         message('打开文件失败!', 'admin/region/index');
     }
     fclose($fp);
     // echo json_encode($data);
 }
Example #9
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);
    }
Example #10
0
    /**
     * 编辑课程信息表单页面
     * @param   int     $cors_id    课程ID
     */
    public function setcorsinfo($cors_id)
    {
        Fn::ajax_call($this, 'setCORS');
        $data = array();
        $data['cors_region'] = CourseModel::courseRegion($cors_id);
        $data['cors_info'] = CourseModel::courseInfo(intval($cors_id));
        if (empty($data['cors_info'])) {
            message('找不到对应记录', site_url('admin/course/corslist'));
        }
        $cors_id = $data['cors_info']['cors_id'];
        $data['subject_map'] = C('subject');
        $data['grade_map'] = C('grades');
        $sql = <<<EOT
SELECT class_id, class_name FROM rd_question_class ORDER BY sort_order
EOT;
        $data['classid_map'] = Fn::db()->fetchPairs($sql);
        $data['cm_list'] = CourseModel::courseModeList();
        $data['csnt_list'] = CourseModel::courseStuNumTypeList();
        $data['cors_gradeid'] = CourseModel::courseGradeIDPairs($cors_id);
        $data['cors_subjectid'] = CourseModel::courseSubjectIDPairs($cors_id);
        $data['cors_classid'] = CourseModel::courseClassIDPairs($cors_id);
        $data['cors_kid'] = CourseModel::courseKnowledgePairs($cors_id);
        $data['kid_all'] = false;
        $know_processes = array();
        if (!empty($data['cors_kid'])) {
            foreach ($data['cors_kid'] as $item) {
                foreach ($item as $kid => $row) {
                    if ($kid > 0) {
                        $know_processes[$kid] = array('kp' => $row['ck_knprocid'], 'name' => C('know_process/' . $row['ck_knprocid']));
                    } else {
                        $data['kid_all'] = true;
                    }
                }
            }
        }
        $data['know_processes'] = $know_processes;
        $data['ctf_list'] = CourseModel::courseTeachfromList();
        $data['cc_info'] = CourseModel::courseCampusList('*', array('cc_corsid' => $cors_id));
        if (empty($data['cc_info'])) {
            $data['cc_info'] = array();
            $data['cc_info'][0] = array('cc_id' => 0, 'cc_corsid' => $cors_id, 'cc_tcid' => '', 'cc_ctfid' => '', 'tc_name' => '新校区1', 'cc_classtime' => '', 'cc_begindate' => '', 'cc_enddate' => '', 'cc_startanytime' => '0', 'cc_hours' => '', 'cc_price' => '', 'cc_provid' => 0, 'cc_cityid' => 0, 'cc_areaid' => 0, 'cc_addr' => '', 'cc_ctcperson' => '', 'cc_ctcphone' => '');
            $data['cteacher_list'] = array();
        } else {
            $cc_id_arr = array();
            $tc_ids = array();
            foreach ($data['cc_info'] as $row) {
                $cc_id_arr[] = $row['cc_id'];
                $tc_ids[] = $row['cc_tcid'];
            }
            $data['cteacher_list'] = CourseModel::courseCampusTeacherPairs(implode(',', $cc_id_arr));
            $data['cc_tcid'] = implode(',', $tc_ids);
        }
        $data['city_list'] = array();
        $data['area_list'] = array();
        foreach ($data['cc_info'] as &$cc_info) {
            if ($cc_info['cc_provid'] > 0 && !isset($data['city_list'][$cc_info['cc_provid']])) {
                $data['city_list'][$cc_info['cc_provid']] = RegionModel::get_regions($cc_info['cc_provid'], FALSE, 2);
            }
            if ($cc_info['cc_cityid'] > 0 && !isset($data['area_list'][$cc_info['cc_cityid']])) {
                $data['area_list'][$cc_info['cc_cityid']] = RegionModel::get_regions($cc_info['cc_cityid'], FALSE, 3);
            }
        }
        $data['province_list'] = RegionModel::get_regions(1);
        $this->load->view('course/setcorsinfo', $data);
    }
Example #11
0
 /**
  * @description 编辑学校
  * @author
  * @final
  * @param int $id 学校id
  */
 public function edit($id = 0)
 {
     if (!$this->check_power('school_manage')) {
         return;
     }
     $id = intval($id);
     $id && ($school = SchoolModel::schoolInfo($id));
     if (empty($school)) {
         message('学校不存在');
         return;
     }
     $data['province_list'] = RegionModel::get_regions(1);
     $data['city_list'] = RegionModel::get_regions($school['province']);
     $data['area_list'] = RegionModel::get_regions($school['city']);
     $data['grade_periods'] = $this->config->item('grade_period');
     $data['school'] = $school;
     // 模版
     $this->load->view('school/edit', $data);
 }
Example #12
0
 /**
  * ription 学生管理列表
  * 
  * @author
  *
  * @final
  *
  * @param int $mode
  *            是否回收站
  * @param int $province
  *            省
  * @param int $city
  *            市
  * @param int $area
  *            区/县
  * @param int $school_id
  *            学校
  * @param int $grade_id
  *            年级
  * @param int $keyword
  *            关键字
  */
 public function index($mode = '')
 {
     if (!$this->check_power('account_manage')) {
         return;
     }
     // 查询条件
     $where = array();
     $param = array();
     $search = array();
     $query = array();
     $data = array();
     $query['is_delete'] = 0;
     $grades = C('grades');
     if ($search['province'] = intval($this->input->get('province'))) {
         $param[] = "province={$search['province']}";
         $query['province'] = intval($search['province']);
     }
     if ($search['city'] = intval($this->input->get('city'))) {
         $param[] = "city={$search['city']}";
         $query['city'] = intval($search['city']);
     }
     if ($search['area'] = intval($this->input->get('area'))) {
         $param[] = "area={$search['area']}";
         $query['area'] = intval($search['area']);
     }
     if ($search['school_id'] = intval($this->input->get('school_id'))) {
         $param[] = "school_id={$search['school_id']}";
         $query['school_id'] = intval($search['school_id']);
     }
     if ($search['grade_id'] = intval($this->input->get('grade_id'))) {
         $param[] = "grade_id={$search['grade_id']}";
         $query['grade_id'] = intval($search['grade_id']);
     }
     $search['from'] = intval($this->input->get('from'));
     if ($search['from'] > 0) {
         $param[] = "from={$search['from']}";
         $query['source_from'] = intval($search['from']);
     }
     if ($search['keyword'] = trim($this->input->get('keyword'))) {
         $escape_keyword = $this->db->escape_like_str($search['keyword']);
         $param[] = "keyword=" . urlencode($search['keyword']);
         $query['keyword'] = "CONCAT(last_name,first_name,idcard) LIKE '%" . $escape_keyword . "%'";
     }
     if ($search['exam_ticket'] = trim($this->input->get('exam_ticket'))) {
         $param[] = "exam_ticket={$search['exam_ticket']}";
         $query['exam_ticket'] = $search['exam_ticket'];
     }
     if ($search['email'] = trim($this->input->get('email'))) {
         $param[] = "email={$search['email']}";
         $query['email'] = $search['email'];
     }
     if ($search['mobile'] = trim($this->input->get('mobile'))) {
         $param[] = "mobile={$search['mobile']}";
         $query['mobile'] = $search['mobile'];
     }
     if ($uid = intval($this->input->get('uid'))) {
         $search['uid'] = $uid;
         $param[] = "uid={$search['uid']}";
         $query = array();
         $query['uid'] = $search['uid'];
     }
     /*
      * 统计所有学生数量
      */
     $res = CommonModel::get_list($query, 'rd_student', 'count(*) AS count');
     $total = $res[0]['count'];
     /*
      * 分页读取数据列表,并处理相关数据
      */
     $size = 15;
     $page = isset($_GET['page']) && intval($_GET['page']) > 1 ? intval($_GET['page']) : 1;
     $offset = ($page - 1) * $size;
     $list = array();
     if ($total) {
         $res = CommonModel::get_list($query, 'v_student', '*', $page, $size);
         foreach ($res as $row) {
             $row['grade'] = isset($grades[$row['grade_id']]) ? $grades[$row['grade_id']] : '未选择';
             $list[] = $row;
         }
     }
     $data['list'] = $list;
     // 分页
     $purl = site_url('admin/account/index/') . ($param ? '?' . implode('&', $param) : '');
     $data['pagination'] = multipage($total, $size, $page, $purl);
     $data['province_list'] = RegionModel::get_regions(1);
     $data['city_list'] = RegionModel::get_regions($search['province'], FALSE, 2);
     $data['area_list'] = RegionModel::get_regions($search['city'], FALSE, 3);
     $data['grades'] = $grades;
     $data['from'] = C('student_source');
     $data['search'] = $search;
     $data['schools'] = array();
     $data['mode'] = $mode;
     $data['priv_delete'] = $this->check_power('student_trash', FALSE);
     $data['priv_manage'] = $this->check_power('account_manage', FALSE);
     // 模版
     $this->load->view('account/index', $data);
 }
Example #13
0
 /**
  * 生成省市区+学校联动的源数据为JS文件.
  */
 public function generate_schools()
 {
     //TODO
     $school_info = $region_info = $school_names = $region_names = $region_parents = $region_depths = $region_schools = $grade_schools = array();
     $school_info = SchoolModel::get_v_schools();
     foreach ($school_info as $k => $v) {
         $school_names[$v['school_id']] = $v['school_name'];
         //1. 学校id=>名称关系
         $region_schools[$v['school_id']] = $v['area'];
         //2. 学校与所属区县的关系
         $grade_schools[2][] = $v['school_id'];
         //3. 年级段(小初高1,32,)与学校的关系
         $grade_schools[3][] = $v['school_id'];
         //年级段(小初高1,2,3)与学校的关系
     }
     $region_info = RegionModel::get_all_region();
     foreach ($region_info as $k2 => $v2) {
         $region_names[$v2['region_id']] = $v2['region_name'];
         //4. 地域id=>名称关系
         $region_parents[$v2['region_id']] = $v2['parent_id'];
         //5. 地域每级的关系
     }
     //6. 地域深度
     $region_array1 = $region_array2 = $region_array3 = $region_depths = array();
     $region_array1 = RegionModel::get_regions_by_depth(1);
     //省
     $region_array2 = RegionModel::get_regions_by_depth(2);
     //市
     $region_array3 = RegionModel::get_regions_by_depth(3);
     //区、县
     foreach ($region_array1 as $v3) {
         $region_depths[1][] = $v3['region_id'];
     }
     foreach ($region_array2 as $v4) {
         $region_depths[2][] = $v4['region_id'];
     }
     foreach ($region_array3 as $v5) {
         $region_depths[3][] = $v5['region_id'];
     }
     $str_1 = "var school_names = " . "'" . json_encode($school_names) . "';\n";
     $str_2 = "var region_schools = " . "'" . json_encode($region_schools) . "';\n";
     $str_3 = "var grade_schools = " . "'" . json_encode($grade_schools) . "';\n";
     $str_4 = "var region_names = " . "'" . json_encode($region_names) . "';\n";
     $str_5 = "var region_parents = " . "'" . json_encode($region_parents) . "';\n";
     $str_6 = "var region_depths = " . "'" . json_encode($region_depths) . "';\n";
     file_put_contents(FCPATH . 'js/schools_data.js', $str_1 . $str_2 . $str_3 . $str_4 . $str_5 . $str_6);
 }