source: pro-violet-viettel/sourcecode/application/modules/admin/controllers/reportprovince.php

Last change on this file was 906, checked in by namnd, 10 years ago
File size: 14.9 KB
Line 
1<?php
2
3if (!defined('BASEPATH'))
4    exit('No direct script access allowed');
5
6class Reportprovince extends MX_Controller {
7
8    const TOKENPW = 'violet';
9
10    public function __construct() {
11        parent::__construct();
12        $this->load->helper('cookie');
13        $this->load->helper('language');
14        $this->lang->load('messages', 'message');
15        $this->load->model('reportmodel');
16    }
17
18    public function index() {
19        $data = array();
20        $admin_info = $this->session->userdata('adminInfo');
21        if ($admin_info) {
22            $data['content'] = $this->getProvince();
23            $this->load->view('reportprovince/index', $data);
24        } else {
25            $this->load->view('login');
26        }
27    }
28
29    public function getProvince($filters = array()) {
30
31        $this->load->model('reportmodel');
32        $data['date'] = 1;
33        $data['month'] = date("m");
34        $data['year'] = date("Y");
35        $data['to_date'] = date("d");
36        $data['to_month'] = date("m");
37        $data['to_year'] = date("Y");
38        if ($this->input->post()) {
39            //$data['month'] = $this->input->post('month');
40            //$data['year'] = $this->input->post('year');
41                        $data['month'] = $this->input->post('to_month');
42            $data['year'] = $this->input->post('to_year');
43                        $data['to_date'] = $this->input->post('to_date');
44            $data['to_month'] = $this->input->post('to_month');
45            $data['to_year'] = $this->input->post('to_year');
46        }
47                $result = $this->reportmodel->getProvinces($data);
48        $data['provinces'] =  $result['provinces'];
49                $data['totalTbng'] = $result['totalTbng'];
50                $data['totalTbth'] = $result['totalTbth'];
51                $data['totalTbn'] = $result['totalTbn'];
52               
53                $data['totalDtng'] = $result['totalDtng'];
54                $data['totalDtth'] = $result['totalDtth'];
55                $data['totalDtn'] = $result['totalDtn'];
56               
57        if ($this->input->is_ajax_request()) {
58            return $this->load->view('reportprovince/province', $data);
59        }
60        return $this->load->view('reportprovince/province', $data, true);
61    }
62
63 
64
65    public function export() {
66        $this->load->model('reportmodel');
67        $data['month'] = $this->uri->segment(4);
68        $data['year'] = $this->uri->segment(5);
69       
70        $data['provinces'] = $this->reportmodel->getProvinces($data);
71
72        $this->load->library("PHPExcel");
73        $sheet = $this->phpexcel->getActiveSheet();
74        $sheet->setTitle("bao cao thue bao " . $data['month'] . " - " . $data['year']);
75        $sheet->getColumnDimension('A')->setWidth(10);
76        $sheet->getColumnDimension('B')->setWidth(25);
77        $sheet->getColumnDimension('C')->setWidth(25);
78        $sheet->getColumnDimension('D')->setWidth(15);
79        $sheet->getColumnDimension('E')->setWidth(15);
80        $sheet->getColumnDimension('F')->setWidth(15);
81        $sheet->getColumnDimension('G')->setWidth(15);
82        $sheet->getColumnDimension('H')->setWidth(15);
83        $sheet->getColumnDimension('I')->setWidth(15);
84        $sheet->getColumnDimension('J')->setWidth(15);
85        $sheet->setCellValue('A1', "Báo cáo thuê bao theo tỉnh");
86        $sheet->setCellValue('A2', "Tháng: " . $data['month'] . " - " . $data['year']);
87        //$sheet->setCellValue('C2', "Ngày: ".date('d')." - ".date('m')." - ". date('Y')."");
88        $sheet->setCellValue('A4', "STT");
89        $sheet->setCellValue('B4', "Ngày");
90        $sheet->setCellValue('C4', "Mã Tỉnh/Thành Phố");
91        $sheet->setCellValue('D4', "Tỉnh/Thành phố");
92        $sheet->setCellValue('E4', "TB Ngày");
93        $sheet->setCellValue('F4', "LÅ©y kế TB tháng");
94        $sheet->setCellValue('G4', "Tổng TB Ngày");
95        $sheet->setCellValue('H4', "DT Ngày");
96        $sheet->setCellValue('I4', "LÅ©y kế DT tháng");
97        $sheet->setCellValue('J4', "Tổng DT năm");
98        $dem=0;
99        foreach ($data['provinces'] as $index => $provinces) {
100            $sheet->setCellValue('A' . ($dem + 5), $provinces['stt']);
101            $sheet->setCellValue('B' . ($dem + 5), date('d')." - ".date('m')." - ". date('Y'));
102            $sheet->setCellValue('C' . ($dem + 5), $index);
103            $sheet->setCellValue('D' . ($dem + 5), $provinces['province']);
104            $sheet->setCellValue('E' . ($dem + 5), $provinces['tbng']);
105            $sheet->setCellValue('F' . ($dem + 5), $provinces['tbt']);
106            $sheet->setCellValue('G' . ($dem + 5), $provinces['tbn']);
107            $sheet->setCellValue('H' . ($dem + 5), $provinces['dtng']);
108            $sheet->setCellValue('I' . ($dem + 5), $provinces['dtt']);
109            $sheet->setCellValue('J' . ($dem + 5), $provinces['dtn']);
110            $dem++;
111        }
112        $writer = new PHPExcel_Writer_Excel5($this->phpexcel);
113                header('Content-Type: application/vnd.ms-excel');
114        header('Content-Disposition: attachment; filename="thue_bao_' . $data['month'] . "_" . $data['year'] . '.xls"');
115        $writer->save('php://output');
116    }
117    public function test()
118    {
119        $input['date']=1;
120        $input['month']=1;
121        $input['year']=2014;
122        $input['to_month']=1;
123        $input['to_year']=2015;
124        $input['to_date']=15;
125        $data=$this->reportmodel->exportPackage($input);
126        echo "<pre>";
127        print_r ($data);
128        echo "</pre>";
129    }
130       
131        public function exportProvince(){
132                $this->load->model('reportmodel');
133                $data['date'] = 1;
134        $data['month'] = $this->uri->segment(5);
135        $data['year'] = $this->uri->segment(6);
136        $data['to_date'] = $this->uri->segment(4);
137        $data['to_month'] = date("m");
138        $data['to_year'] = date("Y");
139                /*
140        if ($this->input->post()) {
141                        //$data['date'] = $this->input->post('date');
142            $data['month'] = $this->input->post('to_month');
143            $data['year'] = $this->input->post('to_year');
144                        $data['to_date'] = $this->input->post('to_date');
145            $data['to_month'] = $this->input->post('to_month');
146            $data['to_year'] = $this->input->post('to_year');
147        }*/
148               
149        $result = $this->reportmodel->getProvinces($data);
150        $data['provinces'] =  $result['provinces'];
151               
152                $data['totalTbng'] = $result['totalTbng'];
153                $data['totalTbth'] = $result['totalTbth'];
154                $data['totalTbn'] = $result['totalTbn'];
155               
156                $data['totalDtng'] = $result['totalDtng'];
157                $data['totalDtth'] = $result['totalDtth'];
158                $data['totalDtn'] = $result['totalDtn'];
159
160        $this->load->library("PHPExcel");
161        $sheet = $this->phpexcel->getActiveSheet();
162               
163        $sheet->setTitle("bao cao thue bao " . $data['month'] . " - " . $data['year']);
164        $sheet->getColumnDimension('A')->setWidth(10);
165        $sheet->getColumnDimension('B')->setWidth(25);
166        $sheet->getColumnDimension('C')->setWidth(25);
167        $sheet->getColumnDimension('D')->setWidth(15);
168        $sheet->getColumnDimension('E')->setWidth(15);
169        $sheet->getColumnDimension('F')->setWidth(15);
170        $sheet->getColumnDimension('G')->setWidth(15);
171        $sheet->getColumnDimension('H')->setWidth(15);
172        $sheet->getColumnDimension('I')->setWidth(15);
173        $sheet->getColumnDimension('J')->setWidth(15);
174               
175               
176                $sheet->setCellValue('B1', "TẬP ĐOÀN VIỄN THÔNG QUÂN ĐỘI");
177                $style = array(
178                        'font' => array('bold' => true, 'size' => 12, 'name' =>'Cambria', 'color' => array('rgb' => '0070bf')),
179                        'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
180                                                                'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER,
181                                                                'wrap' => true )
182                );
183                $sheet->mergeCells('B1:I1');
184                $sheet->getStyle('B1')->applyFromArray($style);
185               
186                $sheet->setCellValue('B2', "TỔNG CÔNG TY VIỄN THÔNG VIETTEL");
187                $style = array(
188                        'font' => array('size' => 12, 'name' =>'Cambria', 'color' => array('rgb' => '0070bf')),
189                        'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
190                                                                'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER,
191                                                                'wrap' => true )
192                );
193                $sheet->mergeCells('B2:I2');
194                $sheet->getStyle('B2')->applyFromArray($style);
195               
196               
197                $sheet->setCellValue('A4', "BÁO CÁO TỔNG HỢP PHÁT TRIỂN THUÊ BAO VÀ DOANH THU DỊCH VỀ SBG THEO TỈNH");
198               
199                $style = array(
200                        'font' => array('size' => 11, 'name' =>'Cambria'),
201                        'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_LEFT,
202                                                                'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER,
203                                                                'wrap' => true ),
204                        'borders' =>    array(
205                                'allborders' => array(
206                                        'style' => \PHPExcel_Style_Border::BORDER_THIN
207                                        )
208                        )
209                );
210               
211                $sheet->setCellValue('B6', "Từ ngày: ".$data['date']."/".$data['month']."/".$data['year']);
212                $sheet->setCellValue('C6', "Đến ngày: ".$data['to_date']."/".$data['to_month']."/".$data['to_year']);
213                $sheet->setCellValue('B7', "Ngày kết xuất: ".date("d")."/".date("m")."/".date("Y"));
214                $sheet->setCellValue('C7', "Nhân viên kết xuất: ");
215               
216                $sheet->getStyle('B6')->applyFromArray($style);
217                $sheet->getStyle('C6')->applyFromArray($style);
218                $sheet->getStyle('B7')->applyFromArray($style);
219                $sheet->getStyle('C7')->applyFromArray($style);
220               
221               
222                $style = array(
223                        'font' => array('bold' => true, 'size' => 14, 'name' =>'Cambria'),
224                        'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
225                                                                'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER,
226                                                                'wrap' => true )
227                );
228                $sheet->mergeCells('A4:I4');
229                $sheet->getStyle('A4')->applyFromArray($style);
230               
231                $sheet->setCellValue('A9', 'STT');
232                $style = array(
233                        'font' => array('bold' => true, 'size' => 11, 'name' =>'Cambria'),
234                        'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
235                                                                'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER,
236                                                                'wrap' => true),
237                        'borders' =>    array(
238                                'allborders' => array(
239                                        'style' => \PHPExcel_Style_Border::BORDER_THIN
240                                        )
241                        )
242                );
243                $sheet->mergeCells('A9:A10');
244                $sheet->getStyle('A9')->applyFromArray($style);
245               
246                $sheet->setCellValue('B9', 'Mã Tỉnh/Thành Phố');
247                $sheet->mergeCells('B9:B10');
248                $sheet->getStyle('B9:B10')->applyFromArray($style);
249               
250                $sheet->setCellValue('C9', "Tỉnh/Thành phố");
251                $sheet->mergeCells('C9:C10');
252                $sheet->getStyle('C9:C10')->applyFromArray($style);
253               
254                $sheet->setCellValue('D9', "THUÊ BAO");
255                $sheet->mergeCells('D9:F9');
256                $sheet->getStyle('D9:F9')->applyFromArray($style);
257               
258                $sheet->setCellValue('G9', "DOANH THU");
259                $sheet->mergeCells('G9:I9');
260                $sheet->getStyle('G9:I9')->applyFromArray($style);
261               
262                $sheet->setCellValue('A11', "Tổng");
263                $sheet->mergeCells('A11:C11');
264                $sheet->getStyle('A11:C11')->applyFromArray($style);
265               
266                $style = array(
267                        'font' => array('bold' => true, 'size' => 11, 'name' =>'Cambria'),
268                        'alignment' => array('vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER),
269                        'borders' =>    array(
270                                'allborders' => array(
271                                        'style' => \PHPExcel_Style_Border::BORDER_THIN
272                                        )
273                        )
274                );
275               
276                $sheet->setCellValue('D11', $data['totalTbng']);
277                $sheet->setCellValue('E11', $data['totalTbth']);
278                $sheet->setCellValue('F11', $data['totalTbn']);
279                $sheet->setCellValue('G11', $data['totalDtng']);
280                $sheet->setCellValue('H11', $data['totalDtth']);       
281                $sheet->setCellValue('I11', $data['totalDtn']);
282       
283                $sheet->getStyle('D11')->applyFromArray($style);
284                $sheet->getStyle('E11')->applyFromArray($style);
285                $sheet->getStyle('F11')->applyFromArray($style);
286                $sheet->getStyle('G11')->applyFromArray($style);
287                $sheet->getStyle('H11')->applyFromArray($style);
288                $sheet->getStyle('I11')->applyFromArray($style);
289               
290                $styleSTT = array(
291                        'font' => array('size' => 11, 'name' =>'Cambria'),
292                        'alignment' => array('horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
293                                                                'vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER),
294                        'borders' =>    array(
295                                'allborders' => array(
296                                        'style' => \PHPExcel_Style_Border::BORDER_THIN
297                                        )
298                        )
299                );
300               
301                $style = array(
302                        'font' => array('size' => 11, 'name' =>'Cambria'),
303                        'alignment' => array('vertical' => \PHPExcel_Style_Alignment::VERTICAL_CENTER),
304                        'borders' =>    array(
305                                'allborders' => array(
306                                        'style' => \PHPExcel_Style_Border::BORDER_THIN
307                                        )
308                        )
309                );
310               
311                $sheet->setCellValue('D10', "Thá»±c hiện Ngày");
312                $sheet->getStyle('D10')->applyFromArray($style);
313                $sheet->setCellValue('E10', "LÅ©y kế Tháng");
314                $sheet->getStyle('E10')->applyFromArray($style);
315                $sheet->setCellValue('F10', "LÅ©y kế Năm");
316                $sheet->getStyle('F10')->applyFromArray($style);
317                $sheet->setCellValue('G10', "Thá»±c hiện Ngày");
318                $sheet->getStyle('G10')->applyFromArray($style);
319                $sheet->setCellValue('H10', "LÅ©y kế Tháng");
320                $sheet->getStyle('H10')->applyFromArray($style);
321                $sheet->setCellValue('I10', "LÅ©y kế Năm");
322                $sheet->getStyle('I10')->applyFromArray($style);
323               
324                /*
325        $sheet->setCellValue('A1', "Báo cáo thuê bao theo tỉnh");
326        $sheet->setCellValue('A2', "Tháng: " . $data['month'] . " - " . $data['year']);
327        //$sheet->setCellValue('C2', "Ngày: ".date('d')." - ".date('m')." - ". date('Y')."");
328        $sheet->setCellValue('A4', "STT");
329        $sheet->setCellValue('B4', "Ngày");
330        $sheet->setCellValue('C4', "Mã Tỉnh/Thành Phố");
331        $sheet->setCellValue('D4', "Tỉnh/Thành phố");
332        $sheet->setCellValue('E4', "TB Ngày");
333        $sheet->setCellValue('F4', "LÅ©y kế TB tháng");
334        $sheet->setCellValue('G4', "Tổng TB Ngày");
335        $sheet->setCellValue('H4', "DT Ngày");
336        $sheet->setCellValue('I4', "LÅ©y kế DT tháng");
337        $sheet->setCellValue('J4', "Tổng DT năm");
338                */
339        $dem=0;
340        foreach ($data['provinces'] as $index => $provinces) {
341            $sheet->setCellValue('A' . ($dem + 12), $provinces['stt']);
342            $sheet->setCellValue('B' . ($dem + 12), $index);
343            $sheet->setCellValue('C' . ($dem + 12), $provinces['province']);
344            $sheet->setCellValue('D' . ($dem + 12), $provinces['tbng']);
345            $sheet->setCellValue('E' . ($dem + 12), $provinces['tbt']);
346            $sheet->setCellValue('F' . ($dem + 12), $provinces['tbn']);
347            $sheet->setCellValue('G' . ($dem + 12), $provinces['dtng']);
348            $sheet->setCellValue('H' . ($dem + 12), $provinces['dtt']);
349            $sheet->setCellValue('I' . ($dem + 12), $provinces['dtn']);
350                       
351                        $sheet->getStyle('A'. ($dem + 12))->applyFromArray($styleSTT);
352                        $sheet->getStyle('B'. ($dem + 12))->applyFromArray($style);
353                        $sheet->getStyle('C'. ($dem + 12))->applyFromArray($style);
354                        $sheet->getStyle('D'. ($dem + 12))->applyFromArray($style);
355                        $sheet->getStyle('E'. ($dem + 12))->applyFromArray($style);
356                        $sheet->getStyle('F'. ($dem + 12))->applyFromArray($style);
357                        $sheet->getStyle('G'. ($dem + 12))->applyFromArray($style);
358                        $sheet->getStyle('H'. ($dem + 12))->applyFromArray($style);
359                        $sheet->getStyle('I'. ($dem + 12))->applyFromArray($style);
360                       
361            $dem++;
362        }
363               
364        $writer = new PHPExcel_Writer_Excel5($this->phpexcel);
365                header('Content-Type: application/vnd.ms-excel');
366        header('Content-Disposition: attachment; filename="thue_bao_va_doanh_thu_theo_tinh_' . $data["to_date"].'_'. $data['to_month'].'_'. $data['to_year'] . '.xls"');
367        $writer->save('php://output');
368        }
369}
Note: See TracBrowser for help on using the repository browser.