public function deleteAction($request) { $Class = new ClassModel(); if ($request->url_elements[2]) { $needle = strtolower($request->url_elements[2]); switch ($needle) { case 'delete': if (is_numeric($request->parameters['Class_Id'])) { $dat = $Class->DeleteClass($request->parameters['Class_Id']); if ($dat == 'Deletion Successful') { $data['Success'] = "Record was deleted"; } else { $data["error"] = "No records to delete."; } } else { $data["error"] = "Error: Class_Id is not a number."; } break; default: $data["error"] = "Error: Please check the api documentation and try again.."; break; } } else { $data["error"] = "Error: Please check the api documentation and try again."; } return $data; }
public function load() { parent::load(); if ($this->load_class) { // Nazwa statusu $this->active_name = ClassUser::getNameStatus($this->active); } }
/** * Display a listing of the resource. * * @return Response */ public function index() { $error = Session::get('error'); $success = Session::get('success'); $tclass = ClassModel::count(); $tsubject = Subject::count(); $tstudent = Student::count(); return View::Make('dashboard', compact('error', 'success', 'tclass', 'tsubject', 'tstudent')); }
public static function sqlGetAllItems($using_pages = false, $current_page = '1', $items_on_page = '5', $controller_search = '', array $custom_where = array()) { if ($sql = parent::sqlGetAllItems($using_pages, $current_page, $items_on_page, $controller_search, $custom_where)) { foreach ($sql as $key => $val) { // Zmiana daty na polski format $sql[$key]['date_add_rank'] = date('d.m.Y', strtotime($val['date_add_rank'])); } } return $sql; }
public static function sqlGetAllItems($using_pages = false, $current_page = '1', $items_on_page = '5', $controller_search = '') { if ($sql = parent::sqlGetAllItems($using_pages, $current_page, $items_on_page, $controller_search)) { foreach ($sql as $key => $val) { // Nazwa statusu $sql[$key]['active_name'] = ClassUser::getNameStatus($val['active']); } } return $sql; }
public static function sqlGetAllItems($using_pages = false, $current_page = '1', $items_on_page = '5', $controller_search = '', array $custom_where = array()) { if ($sql = parent::sqlGetAllItems($using_pages, $current_page, $items_on_page, $controller_search, $custom_where)) { foreach ($sql as $key => $val) { // nazwa stopnia zaawansowania jezyka $sql[$key]['language_level_name'] = ClassLanguageLevel::sqlGetItemNameByIdParent($val['id_language_level']); } } return $sql; }
/** * Show the form for creating a new resource. * * @return Response */ public function getsheet() { $inputs = Input::all(); $input = (object) $inputs; $subjects = Subject::select('name')->where('class', $input->class)->orderby('code', 'asc')->get(); if (count($subjects) < 1) { return Redirect::to('/tabulation')->withInput(Input::all())->with("error", "There are not subjects for this class!"); } $students = Student::select('regiNo', 'firstName', 'middleName', 'lastName')->where('class', $input->class)->where('section', $input->section)->where('session', trim($input->session))->where('shift', $input->shift)->get(); if (count($students) < 1) { return Redirect::to('/tabulation')->withInput(Input::all())->with("error", "There are not student for this class!"); } $merit = DB::table('MeritList')->select('regiNo', 'grade', 'point', 'totalNo')->where('exam', $input->exam)->where('class', $input->class)->where('session', trim($input->session))->orderBy('point', 'DESC')->orderBy('totalNo', 'DESC')->get(); if (count($merit) < 1) { return Redirect::to('/tabulation')->withInput(Input::all())->with("error", "Marks not submit or result not generate for this exam!"); } foreach ($students as $student) { $marks = Marks::select('written', 'mcq', 'practical', 'ca', 'total', 'grade', 'point')->where('regiNo', $student->regiNo)->where('exam', $input->exam)->orderby('subject', 'asc')->get(); if (count($marks) < 1) { return Redirect::to('/tabulation')->withInput(Input::all())->with("error", "Marks not submited yet!"); } /*$marks = DB::table('Marks') ->join('MeritList', 'Marks.regiNo', '=', 'MeritList.regiNo') ->select('Marks.written','Marks.mcq', 'Marks.practical', 'Marks.ca', 'Marks.total', 'Marks.grade', 'Marks.point', 'MeritList.totalNo', 'MeritList.grade as tgrade','MeritList.point as tpoint') ->where('Marks.regiNo',$student->regiNo) ->where('Marks.exam', '=',$input->exam) ->orderby('Marks.subject','asc') ->get();*/ $meritdata = new Meritdata(); $position = 0; foreach ($merit as $m) { $position++; if ($m->regiNo === $student->regiNo) { $meritdata->regiNo = $m->regiNo; $meritdata->point = $m->point; $meritdata->grade = $m->grade; $meritdata->position = $position; $meritdata->totalNo = $m->totalNo; break; } } $student->marks = $marks; $student->meritdata = $meritdata; } $cl = ClassModel::Select('name')->where('code', $input->class)->first(); $input->class = $cl->name; $fileName = $input->class . '-' . $input->section . '-' . $input->session . '-' . $input->exam; // return $students; Excel::create($fileName, function ($excel) use($input, $subjects, $students) { $excel->sheet('New sheet', function ($sheet) use($input, $subjects, $students) { $sheet->loadView('app.excel', compact('subjects', 'input', 'students')); }); })->download('xlsx'); }
public function GradeExportLayout() { Excel::create('Grade', function ($excel) { $excel->sheet('Sheetname', function ($sheet) { $uploaddata = array(); $ClassDetails = ClassModel::all()->toArray(); foreach ($ClassDetails as $ClassDetailsvalue) { $uploaddata[]['Grade'] = $ClassDetailsvalue['GradeName']; } $sheet->fromArray($uploaddata); }); })->export('xlsx'); return Redirect::to('class'); }
public function load() { parent::load(); if ($this->load_class) { // przypisanie poprawnego zolnierza do tymczasowej zmiennej $this->id_soldier_tmp = $this->id_soldier; // przypisanie poprawnego szkolenia do tymczasowej zmiennej $this->id_badge_tmp = $this->id_badge; // nazwa odznaczenia $item = new ClassBadge($this->id_badge); $this->badge_name = $item->name; // data przyznania $this->date_grant = date('d.m.Y', strtotime($this->date_grant)); $this->date_receive = $this->date_receive === NULL ? $this->date_receive : date('d.m.Y', strtotime($this->date_receive)); // nazwa statusu szkolenia $this->status_name = self::getStatusBadge($this->received); } }
public function load() { parent::load(); if ($this->load_class) { // przypisanie poprawnego zolnierza do tymczasowej zmiennej $this->id_soldier_tmp = $this->id_soldier; // przypisanie poprawnej misji do tymczasowej zmiennej $this->id_equipment_tmp = $this->id_equipment; // nazwa wyposazenia $item = new ClassEquipment($this->id_equipment); $this->equipment_name = $item->name; // Zmiana daty na polski format $this->date_equipment_add = date('d.m.Y H:i', strtotime($this->date_equipment_add)); $this->date_return = $this->date_return === NULL ? $this->date_return : date('d.m.Y H:i', strtotime($this->date_return)); // nazwa statusu wyposazenia $this->status_name = self::getStatusEquipment($this->returned); } }
/** * 考试期次列表 * * @return boolean 成功返回true 失败返回false */ public function select_exams() { if (!$this->check_power('teacher_download_manage')) { exit; } $class_list = ClassModel::get_class_list(); $grades = C('grades'); $states = C('exam_status'); $sql = "SELECT COUNT(*) nums FROM {pre}exam WHERE exam_pid=0;"; $row = $this->db->query($sql)->row_array(); $total = $row['nums']; if ($total > 0) { $size = 15; $page = isset($_GET['page']) && intval($_GET['page']) > 1 ? intval($_GET['page']) : 1; $offset = ($page - 1) * $size; /* 分页 */ $purl = site_url('admin/teacher_download/select_exams/' . $pid); $data['pagination'] = multipage($total, $size, $page, $purl); $list = array(); $sql = "SELECT * FROM {pre}exam WHERE exam_pid=0 ORDER BY exam_id desc LIMIT {$offset},{$size}"; $res = $this->db->query($sql); foreach ($res->result_array() as $row) { $row['class_name'] = isset($class_list[$row['class_id']]['class_name']) ? $class_list[$row['class_id']]['class_name'] : ''; $row['grade_name'] = isset($grades[$row['grade_id']]) ? $grades[$row['grade_id']] : ''; $row['addtime'] = date('Y-m-d H:i', $row['addtime']); $row['state'] = $states[$row['status']]; $list[$row['exam_id']] = $row; } $data['list'] = $list; } $this->load->view("teacher_download/exam_list", $data); }
public static function sqlGetAllItems($using_pages = false, $current_page = '1', $items_on_page = '5', $controller_search = '') { if ($sql = parent::sqlGetAllItems($using_pages, $current_page, $items_on_page, $controller_search)) { // ladowanie centrow szkolen $training_centers = ClassTrainingCenter::sqlGetAllActiveItems(false); foreach ($sql as $key => $val) { // nazwa centrum szkolenia $sql[$key]['training_center_name'] = $training_centers[$val['id_training_centre']]['name'] . ', ' . $training_centers[$val['id_training_centre']]['location']; // nazwa lub data zakonczenia misji $sql[$key]['date_end_name'] = self::getDateEndNameByDateEnd($val['date_end'], true); // data rozpoczecia misji $sql[$key]['date_start_name'] = self::getPlDate($val['date_start']); // nazwa statusu // $sql[$key]['status'] = self::getStatusName($val['date_end'], $val['active']); $sql[$key]['status'] = self::getStatusTraining($val['date_start'], $val['date_end']); } } return $sql; }
public function group($group_id = 0) { if (!$this->check_power('question_manage')) { return; } $group_id = intval($group_id); if ($group_id) { $query = $this->db->get_where('relate_group', array('group_id' => $group_id)); $group = $query->row_array(); } if (empty($group)) { $site_url = site_url('/admin/question/index'); header("location: {$site_url}"); // message('关联分组不存在。','/admin/question/index'); return; } $cpusers = CpUserModel::get_cpuser_list(); // 加载分类数据 $class_list = ClassModel::get_class_list(); $subjects = CpUserModel::get_allowed_subjects(); $grades = C('grades'); $qtypes = C('qtype'); $periods = C('grade_period'); $langs = C('interview_lang'); $types = C('interview_type'); $list_ques = $list_interview = array(); $query = $this->db->get_where('question', array('group_id' => $group_id, 'parent_id' => 0, 'is_delete' => 0)); foreach ($query->result_array() as $row) { $row_cids = explode(',', trim($row['class_id'], ',')); $row_cname = array(); foreach ($row_cids as $cid) { $row_cname[] = isset($class_list[$cid]['class_name']) ? $class_list[$cid]['class_name'] : ''; } $row['class_name'] = implode(',', $row_cname); $row['start_grade'] = isset($grades[$row['start_grade']]) ? $grades[$row['start_grade']] : ''; $row['qtype'] = isset($qtypes[$row['type']]) ? $qtypes[$row['type']] : ''; $row['end_grade'] = isset($grades[$row['end_grade']]) ? $grades[$row['end_grade']] : ''; $row['subject_name'] = isset($subjects[$row['subject_id']]) ? $subjects[$row['subject_id']] : ''; $row['addtime'] = date('Y-m-d H:i', $row['addtime']); $row['cpuser'] = isset($cpusers[$row['admin_id']]['realname']) ? $cpusers[$row['admin_id']]['realname'] : ''; $row['has_edit_power'] = QuestionModel::check_question_power($row['ques_id'], 'w', false); //判断该试题已经被考试过 或 正在被考 $row['be_tested'] = QuestionModel::question_has_test_action($row['ques_id']); $list_ques[] = $row; } $query2 = $this->db->get_where('interview_question', array('group_id' => $group_id, 'is_delete' => 0)); foreach ($query2->result_array() as $row) { // 类型 $row_cids = explode(',', trim($row['class_id'], ',')); $row_cname = array(); foreach ($row_cids as $cid) { $row_cname[] = isset($class_list[$cid]['class_name']) ? $class_list[$cid]['class_name'] : ''; } // 年段 $row_pids = explode(',', trim($row['grade_period'], ',')); $row_pname = array(); foreach ($row_pids as $pid) { $row_pname[] = isset($periods[$pid]) ? $periods[$pid] : ''; } $row['class_name'] = implode(',', $row_cname); $row['period_name'] = implode(',', $row_pname); $row['language'] = isset($langs[$row['lang']]) ? $langs[$row['lang']] : ''; $row['type_name'] = isset($types[$row['interview_type']]['type_name']) ? $types[$row['interview_type']]['type_name'] : ''; $row['addtime'] = date('Y-m-d H:i', $row['addtime']); $row['cpuser'] = isset($cpusers[$row['admin_id']]['realname']) ? $cpusers[$row['admin_id']]['realname'] : ''; $list_interview[] = $row; } $priv = array('delete_question' => $this->check_power('question_delete', FALSE), 'delete_interview_question' => $this->check_power('invterview_question_delete', FALSE)); $data['group_id'] = $group_id; $data['list_ques'] = $list_ques; $data['list_interview'] = $list_interview; $data['priv'] = $priv; $data['has_edit_power'] = QuestionModel::check_question_power($group['group_name'], 'w', false); $data['has_interview_question_manage'] = $this->check_power('interview_question_manage', false); // 模版 $this->load->view('relate_group/group', $data); }
protected function search() { if (!$this->checkSearchDefinition()) { return; } $ClassModel = new ClassModel(); $session_old = false; $session = array(); $class = $this->search_definition['class']; $definition = $class::$definition['fields']; if (isset($_SESSION['search'][$this->search_definition['controller']])) { $session_old = $_SESSION['search'][$this->search_definition['controller']]; } foreach ($_POST as $key => $val) { if ($key == 'form_action_search') { continue; } $value = ClassTools::getValue($key) !== false && ClassTools::getValue($key) != '' ? ClassTools::getValue($key) : false; if ($value === false) { continue; } if (isset($this->search_definition['form'][$key])) { if (isset($definition[$key]) && isset($definition[$key]['validate'])) { foreach ($definition[$key]['validate'] as $validate_method) { $value = $ClassModel->validByMethod($validate_method, $value, $definition[$key]['name'], $key); if ($ClassModel->errors && count($ClassModel->errors) > 0) { $this->alerts['danger search'][] = $ClassModel->errors['0']; $ClassModel->errors = array(); } else { $session[$key] = $value; } } } else { $session[$key] = $value; } } } $_SESSION['search'][$this->search_definition['controller']] = $session; return; }
public function question_class() { $start_grade = intval($this->input->post('start_grade')); $end_grade = intval($this->input->post('end_grade')); $grade_id = intval($this->input->post('grade_id')); $list = array(); if ($start_grade && $end_grade) { $list = ClassModel::get_grade_area_class($start_grade, $end_grade); } elseif ($grade_id) { $list = ClassModel::get_class_list($grade_id); sort($list); } echo json_encode($list); }
public static function sqlGetAllItems($using_pages = false, $current_page = '1', $items_on_page = '5', $controller_search = '') { if ($sql = parent::sqlGetAllItems($using_pages, $current_page, $items_on_page, $controller_search)) { foreach ($sql as $key => $val) { // Rodzaj jednostki nazwa $sql[$key]['equipment_type_name'] = ClassEquipmentType::sqlGetItemNameByIdParent($val['id_equipment_type']); // Nazwa statusu $sql[$key]['active_name'] = ClassUser::getNameStatus($val['active']); } } return $sql; }
public static function sqlGetAllItems($using_pages = false, $current_page = '1', $items_on_page = '5', $controller_search = '') { if ($sql = parent::sqlGetAllItems($using_pages, $current_page, $items_on_page, $controller_search)) { foreach ($sql as $key => $val) { // $sql[$key]['mission_type_name'] = self::sqlGetTypeNameId($val['id_mission_type']); $sql[$key]['mission_type_name'] = ClassMissionType::sqlGetItemNameByIdParent($val['id_mission_type']); $sql[$key]['date_end_name'] = self::getDateEndNameByDateEnd($val['date_end']); // $sql[$key]['status'] = self::getStatusName($val['date_end'], $val['active']); $sql[$key]['status'] = self::getStatusMission($val['date_start'], $val['date_end']); } } return $sql; }
public function rule($id = 0) { if (!$this->check_power('interview_rule_manage')) { return; } if ($id = intval($id)) { $query = $this->db->get_where('interview_rule', array('rule_id' => $id)); $rule = $query->row_array(); } if (empty($rule)) { message('组题规则不存在', 'admin/interview_rule/index'); return; } if (empty($rule['status'])) { message('试题未生成', 'admin/interview_rule/index'); return; } $where = $param = array(); $where[] = "rq.rule_id='{$id}'"; $where = $where ? ' WHERE ' . implode(' AND ', $where) : ''; $sql = "SELECT COUNT(*) nums FROM {pre}interview_rule_question rq {$where}"; $res = $this->db->query($sql); $row = $res->row_array(); $total = $row['nums']; $size = 15; $page = isset($_GET['page']) && intval($_GET['page']) > 1 ? intval($_GET['page']) : 1; $offset = ($page - 1) * $size; // 加载分类数据 $class_list = ClassModel::get_class_list(); $periods = C('grade_period'); $langs = C('interview_lang'); $types = C('interview_type'); $list = array(); if ($total) { $sql = "SELECT rq.id rqid,q.*,count(rk.id) use_count, max(r.rule_time) max_time \n FROM {pre}interview_rule_question rq \n LEFT JOIN {pre}interview_question q ON rq.ques_id=q.id\n LEFT JOIN {pre}interview_rule_question rk ON q.id=rk.ques_id\n LEFT JOIN {pre}interview_rule r ON rk.rule_id=r.rule_id\n {$where}\n group by rq.ques_id\n ORDER BY rq.id ASC LIMIT {$offset}, {$size}"; /* $sql = "SELECT q.* FROM {pre}interview_rule_question rq LEFT JOIN {pre}interview_question q ON rq.ques_id=q.id $where ORDER BY rq.id ASC LIMIT $offset, $size"; */ $res = $this->db->query($sql); foreach ($res->result_array() as $row) { // 类型 $row_cids = explode(',', trim($row['class_id'], ',')); $row_cname = array(); foreach ($row_cids as $cid) { $row_cname[] = isset($class_list[$cid]['class_name']) ? $class_list[$cid]['class_name'] : ''; } // 年段 $row_pids = explode(',', trim($row['grade_period'], ',')); $row_pname = array(); foreach ($row_pids as $pid) { $row_pname[] = isset($periods[$pid]) ? $periods[$pid] : ''; } $row['class_name'] = implode(',', $row_cname); $row['period_name'] = implode(',', $row_pname); $row['language'] = isset($langs[$row['lang']]) ? $langs[$row['lang']] : ''; $row['type_name'] = isset($types[$row['interview_type']]['type_name']) ? $types[$row['interview_type']]['type_name'] : ''; $row['addtime'] = date('Y-m-d H:i', $row['addtime']); $row['max_time'] = $row['max_time'] ? date('Y-m-d H:i', $row['max_time']) : '---'; $list[] = $row; } } $data['list'] = $list; $data['rule'] = $rule; // 分页 $purl = site_url('admin/interview_rule_question/rule/' . $id) . ($param ? '?' . implode('&', $param) : ''); $data['pagination'] = multipage($total, $size, $page, $purl); // 模版 $this->load->view('interview_rule_question/rule', $data); }
protected function sqlUpdate($table, $data, $where) { if (!parent::sqlUpdate($table, $data, $where)) { return false; } global $DB; $DB->delete('sew_soldier_address_types', "`id_address` = '{$this->id}'", false); foreach ($this->id_address_types as $id_address_type) { $DB->insert('sew_soldier_address_types', array('id_soldier' => $this->id_soldier, 'id_address' => $this->id, 'id_address_type' => $id_address_type)); } return true; }
/** * 试题列表 * * @return void */ public function index() { // 加载分类数据 $class_list = ClassModel::get_class_list(); //限制只能查看所属学科 $subjects = CpUserModel::get_allowed_subjects(); $grades = C('grades'); $qtypes = C('qtype'); $knowledge_list = KnowledgeModel::get_knowledge_list(); // 查询条件 $where = array(); $param = array(); $search = array(); $where[] = "q.parent_id=0"; // 过滤题组子题目,在题组页面管 $where[] = "q.is_delete <> 1"; /* 真题不需要审核 */ $where[] = "q.is_original <> 2"; // 录入人员 if ($search['admin_id'] = intval($this->input->get('admin_id'))) { $where[] = "q.admin_id={$search['admin_id']}"; $param[] = "admin_id={$search['admin_id']}"; } //限制只能查看自己创建的试题 if (!$this->is_super_user() && !CpUserModel::is_action_type_all('question', 'r') && !CpUserModel::is_action_type_subject('question', 'r') && CpUserModel::is_action_type_self('question', 'r')) { $c_uid = $this->session->userdata('admin_id'); $search['admin_id'] = $c_uid; $param[] = "admin_id={$c_uid}"; $where[] = "q.admin_id='{$c_uid}'"; } // 操作时间 $begin_time = $this->input->get('begin_time'); $end_time = $this->input->get('end_time'); if ($btime = (int) strtotime($begin_time)) { $search['begin_time'] = $begin_time; $where[] = "q.addtime >= {$btime}"; $param[] = "begin_time={$begin_time}"; } else { $search['begin_time'] = ''; } if ($etime = (int) strtotime($end_time)) { $etime += 86400; $search['end_time'] = $end_time; $where[] = "q.addtime < {$etime}"; $param[] = "end_time={$end_time}"; } else { $search['end_time'] = ''; } // 分组 if ($search['group_id'] = intval($this->input->get('group_id'))) { $where[] = "q.group_id={$search['group_id']}"; $param[] = "group_id={$search['group_id']}"; } // 题型 $search['type'] = $this->input->get('qtype'); if (strlen($search['type']) > 0) { $search['type'] = intval($search['type']); $where[] = "q.type={$search['type']}"; $param[] = "qtype={$search['type']}"; } // 考试方式 $search['test_way'] = $this->input->get('test_way'); if (strlen($search['test_way']) > 0) { $search['test_way'] = intval($search['test_way']); $where[] = "q.test_way IN ({$search['test_way']}, 3)"; $param[] = "test_way={$search['test_way']}"; } // 审核 $search['check'] = $this->input->get('check'); if (strlen($search['check']) > 0) { $search['check'] = intval($search['check']); $where[] = "q.check={$search['check']}"; $param[] = "check={$search['check']}"; } if ($search['subject_id'] = intval($this->input->get('subject_id'))) { $where[] = "q.subject_id={$search['subject_id']}"; $param[] = "subject_id={$search['subject_id']}"; $knowledge_parents = KnowledgeModel::get_knowledge_list($search['subject_id'], 0); } //信息提取方式 if ($search['group_type_id'] = intval($this->input->get('group_type_id'))) { $where[] = "q.group_type LIKE '%," . $search['group_type_id'] . ",%'"; $param[] = "group_type_id=" . $search['group_type_id']; } if ($search['group_type_pid'] = intval($this->input->get('group_type_pid'))) { $param[] = "group_type_pid=" . $search['group_type_pid']; if (isset($group_type_list[$search['group_type_pid']]['childlist']) && !$search['group_type_id']) { $group_type = $group_type_list[$search['group_type_pid']]['childlist']; $tmp_str = ''; foreach ($group_type as $item) { if ($tmp_str) { $tmp_str .= " OR q.group_type LIKE '%," . $item['id'] . ",%'"; } else { $tmp_str .= "q.group_type LIKE '%," . $item['id'] . ",%'"; } } $where[] = "(" . $tmp_str . ")"; } } // 题目类型 $search['is_original'] = $this->input->get('is_original'); $search['exam_year'] = $this->input->get('exam_year'); $search['remark'] = $this->input->get('remark'); if ($search['is_original'] > 0) { $search['is_original'] = intval($search['is_original']); $where[] = "q.is_original={$search['is_original']}"; $param[] = "is_original={$search['is_original']}"; //真题年份 if ($search['is_original'] == 2 && strlen($search['exam_year']) > 0) { $search['exam_year'] = intval($search['exam_year']); $where[] = "q.exam_year='{$search['exam_year']}'"; $param[] = "exam_year={$search['exam_year']}"; } // 真题备注关键词 if ($search['is_original'] == 2 && strlen($search['remark']) > 0) { $search['remark'] = $search['remark']; $where[] = "q.remark like '%" . $search['remark'] . "%'"; $param[] = "remark={$search['remark']}"; } } //标签 if ($search['tags'] = $this->input->get('tags')) { $tmp_item = explode('-', $search['tags']); if (strlen($search['type']) > 0) { $where[] = "q.tags = " . $tmp_item[1]; $param[] = "tags=" . $search['tags']; } else { $where[] = "q.type = " . $tmp_item[0] . " AND q.tags = " . $tmp_item[1]; $param[] = "tags=" . $search['tags']; } } //限制只能查看所属学科 if (!$this->is_super_user() && !$this->is_all_subject_user() && !CpUserModel::is_action_type_all('question', 'r') && CpUserModel::is_action_type_subject('question', 'r')) { $c_subject_id = rtrim($this->session->userdata('subject_id'), ','); if ($c_subject_id != '') { $c_subject_id = explode(',', $c_subject_id); $c_subject_id = array_values(array_filter($c_subject_id)); $c_subject_id = implode(',', $c_subject_id); $where[] = "q.subject_id in({$c_subject_id})"; } } //限制只能查看所属年级 if (!$this->is_super_user() && !$this->is_all_grade_user()) { $c_grade_id = rtrim($this->session->userdata('grade_id'), ','); if ($c_grade_id != '') { $c_grade_id = explode(',', $c_grade_id); $c_grade_id = array_values(array_filter($c_grade_id)); $c_grade_id = implode(',', $c_grade_id); $where_3 = " grade_id in({$c_grade_id})"; } else { $where_3 = '1=1'; } } else { $where_3 = '1=1'; } //限制只能查看所属类型 if (!$this->is_super_user() && !$this->is_all_q_type_user()) { $c_q_type_id = rtrim($this->session->userdata('q_type_id'), ','); if ($c_q_type_id != '') { $c_q_type_id = explode(',', $c_q_type_id); $c_q_type_id = array_values(array_filter($c_q_type_id)); $c_q_type_id = implode(',', $c_q_type_id); $where_4 = "class_id in ({$c_q_type_id})"; } else { $where_4 = '1=1'; } } else { $where_4 = '1=1'; } if ($where_3 != '1=1' || $where_4 != '1=1') { $where[] = "q.ques_id IN (SELECT DISTINCT ques_id FROM rd_relate_class WHERE {$where_3} AND {$where_4}) "; } if ($search['subject_id_str'] = $this->input->get('subject_str')) { $param[] = implode('&subject_str[]=', $search['subject_id_str']); $search['subject_id_str'] = implode(',', $search['subject_id_str']); $where[] = "q.subject_id_str = '," . $search['subject_id_str'] . ",'"; } //-----------------------------------------// // 年级区间、试题类型、难易度区间、文理科 //-----------------------------------------// $search['start_grade'] = intval($this->input->get('start_grade')); $search['end_grade'] = intval($this->input->get('end_grade')); $search['class_id'] = $this->input->get('class_id'); $search['start_difficulty'] = floatval($this->input->get('start_difficulty')); $search['end_difficulty'] = floatval($this->input->get('end_difficulty')); $search['subject_type'] = trim($this->input->get('subject_type')); if (is_array($search['class_id'])) { $search['class_id'] = my_intval($search['class_id']); } else { $search['class_id'] = array(); } if ($search['class_id'] or $search['start_difficulty'] or $search['end_difficulty'] or is_numeric($search['subject_type'])) { $class_where = array(); if ($search['end_grade']) { $class_where[] = "grade_id BETWEEN {$search['start_grade']} AND {$search['end_grade']}"; } elseif ($search['start_grade']) { $class_where[] = "grade_id >= {$search['start_grade']}"; } if ($search['class_id']) { if (count($search['class_id']) == 1) { $class_where[] = "class_id='" . $search['class_id'][0] . "'"; } else { $class_where[] = "class_id IN (" . my_implode($search['class_id']) . ")"; } } //文理科 if (is_numeric($search['subject_type'])) { $class_where[] = "subject_type='" . $search['subject_type'] . "'"; } if ($search['end_difficulty']) { $class_where[] = "difficulty BETWEEN {$search['start_difficulty']} AND {$search['end_difficulty']}"; } elseif ($search['start_difficulty']) { $class_where[] = "difficulty >= {$search['start_difficulty']}"; } if ($class_where) { $where[] = "q.ques_id IN (SELECT DISTINCT ques_id FROM {pre}relate_class WHERE " . implode(' AND ', $class_where) . ")"; } } elseif ($search['start_grade'] && $search['end_grade']) { if ($search['start_grade'] <= $search['end_grade']) { $where[] = "q.start_grade <= {$search['end_grade']} AND q.end_grade>= {$search['start_grade']}"; } } elseif ($search['start_grade']) { $where[] = "q.start_grade <= {$search['start_grade']} AND q.end_grade>= {$search['start_grade']}"; } elseif ($search['end_grade']) { $where[] = "q.start_grade <= {$search['end_grade']} AND q.end_grade>= {$search['end_grade']}"; } // url参数 if ($search['start_grade']) { $param[] = "start_grade=" . $search['start_grade']; } else { $search['start_grade'] = ''; } if ($search['end_grade']) { $param[] = "end_grade=" . $search['end_grade']; } else { $search['end_grade'] = ''; } if ($search['class_id']) { $param[] = "class_id[]=" . implode('&class_id[]=', $search['class_id']); } if (is_numeric($search['subject_type'])) { $param[] = "subject_type=" . $search['subject_type']; } if ($search['start_difficulty']) { $param[] = "start_difficulty=" . $search['start_difficulty']; } else { $search['start_difficulty'] = ''; } if ($search['end_difficulty']) { $param[] = "end_difficulty=" . $search['end_difficulty']; } else { $search['end_difficulty'] = ''; } // 试题技能 $search['skill_id'] = $this->input->get('skill_id'); if ($search['skill_id'] && is_array($search['skill_id'])) { foreach ($search['skill_id'] as $sid) { $sid = intval($sid); $where[] = "q.skill LIKE '%,{$sid},%'"; $param[] = "skill_id[]={$sid}"; } } else { $search['skill_id'] = array(); } // 试题方法策略 $method_tactic_ids = trim($this->input->get('method_tactic_ids')); $method_tactic_arr = my_intval(explode(',', $method_tactic_ids)); $search['method_tactic_ids'] = implode(',', $method_tactic_arr); if ($search['method_tactic_ids']) { $param[] = "method_tactic_ids=" . $search['method_tactic_ids']; $where[] = "exists(select ques_id from {pre}relate_method_tactic rmt WHERE q.ques_id=rmt.ques_id AND rmt.method_tactic_id IN ({$search['method_tactic_ids']}) and rmt.is_child=0)"; } // 试题知识点 $knowledge_ids = trim($this->input->get('knowledge_ids')); $knowledge_arr = my_intval(explode(',', $knowledge_ids)); $search['knowledge_ids'] = implode(',', $knowledge_arr); $know_processes = $this->input->get('know_process'); $search['know_process'] = my_intval($know_processes); if ($search['knowledge_ids']) { $param[] = "knowledge_ids=" . $search['knowledge_ids']; if ($search['know_process']) { $tmp_know_process = implode(',', $search['know_process']); $param[] = "know_process[]=" . implode('&know_process[]=', $search['know_process']); $where[] = "exists(select ques_id from {pre}relate_knowledge rk WHERE q.ques_id=rk.ques_id AND rk.knowledge_id IN ({$search['knowledge_ids']}) AND rk.know_process IN ({$tmp_know_process}) AND rk.is_child=0)"; } else { $where[] = "exists(select ques_id from {pre}relate_knowledge rk WHERE q.ques_id=rk.ques_id AND rk.knowledge_id IN ({$search['knowledge_ids']}) AND rk.is_child=0)"; } } else { if ($search['know_process']) { $tmp_know_process = implode(',', $search['know_process']); $param[] = "know_process[]=" . implode('&know_process[]=', $search['know_process']); $where[] = "exists(select ques_id from {pre}relate_knowledge rk WHERE q.ques_id=rk.ques_id AND rk.know_process IN ({$tmp_know_process}) AND rk.is_child=0)"; } } if ($search['keyword'] = trim($this->input->get('keyword'))) { $escape_keyword = $this->db->escape_like_str($search['keyword']); $where[] = "q.title LIKE '%" . $escape_keyword . "%'"; $param[] = "keyword=" . urlencode($search['keyword']); } if ($ques_id = intval($this->input->get('ques_id'))) { $search['ques_id'] = $ques_id; $where[] = "q.ques_id={$ques_id}"; $param[] = "ques_id={$ques_id}"; } $where = $where ? ' WHERE ' . implode(' AND ', $where) : ' 1 '; // 统计数量 $nums = QuestionModel::get_question_nums($where); $total = $nums['total']; // 读取数据 $size = 15; $page = isset($_GET['page']) && intval($_GET['page']) > 1 ? intval($_GET['page']) : 1; $offset = ($page - 1) * $size; $list = array(); if ($total) { $sql = "SELECT q.*,a.admin_user,a.realname FROM {pre}question q\n LEFT JOIN {pre}admin a ON a.admin_id=q.admin_id\n {$where} ORDER BY q.ques_id DESC LIMIT {$offset},{$size}"; $res = $this->db->query($sql); foreach ($res->result_array() as $row) { $row_cids = explode(',', trim($row['class_id'], ',')); $row_cname = array(); foreach ($row_cids as $cid) { $row_cname[] = isset($class_list[$cid]['class_name']) ? $class_list[$cid]['class_name'] : ''; } if ($row['exam_year'] == 0) { $row['exam_year'] = ''; } if ($row['related'] == 0) { $row['related'] = ''; } $row['class_name'] = implode(',', $row_cname); $row['qtype'] = isset($qtypes[$row['type']]) ? $qtypes[$row['type']] : ''; $row['start_grade'] = isset($grades[$row['start_grade']]) ? $grades[$row['start_grade']] : ''; $row['end_grade'] = isset($grades[$row['end_grade']]) ? $grades[$row['end_grade']] : ''; $row['subject_name'] = isset($subjects[$row['subject_id']]) ? $subjects[$row['subject_id']] : ''; $row['addtime'] = date('Y-m-d H:i', $row['addtime']); //判断该试题已经被考试过 或 正在被考 $row['be_tested'] = QuestionModel::question_has_test_action($row['ques_id']); //判断试题已经被考过 $row['be_tested_1'] = QuestionModel::question_has_be_tested($row['ques_id']); /* * 检查是否有关联信息 * 非题组:关联技能 * 题组:题干关联技能、知识点,子题必须要全部添加知识点 */ $no_relate_info = false; $q_type = $row['type']; if ($q_type > 0) { //非题组 $no_relate_info = $row['skill'] == ''; } else { //题组 //判断是否所有子题都已添加知识点 $tmp_ques_id = $row['ques_id']; $child_questions = $this->db->query("select count(*) as `count` from {pre}question where parent_id={$tmp_ques_id}")->row_array(); $count_child = $child_questions['count']; $child_count_result = $this->db->query("select count(*) as `count` from {pre}question where parent_id={$tmp_ques_id} and knowledge != ''")->row_array(); $tmp_count = $child_count_result['count']; if ($count_child == $tmp_count && $row['skill'] == '' && $row['knowledge'] == '') { $no_relate_info = true; } } $row['no_relate_info'] = $no_relate_info; $row['has_edit_power'] = QuestionModel::check_question_power($row['ques_id'], 'w', false); $row['recycle'] = array(); $list[] = $row; } } $data['list'] =& $list; // 分页 $purl = site_url('admin/question_audit/index/' . $mode) . ($param ? '?' . implode('&', $param) : ''); $data['pagination'] = multipage($total, $size, $page, $purl, '', $nums['relate_num']); if ($search['group_id'] && $list) { $row = array_pop($list); $data['relate_ques_id'] = $row['ques_id']; } $data['mode'] = $mode; $data['search'] = $search; $data['grades'] = $grades; $data['subjects'] = $subjects; $data['qtypes'] = $qtypes; $data['q_tags'] = C('q_tags'); $data['class_list'] = $class_list; $data['all_grade_class'] = ClassModel::all_grade_class(); $data['relate_class'] = array(); $data['knowledge_list'] = $knowledge_list; $data['priv_delete'] = $this->check_power('question_delete', FALSE); $data['priv_trash'] = $this->check_power('question_trash', FALSE); $data['priv_manage'] = $this->check_power('question_manage', FALSE); if (!$this->is_super_user() && !$this->is_all_subject_user() && CpUserModel::is_action_type_all('question', 'r')) { $query = $this->db->select('admin_id,admin_user,realname')->get_where('admin', array('is_delete' => 0)); } else { if (!$this->is_super_user() && !$this->is_all_subject_user() && CpUserModel::is_action_type_subject('question', 'r')) { $c_subject_id = $this->session->userdata('subject_id'); $c_subject_id = explode(',', $c_subject_id); $c_subject_id = array_values(array_filter($c_subject_id)); $where_11 = array(); foreach ($c_subject_id as $val) { $where_11[] = "find_in_set({$val},b.subject_id)"; } $where_12 = implode(' or ', $where_11); $sql = "SELECT admin_id,admin_user,realname FROM {pre}admin\n WHERE admin_id in(select admin_id from {pre}admin_role a,{pre}role b\n WHERE a.role_id=b.role_id and ({$where_12})) and is_delete=0 "; $query = $this->db->query($sql); /* $query = $this->db->select('admin_id,admin_user,realname')->where('subject_id', $c_subject_id)->get_where('admin', array('is_delete'=>0)); */ } else { if (!$this->is_super_user() && !$this->is_all_subject_user() && CpUserModel::is_action_type_self('question', 'r')) { $c_uid = $this->session->userdata('admin_id'); $query = $this->db->select('admin_id,admin_user,realname')->where('admin_id', $c_uid)->get_where('admin'); } else { $query = $this->db->select('admin_id,admin_user,realname')->get_where('admin', array('is_delete' => 0)); } } } $data['admin_list'] = $query->result_array(); //文理科 $data['subject_types'] = C('subject_type'); $data['all_subjects'] = C('subject'); //认知过程 $data['know_processes'] = C('know_process'); if ($this->is_super_user() || $this->is_all_subject_user() || $this->is_subject_user(3) || CpUserModel::is_action_type_all('question', 'w')) { $data['is_english_admin'] = true; } // 模版 $this->load->view('question_audit/index', $data); }
public function printlist($class, $section, $shift, $session, $subject, $date) { if ($class != "" && $section != "" && $shift != "" && $subject != "" && $date) { $className = ClassModel::select('name')->where('code', $class)->first(); $subjectName = Subject::select('name')->where('code', $subject)->first(); $attendance = DB::table('Attendance')->join('Student', 'Attendance.regiNo', '=', 'Student.regiNo')->select('Attendance.id', 'Attendance.regiNo', 'Student.rollNo', 'Student.firstName', 'Student.middleName', 'Student.lastName', 'Attendance.status')->where('Attendance.class', '=', $class)->where('Attendance.section', '=', $section)->Where('Attendance.shift', '=', $shift)->where('Attendance.session', '=', trim($session))->where('Attendance.subject', '=', $subject)->where('Attendance.date', '=', $this->parseAppDate($date))->get(); $input = array($className->name, $section, $shift, $session, $subjectName->name, $date); $fileName = $className->name . '-' . $section . '-' . $shift . '-' . $section . '-' . $subjectName->name . '-' . $date; Excel::create($fileName, function ($excel) use($input, $attendance) { $excel->sheet('New sheet', function ($sheet) use($input, $attendance) { $sheet->loadView('app.attendanceExcel', compact('attendance', 'input')); }); })->download('xlsx'); // return "true"; } else { return "Please fill up form correctly!"; } }
/** * @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 static function validIsInt($value) { if ($value === null) { return true; } return parent::validIsInt($value); }
public function preview($id = 0) { if (!$this->check_power('interview_question_list, interview_question_manage')) { return; } $id = intval($id); $id && ($row = InterviewQuestionModel::get_question($id)); if (empty($row)) { message('试题不存在', 'admin/interview_question/index'); return; } // 类型 $class_list = ClassModel::get_class_list(); $periods = C('grade_period'); $langs = C('interview_lang'); $types = C('interview_type'); $class_names = array(); $query = $this->db->get_where('interview_relate_class', array('ques_id' => $id)); foreach ($query->result_array() as $arr) { $class_names[$arr['grade_period']][$arr['class_id']] = isset($class_list[$arr['class_id']]) ? $class_list[$arr['class_id']]['class_name'] : ''; } $data['class_names'] = $class_names; $data['periods'] = $periods; $row['language'] = isset($langs[$row['lang']]) ? $langs[$row['lang']] : ''; $row['type_name'] = isset($types[$row['interview_type']]['type_name']) ? $types[$row['interview_type']]['type_name'] : ''; $row['addtime'] = date('Y-m-d H:i', $row['addtime']); $row['content'] = str_replace("\r\n", '<br/>', $row['content']); $row['student_content'] = str_replace("\r\n", '<br/>', $row['student_content']); $data['row'] = $row; // 模版 $this->load->view('interview_question/preview', $data); }
/** * Display a listing of the resource. * * @return Response */ public function index() { $classes = ClassModel::all(); return View::Make('app.promotion', compact('classes')); }
public static function sqlGetAllItems($using_pages = false, $current_page = '1', $items_on_page = '5', $controller_search = '', array $custom_where = array()) { if ($sql = parent::sqlGetAllItems($using_pages, $current_page, $items_on_page, $controller_search, $custom_where)) { foreach ($sql as $key => $val) { // nazwa kategorii prawa jazdy $sql[$key]['drive_category_name'] = ClassDriveCategories::sqlGetItemNameByIdParent($val['id_drive_category']); // Zmiana daty na polski format $sql[$key]['date_start'] = date('d.m.Y', strtotime($val['date_start'])); $sql[$key]['date_end'] = date('d.m.Y', strtotime($val['date_end'])); } } return $sql; }
/** * 听力题-编辑 * * @return void */ public function edit_correct($id = 0) { $id = intval($id); $this->examine_permission($id); $id && ($question = QuestionModel::get_question($id)); if ($question['related'] == 0) { $question['related'] = ''; } if ($question['exam_year'] == 0) { $question['exam_year'] = ''; } if (empty($question)) { message('试题不存在'); return; } //判断该试题已经被考试过 或 正在被考 $be_tested = QuestionModel::question_has_test_action($id); if ($be_tested) { message('该试题已经被考生考过 或者 正在被考, 无法操作'); } // 试题类型 $relate_class = array(); $query = $this->db->get_where('relate_class', array('ques_id' => $id)); foreach ($query->result_array() as $row) { $relate_class[$row['grade_id']][$row['class_id']] = $row; } $data['relate_class'] = $relate_class; $data['act'] = 'edit'; $data['question'] = $question; $data['grades'] = C('grades'); $data['subjects'] = CpUserModel::get_allowed_subjects(); $data['all_subjects'] = C('subject'); $data['subject_types'] = C('subject_type'); $data['all_grade_class'] = ClassModel::all_grade_class(); // 模版 $this->load->view('question_external/edit_correct', $data); }
public function getlist() { $rules = ['class' => 'required', 'section' => 'required', 'shift' => 'required', 'session' => 'required', 'exam' => 'required', 'subject' => 'required']; $validator = \Validator::make(Input::all(), $rules); if ($validator->fails()) { return Redirect::to('/mark/list/')->withErrors($validator); } else { $classes2 = ClassModel::orderby('code', 'asc')->lists('name', 'code'); $subjects = Subject::where('class', Input::get('class'))->lists('name', 'code'); $marks = DB::table('Marks')->join('Student', 'Marks.regiNo', '=', 'Student.regiNo')->select('Marks.id', 'Marks.regiNo', 'Student.rollNo', 'Student.firstName', 'Student.middleName', 'Student.lastName', 'Marks.written', 'Marks.mcq', 'Marks.practical', 'Marks.ca', 'Marks.total', 'Marks.grade', 'Marks.point', 'Marks.Absent')->where('Marks.class', '=', Input::get('class'))->where('Marks.section', '=', Input::get('section'))->Where('Marks.shift', '=', Input::get('shift'))->where('Marks.session', '=', trim(Input::get('session')))->where('Marks.subject', '=', Input::get('subject'))->where('Marks.exam', '=', Input::get('exam'))->get(); $formdata = new formfoo(); $formdata->class = Input::get('class'); $formdata->section = Input::get('section'); $formdata->shift = Input::get('shift'); $formdata->session = Input::get('session'); $formdata->subject = Input::get('subject'); $formdata->exam = Input::get('exam'); if (count($marks) == 0) { $noResult = array("noresult" => "No Results Found!!"); //return Redirect::to('/mark/list')->with("noresult","No Results Found!!"); return View::Make('app.markList', compact('classes2', 'subjects', 'marks', 'noResult', 'formdata')); } return View::Make('app.markList', compact('classes2', 'subjects', 'marks', 'formdata')); } }
/** * Show the form for editing the specified resource. * * @param int $id * @return Response */ public function edit($id) { $classes = ClassModel::lists('name', 'code'); $student = Student::find($id); return View::Make("app.studentEdit", compact('student', 'classes')); }
/** * @description 修改组题规则 * * @param int $id 规则id * @return void */ public function edit($id = 0) { if ($id = intval($id)) { $query = $this->db->get_where('exam_rule', array('rule_id' => $id)); $rule = $query->row_array(); $rule['is_original'] = explode(',', $rule['is_original']); } if (empty($rule)) { message('规则不存在'); return; } $rule['ques_num'] = explode(',', $rule['ques_num']); /** 组题规则限制 */ $rule_limits = $this->db->get_where('exam_rule_qtype_limit', array('exam_rule_id' => $id))->result_array(); $rule_limit = array(); if ($rule_limits) { foreach ($rule_limits as $key => $item) { $rule_limit[$item['qtype']][] = $item; } } /* * 读取知识点名称,以及相应试题数量 */ $knowledge_list = array(); $knowledge_parents = array(); $knowledge_ids = explode(',', $rule['knowledge_ids']); foreach ($knowledge_ids as $kid) { $knowledge = KnowledgeModel::get_konwledge_ques_num($kid); $knowledge_list[$kid] = $knowledge; if ($knowledge['pid'] && !isset($knowledge_parents[$knowledge['pid']])) { $knowledge_parents[$knowledge['pid']] = KnowledgeModel::get_konwledge_ques_num($knowledge['pid']); } } if ($rule['subject_id'] == 11) { $sql = "SELECT distinct(subject_id) FROM {pre}knowledge WHERE id IN ({$rule['knowledge_ids']})"; foreach ($this->db->query($sql)->result_array() as $item) { $data['subject_ids'][] = $item['subject_id']; } } /* * 重点知识点 */ $sub_rules = array(); $query = $this->db->get_where('exam_rule_knowledge', array('rule_id' => $id)); foreach ($query->result_array() as $row) { $row['pid'] = isset($knowledge_list[$row['knowledge_id']]['pid']) ? $knowledge_list[$row['knowledge_id']]['pid'] : 0; $row['nums'] = explode(',', $row['setting']); $sub_rules[] = $row; } usort($knowledge_list, 'cmp_knowledge'); foreach ($knowledge_list as $val) { $knowledge_parents[$val['pid']]['next'][] = $val; } usort($knowledge_parents, 'cmp_knowledge'); unset($knowledge_list); // 加载分类数据 $class_list = ClassModel::get_class_list(); $grades = C('grades'); $subjects = CpUserModel::get_allowed_subjects(); $data['act'] = 'edit'; $data['rule'] = $rule; $data['rule_limit'] = $rule_limit; $data['sub_rules'] = $sub_rules; $data['subjects'] = CpUserModel::get_allowed_subjects(); $data['all_subjects'] = C('subject'); $data['grades'] = C('grades'); $data['subject_types'] = C('subject_type'); $data['class_list'] = $class_list; $data['knowledge_list'] = $knowledge_parents; $data['know_process'] = C('know_process'); $data['q_tags'] = C('q_tags'); // 模版 $this->load->view('exam_rule/edit', $data); }