load->helper ( 'cookie' ); $this->load->helper('language'); $this->lang->load('messages', 'message'); } public function index() { $admin_info = $this->session->userdata ( 'adminInfo' ); if ($admin_info) { $data ['content'] = $this->get_users (); $this->load->view ( 'user/index', $data ); } else { $this->load->view ( 'login' ); } } public function get_users() { $this->load->helper ( 'pagging' ); $this->load->model ( 'user_model' ); $provinces = lang('_PROVINCES_'); error_log(var_export($provinces, TRUE), 3, '/srv/www/sbg/log/provinces.log'); $data ['current_page'] = $this->uri->segment ( 4, 1 ); $data ['itemsoptions'] = array ( 10, 25, 50, 100 ); $data ['perpage'] = 10; $data ['statusoptions'] = array ( 0 => "Tất cả", 1 => "Đã đăng ký VIP", 2 => "Dùng thử 7 ngày", 3=> "Dùng thử hạn chế", 4=> "Hết hạn" ); $data ['status'] = 0; if ($this->input->post ( 'status' )) { $data ['status'] = ( int ) $this->input->post ( 'status' ); } $data['provinces'] = $provinces; $data['province'] = ''; if ($this->input->post ( 'province' )) { $data ['province'] = $this->input->post ( 'province' ); } if ($data['province']) $data['districts'] = $this->user_model->getDistrictByProvince($data ['province']); if ($this->input->post ( 'district' )) { $data['district'] = $this->input->post ( 'district' ); } $data ['keyword'] = ""; $data ['sorting_order'] = "sorting_desc"; $data ['sorting_field'] = "created_time"; if ($this->input->post ( 'sorting_order' )) { if ($this->input->post ( 'sorting_ord er' ) != "sorting") { $data ['sorting_order'] = $this->input->post ( 'sorting_order' ); $data ['sorting_field'] = $this->input->post ( 'sorting_field' ); } } if ($this->input->post ( 'items' )) { $data ['perpage'] = $this->input->post ( 'items' ); } if ($this->input->post ( 'keyword' )) { $data ['keyword'] = $this->input->post ( 'keyword' ); } $data ['daterange_start'] = ""; $data ['daterange_end'] = ""; if ($this->input->post ( 'daterange' )) { $daterange = explode ( " - ", $this->input->post ( 'daterange' ) ); $daterange [0] = str_replace ( '/', '-', $daterange [0] ); $daterange [1] = str_replace ( '/', '-', $daterange [1] ); $data['date_start'] = $daterange [0]; $data['date_end'] = $daterange [1]; $data ['daterange_start'] = date ( 'Y-m-d H:i:s', strtotime ( $daterange [0] ) ); $data ['daterange_end'] = date ( 'Y-m-d H:is:s', strtotime ( $daterange [1] . ' + 1 day' ) ); } $data ['start'] = ($data ['current_page'] - 1) * $data ['perpage']; $data ['total'] = $this->user_model->get_total_users ( $data ); $us = $this->user_model->get_list_users ( $data ); $users = array (); foreach ( $us as $u ) { $dist = $this->user_model->getDistrictByIdAndProvince($u['district'], $u['province']); $u['district_name'] = $dist['type']." ".$dist['district_name']; $u ['province'] = isset($provinces[$u ['province']]) ? $provinces[$u ['province']] : $u ['province']; $userinfo = $this->get_userinfo ( $u ['us_id'] ); if ($userinfo) { $u ['username'] = $userinfo ['username']; $u['fullname'] = $userinfo['fullname']; } array_push ( $users, $u ); } $data ['users'] = $users; $data ['paging_url'] = base_url () . "admin/nguoi_dung/trang/"; $data ['num_links'] = 2; $data ['paging'] = pagging ( $data ); if ($this->input->is_ajax_request ()) { return $this->load->view ( 'user/listview', $data ); } return $this->load->view ( 'user/listview', $data, true ); } public function edit_user() { $admin_info = $this->session->userdata ( 'adminInfo' ); if ($admin_info) { $input = $this->input->post (); $result = array (); $result ['success'] = 0; $us_id = ( int ) $this->uri->segment ( 4, 0 ); if ($us_id == 0) { $result ['success'] = 0; } else { $this->load->model ( 'user_model' ); $input ['updated_time'] = date ( "Y-m-d H:i:s" ); $this->user_model->update ( $us_id, $input ); $result ['success'] = 1; } echo json_encode ( $result ); } else { $this->load->view ( 'login' ); } } public function delete_user() { $admin_info = $this->session->userdata ( 'adminInfo' ); if ($admin_info) { $result = array (); $result ['success'] = 0; $us_id = ( int ) $this->uri->segment ( 4, 0 ); if ($us_id == 0) { $result ['success'] = 0; } else { $this->load->model ( 'user_model' ); $this->user_model->delete ( $us_id ); $result ['success'] = 1; } echo json_encode ( $result ); } else { $this->load->view ( 'login' ); } } public function get_user_by_id() { $admin_info = $this->session->userdata ( 'adminInfo' ); if ($admin_info) { $result = array (); $result ['success'] = 0; $us_id = ( int ) $this->uri->segment ( 4, 0 ); if ($us_id == 0) { $result ['success'] = 0; } else { $this->load->model ( 'user_model' ); $data = $this->user_model->search_by_id ( $us_id ); $result ['item'] = $data; $result ['success'] = 1; } echo json_encode ( $result ); } else { $this->load->view ( 'login' ); } } private function get_userinfo($us_id) { $src = 'violet'; $token = md5 ( $us_id . self::TOKENPW ); $this->load->model ( 'user_model' ); $data = $this->user_model->get_user_info ( $src, $us_id, $token ); $result = array (); parse_str ( $data, $result ); return $result; } public function export(){ $this->load->helper ( 'pagging' ); $this->load->model ( 'user_model' ); $provinces = lang('_PROVINCES_'); $data ['current_page'] = $this->uri->segment ( 4, 1 ); $data ['itemsoptions'] = array ( 10, 25, 50, 100 ); $data ['perpage'] = $this->uri->segment (5, 10); $data ['statusoptions'] = array ( 0 => "Tất cả", 1 => "Đã đăng ký VIP", 2 => "Dùng thử 7 ngày", 3=> "Dùng thử hạn chế", 4=> "Hết hạn" ); $data ['status'] = $this->uri->segment (7, 0); $data['provinces'] = $provinces; $data['province'] = $this->uri->segment (8); if ($data['province'] == 'default') $data['province'] = null; if ($data['province']) $data['districts'] = $this->user_model->getDistrictByProvince($data ['province']); $data['district'] = $this->uri->segment (9); if ($data['district'] == 'default') $data['district'] = null; $data ['keyword'] = $this->uri->segment (6); if ($data['keyword'] == 'default') $data['keyword'] = null; $data ['sorting_order'] = "sorting_desc"; $data ['sorting_field'] = "created_time"; $data ['sorting_order'] = $this->uri->segment (12); $data ['sorting_field'] = $this->uri->segment (13); $data ['daterange_start'] = $this->uri->segment (10); $data ['daterange_end'] = $this->uri->segment (11); if ($data['daterange_start'] == 'default') $data['daterange_start'] = null; if ($data['daterange_end'] == 'default') $data['daterange_end'] = null; if ($data['daterange_start']) $data['daterange_start'] = date ( 'Y-m-d H:i:s', strtotime ( $data ['daterange_start'] ) ); if ($data['daterange_end']) $data['daterange_end'] = date ( 'Y-m-d H:i:s', strtotime ( $data['daterange_end'] . ' + 1 day' ) ); $data ['start'] = ($data ['current_page'] - 1) * $data ['perpage']; //echo json_encode($data); $data ['total'] = $this->user_model->get_total_users ( $data ); $us = $this->user_model->get_list_users ( $data ); $users = array (); foreach ( $us as $u ) { $dist = $this->user_model->getDistrictByIdAndProvince($u['district'], $u['province']); $u['district_name'] = $dist['type']." ".$dist['district_name']; $u ['province'] = isset($provinces[$u ['province']]) ? $provinces[$u ['province']] : $u ['province']; $userinfo = $this->get_userinfo ( $u ['us_id'] ); if ($userinfo) { $u ['username'] = $userinfo ['username']; $u['fullname'] = $userinfo['fullname']; } if (strtotime($u['expire_date']) > time() && $u['p_id'] != 5 ){ $u['status'] = 'Đã đăng ký VIP'; }elseif(strtotime($u['expire_date']) > time() && $u['p_id'] == 5){ $u['status'] = 'Dùng thử 7 ngày'; }elseif(strtotime($u['expire_date']) < time() && $u['p_id'] == 5){ $u['status'] = 'Dùng thử hạn chế'; }else{ $u['status'] = 'Hết hạn'; } array_push ( $users, $u ); } $data ['users'] = $users; $data ['paging_url'] = base_url () . "admin/nguoi_dung/trang/"; $data ['num_links'] = 2; $data ['paging'] = pagging ( $data ); $this->load->library("PHPExcel"); $sheet = $this->phpexcel->getActiveSheet(); $sheet->setTitle("bao cao thue bao " . $data['month'] . " - " . $data['year']); $sheet->getColumnDimension('A')->setWidth(10); $sheet->getColumnDimension('B')->setWidth(25); $sheet->getColumnDimension('C')->setWidth(25); $sheet->getColumnDimension('D')->setWidth(15); $sheet->getColumnDimension('E')->setWidth(15); $sheet->getColumnDimension('F')->setWidth(15); $sheet->getColumnDimension('G')->setWidth(15); $sheet->getColumnDimension('H')->setWidth(25); $sheet->getColumnDimension('I')->setWidth(25); $sheet->setCellValue('B1', "TẬP ĐOÀN VIỄN THÔNG QUÂN ĐỘI"); $style = array( 'font' => array('bold' => true, 'size' => 12, 'name' =>'Cambria', 'color' => array('rgb' => '0070bf')), 'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER, 'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER, 'wrap' => true ) ); $sheet->mergeCells('B1:I1'); $sheet->getStyle('B1')->applyFromArray($style); $sheet->setCellValue('B2', "TỔNG CÔNG TY VIỄN THÔNG VIETTEL"); $style = array( 'font' => array('size' => 12, 'name' =>'Cambria', 'color' => array('rgb' => '0070bf')), 'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER, 'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER, 'wrap' => true ) ); $sheet->mergeCells('B2:I2'); $sheet->getStyle('B2')->applyFromArray($style); $sheet->setCellValue('A4', "DANH SÁCH NGƯỜI DÙNG"); $style = array( 'font' => array('bold' => true, 'size' => 14, 'name' =>'Cambria'), 'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER, 'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER, 'wrap' => true ) ); $sheet->mergeCells('A4:I4'); $sheet->getStyle('A4')->applyFromArray($style); $sheet->setCellValue('A6', 'STT'); $style = array( 'font' => array('bold' => true, 'size' => 11, 'name' =>'Cambria'), 'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER, 'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER, 'wrap' => true), 'borders' => array( 'allborders' => array( 'style' => \PHPExcel_Style_Border::BORDER_THIN ) ) ); $sheet->getStyle('A6')->applyFromArray($style); $style = array( 'font' => array('bold' => true, 'size' => 11, 'name' =>'Cambria'), 'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER, 'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER, 'wrap' => true), 'borders' => array( 'allborders' => array( 'style' => \PHPExcel_Style_Border::BORDER_THIN ) ) ); $sheet->setCellValue('B6', 'Số điện thoại'); $sheet->setCellValue('C6', "Họ tên)"); $sheet->setCellValue('D6', "Tài khoản SBG"); $sheet->setCellValue('E6', "Ngày đăng ký"); $sheet->setCellValue('F6', "Ngày hết hạn"); $sheet->setCellValue('G6', "Tỉnh/Thành phố"); $sheet->setCellValue('H6', "Quận/Huyện"); $sheet->setCellValue('I6', "Tình trạng"); $sheet->getStyle('A6:I6')->applyFromArray($style); $styleSTT = array( 'font' => array('size' => 11, 'name' =>'Cambria'), 'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER, 'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER), 'borders' => array( 'allborders' => array( 'style' => \PHPExcel_Style_Border::BORDER_THIN ) ) ); $style = array( 'font' => array('size' => 11, 'name' =>'Cambria'), 'alignment' => array('vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER), 'borders' => array( 'allborders' => array( 'style' => \PHPExcel_Style_Border::BORDER_THIN ) ) ); $dem = 0; foreach ($users as $index => $user): $sheet->setCellValue('A' . ($dem + 7), $index + 1); $sheet->setCellValueExplicit('B' . ($dem + 7), $user['username'], PHPExcel_Cell_DataType::TYPE_STRING); $sheet->setCellValue('C' . ($dem + 7), $user['fullname']); $sheet->setCellValue('D' . ($dem + 7), $user['acc_balanced']); $sheet->setCellValue('E' . ($dem + 7), date('d/m/Y', strtotime($user['created_time']))); $sheet->setCellValue('F' . ($dem + 7), isset($user['expire_date']) && strtotime($user['expire_date']) > 0 ? date('d/m/Y', strtotime($user['expire_date'])) : ''); $sheet->setCellValue('G' . ($dem + 7), $user['province']); $sheet->setCellValue('H' . ($dem + 7), $user['district_name']); $sheet->setCellValue('I' . ($dem + 7), $user['status']); $sheet->getStyle('A' . ($dem + 7))->applyFromArray($styleSTT); $sheet->getStyle('B' . ($dem + 7).':I'.($dem + 7))->applyFromArray($style); $dem++; endforeach; $writer = new PHPExcel_Writer_Excel5($this->phpexcel); header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment; filename="danhsachnguoidung_trang_'.$data['current_page'].'.xls"'); $writer->save('php://output'); } }