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].'
';
}
}
}
$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].'
';
}
}
}
$tmp_str = trim($tmp_str,'
');
$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 = "
| 订单编号 | 出库时间 | 退库时间 | 重置时间 | 货品信息 |
| ". $value['number']. " | "; $str .= "". $value['ck_time']. " | "; $str .= "". $value['tk_time']. " | "; $str .= "". $value['cz_time']. " | "; $str .= "". $value['ck_goods']. " | "; $str .= "