| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- <?php
- defined('BASEPATH') OR exit('No direct script access allowed');
- class Retreatlog extends Start_Controller {
- public function __construct(){
- parent::__construct();
- $this->load->library('session');
- $this->load->model('Model_Retreatlogs','retreatlogs');
- }
- //定义方法的调用规则 获取URI第二段值
- public function _remap($arg,$arg_array)
- {
- if($arg == 'exceljs')//添加
- {
- $this->_exceljs();
- }
- else{
- $this->_index();
- }
- }
- private function _index(){
-
- if($this->input->method() == 'post'){
- $page = $this->input->post('page',true);
- $perpage = $this->input->post('perpage',true);
- $number = $this->input->post('number',true);
- $timetk = $this->input->post('timetk',true);
- $timetj = $this->input->post('timetj',true);
- $timetk = strtotime($timetk);
- $timetj = strtotime($timetj);
- $where = " tk_time >= {$timetk} and tk_time <= {$timetj} ";
- if($number){
- $where .= " and number = '{$number}' ";
- }
- //数据排序
- $order_str = "id desc";
- if(empty($page))
- {
- $start = 0;
- $perpage = 1;
- }
- else
- {
- $start = ($page - 1)*$perpage;
- }
-
- $info_list = $this->retreatlogs->find_all($where,'id,number,ck_time,tk_time,cz_time,ck_goods',$order_str,$start,$perpage);
- foreach($info_list as $k => $v){
- $json_arr = json_decode($v['ck_goods'],true);
- $fpadata_arr = explode(";", $json_arr['fpdata']);
- $tmp_str = '';
- foreach($fpadata_arr as $key => $value){
- $tmp_arr = explode("|", $value);
- if(isset($tmp_arr[1])){
- $tmp_str.= $tmp_arr[1].' ';
- if(isset($tmp_arr[2])){
- $tmp_str.= " * ".$tmp_arr[2].'<br/>';
- }
- }
- }
- $info_list[$k]['ck_time'] = date('Y-m-d H:i:s',$v['ck_time']);
- $info_list[$k]['tk_time'] = date('Y-m-d H:i:s',$v['tk_time']);
- $info_list[$k]['cz_time'] = date('Y-m-d H:i:s',$v['cz_time']);
- $info_list[$k]['ck_goods'] = $tmp_str;
- }
-
- $total = $this->retreatlogs->find_count($where);
- $pagenum = ceil($total/$perpage);
- $over = $total-($start+$perpage);
- $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list));
- echo json_encode($rows);exit;
- }else{
- $this->_Template('retreatlog',$this->data);
- }
- }
- private function _exceljs(){
- $number = $this->input->get('number',true);
- $timetk = $this->input->get('timetk',true);
- $timetj = $this->input->get('timetj',true);
- $timetk = strtotime($timetk);
- $timetj = strtotime($timetj);
- $where = "tk_time >= {$timetk} and tk_time <= {$timetj}";
- if($number){
- $where .= " and number = '{$number}' ";
- }
- $order_str = "id desc";
- $info_list = $this->retreatlogs->find_all($where,'id,number,ck_time,tk_time,cz_time,ck_goods',$order_str);
- foreach($info_list as $k => $v){
- $json_arr = json_decode($v['ck_goods'],true);
- $fpadata_arr = explode(";", $json_arr['fpdata']);
- $tmp_str = '';
- foreach($fpadata_arr as $key => $value){
- $tmp_arr = explode("|", $value);
- if(isset($tmp_arr[1])){
- $tmp_str.= $tmp_arr[1].' ';
- if(isset($tmp_arr[2])){
- $tmp_str.= " * ".$tmp_arr[2].'<br/>';
- }
- }
- }
- $tmp_str = trim($tmp_str,'<br/>');
- $info_list[$k]['ck_time'] =empty($v['ck_time'])? '' : date('Y-m-d H:i:s',$v['ck_time']);
- $info_list[$k]['tk_time'] = empty($v['tk_time'])? '' : date('Y-m-d H:i:s',$v['tk_time']);
- $info_list[$k]['cz_time'] = empty($v['cz_time'])? '' : date('Y-m-d H:i:s',$v['cz_time']);
- $info_list[$k]['ck_goods'] = $tmp_str;
- }
- //生成excel
- $filename = date("Y-m-d")."退库日志记录.xls";
- $str = "<html xmlns:x=\"urn:schemas-microsoft-com:office:excel\">
- <head>
- <!--[if gte mso 9]><xml>
- <x:ExcelWorkbook>
- <x:ExcelWorksheets>
- <x:ExcelWorksheet>
- <x:Name>EXCEL</x:Name>
- <x:WorksheetOptions>
- <x:Print>
- <x:ValidPrinterInfo />
- </x:Print>
- </x:WorksheetOptions>
- </x:ExcelWorksheet>
- </x:ExcelWorksheets>
- </x:ExcelWorkbook>
- </xml>
- <![endif]-->
- </head><body>";
- $str .= "<table border=1 style='font-family: Microsoft Yahei;font-size: 13px;'>";
- $str .= "<tr><td>订单编号</td><td>出库时间</td><td>退库时间</td><td>重置时间</td><td>货品信息</td></tr>";
- foreach ($info_list as $key=>$value)
- {
-
- $str .= "<tr>";
- $str .= "<td>". $value['number']. "</td>";
- $str .= "<td>". $value['ck_time']. "</td>";
- $str .= "<td>". $value['tk_time']. "</td>";
- $str .= "<td>". $value['cz_time']. "</td>";
- $str .= "<td>". $value['ck_goods']. "</td>";
- $str .= "</tr>";
- }
- $str .= "</table></body></html>";
- header( "Content-Type: application/vnd.ms-excel; name='excel'" );
- header( "Content-type: application/octet-stream" );
- header( "Content-Disposition: attachment; filename=".$filename );
- header( "Cache-Control: must-revalidate, post-check=0, pre-check=0" );
- header( "Pragma: no-cache" );
- header( "Expires: 0" );
- exit($str);
- }
- }
|