压缩包与excel格式导出

     <a href="javascript:void(0);" class="orderLoadidcardq"><i class="fa fa-download">i>身份照片清关导出a>
  //导出订单身份照片清关导出$(".orderLoadidcardq").click(function () {var order='';formData={};if($(".order").is(":checked")){$(".order").each(function(){if($(this).is(":checked")){order+=$(this).val()+',';}});}else{sval=2;status='';var sval=$('#sval').val();var value=$('.value').val();var idcard=$('#idcard').val();var dotId=$('#dotId').val();var customerId=$('#customerId').val();var deliverProductId=$('#deliverProductId').val();var canalId=$('#canalId').val();var tval=$('#tval').val();var start=$('#start').val();var end=$('#end').val();if($.trim(value)!=''){formData.sval=sval;formData.value = value;}var status=$('#status').val();if(status>0) formData.status=status;if(idcard>0) formData.idcard=idcard;if(dotId>0) formData.dotId=dotId;if(customerId>0) formData.customerId=customerId;if(deliverProductId>0) formData.deliverProductId=deliverProductId;if(canalId>0) formData.canalId=canalId;if(tval>0) formData.tval=tval;}var confirm='确定导出选中数据吗';var url = '/Admin/Addr/exportOrderqk';var index=layer.confirm(confirm, {icon: 3, title:'提示'}, function(i){$.ajax({type: "post",dataType:'json',url: url,data: {type:2,ids:order,formData:formData},beforeSend:function(){layer.msg('处理中,请稍候',{icon:0,time:0});},success: function(el){layer.closeAll();if(el.statusCode == 200) {var index=layer.open({type:0,icon:'1',time:1500,title:'成功提示信息:',content:'导出成功',end: function(){//遍历数组el.data.forEach(function(value,index){//        window.location.href=value['url'];var link = document.createElement('a');link.setAttribute("download",value['name']);link.href = value['url'];link.click();});}});layer.style(index,{width:'400px',top:'120px'});return false;}else{var index=layer.open({type:0,icon:'2',time:1000,title:'错误提示信息:',content:el.retMessage,end: function(){location.reload();}});layer.style(index,{width:'400px',top:'120px'});return false;}},error:function(el){layer.closeAll();console.log(el);var index=layer.open({type:0,icon:'2',time:1000,title:'错误提示信息:',content:'网络错误,请刷新重试!',end: function(){location.reload();}});layer.style(index,{width:'400px',top:'120px'});return false;}});});layer.style(index,{width:'400px',top:'120px'});});
public function exportOrderqk(){set_time_limit(0);@ini_set('memory_limit','512M');$where=array();try{$ids = request()->param('ids/s') ? request()->param('ids/s') : '';if($ids>0){$ids = trim($ids, ',');$where['o.id'] = ['in', $ids];}//状态$formData= request()->param('formData/a')?request()->param('formData/a'):0;$status=$formData['status']?$formData['status']:0;$third_nav='all';if($status>0){$where['o.status']=$status;switch($status){case 1:$third_nav='submit';break;case 2:$third_nav='confirm';break;case 4:$third_nav='receive';break;case 8:$third_nav='unshipment';break;case 16:$third_nav='shipment';break;case 32:$third_nav='clearance';break;case 64:$third_nav='deliver';break;case 128:$third_nav='temporary';break;case 256:$third_nav='cancel';break;case 512:$third_nav='withdrawal';break;}}//内容查询$sval=$formData['sval']?$formData['sval']:2;$value=$formData['value']?$formData['value']:'';$lsql='';if($value){$valArr=explode("\r\n", $value);$valArr=array_filter($valArr);switch($sval){case 1:$where['o.orderSn']=['in',$valArr];break;case 2:$where['o.logisticsCode']=['in',$valArr];break;case 3:$where['o.loadOrderNum']=['in',$valArr];break;case 4:$where['o.deliverCode']=['in',$valArr];break;case 6:$where['o.idCard']=['in',$valArr];break;case 5:foreach($valArr as $vlike){$lsql.=" (o.orderSn LIKE '%{$vlike}%' OR o.logisticsCode LIKE '%{$vlike}%' OR o.loadOrderNum LIKE '%{$vlike}%' OR o.deliverCode LIKE '%{$vlike}%') or";}$lsql=trim($lsql,'or');break;//$where}}//日期查询$tval=$formData['tval']?$formData['tval']:1;//收货日期$start=$formData['start']?$formData['start']:'';//清关日期$end=$formData['end']?$formData['end']:'';$tsql='';switch($tval){case 1:if($start && $end){$tsql="o.createTime>='{$start}' and o.createTime<='{$end}'";}elseif($start){$tsql="o.createTime>='{$start}'";}elseif($end){$tsql="o.createTime<='{$end}'";}break;case 2:if($start && $end){$tsql="o.deliverTime>='{$start}' and o.deliverTime<='{$end}'";}elseif($start){$tsql="o.deliverTime>='{$start}'";}elseif($end){$tsql="o.deliverTime<='{$end}'";}break;case 3:if($start && $end){$tsql="o.declareTime>='{$start}' and o.declareTime<='{$end}'";}elseif($start){$tsql="o.declareTime>='{$start}'";}elseif($end){$tsql="o.declareTime<='{$end}'";}break;}$list=Order::alias('o')->join('customer c','c.id=o.customerId','left')->join('user_address ua','ua.buyerIdNumber=o.idCard','left')->field('o.id,c.name customerName,o.orderSn,o.logisticsCode,o.idCard,o.consignee,o.mobile,o.province,o.city,o.district,o.address,o.gnum,o.pweight,o.smobile,o.saddress,o.createTime,ua.frontPhoto,ua.backPhoto,o.status,o.remark')->where($where)->whereor($lsql)->whereor($tsql)->order('o.id desc')->select();if(!$list) errorMsg('400','没有查询到数据');//导入表格文件vendor("phpexcel.PHPExcel");//实例化表格$objPHPExcel = new \PHPExcel();//生成表头$objPHPExcel->getProperties()->setCreator("jason")->setLastModifiedBy("jason")->setTitle("orders")->setSubject("Office 2007 csv")->setDescription("country")->setKeywords("orders")->setCategory("orders");// 设置行高$objPHPExcel->setActiveSheetIndex(0)->getDefaultRowDimension()->setRowHeight(20);$objPHPExcel->setActiveSheetIndex(0)->setCellValue("A1","编号")->setCellValue("B1","订单编号")->setCellValue("C1","运单号")->setCellValue("D1","身份证")->setCellValue("E1","收件人姓名")->setCellValue("F1","收件人电话")->setCellValue("G1","收件人省/自治区/直辖市")->setCellValue("H1","收件人城镇/市")->setCellValue("I1","收件人区")->setCellValue("J1","收件人详细地址")->setCellValue("K1","件数")->setCellValue("L1","实重")->setCellValue("M1","订单备注")->setCellValue("N1","订单状态")->setCellValue("O1","寄件人姓名")->setCellValue("P1","寄件人电话")->setCellValue("Q1","寄件人地址")->setCellValue("R1","时间");
//                ->setCellValue("S1","身份证正反面");$url='http://'.$_SERVER['HTTP_HOST'];$path ='./public/download/' . date('Ymd');if (!is_dir($path)) mkdir($path, 0755, true);$zipFile=date('YmdHis') . $this->adminId . str_pad(rand(0, 999), 3, '0', STR_PAD_LEFT) . '.zip';$zip=new \ZipArchive();$zip->open($path. '/'.$zipFile,1 | 8);//打开压缩包$domain = Request()->domain();foreach($list as $key=>$value){if(is_file('./'.$value['frontPhoto'])) {//获取后缀名$extesionArr=explode('.',$value['frontPhoto']);$extesion=$extesionArr[1];$zip->addFile('./'.$value['frontPhoto'], $value['logisticsCode'] . '.'.$extesion);}if(is_file('./'.$value['backPhoto'])) {//获取后缀名$extesionArr=explode('.',$value['backPhoto']);$extesion=$extesionArr[1];$zip->addFile('./'.$value['backPhoto'], $value['logisticsCode'] .'_A'. '.'.$extesion);}$i=$key+2;$j=$key+1;$url='--';if(!empty($value['frontPhoto'])){$url='http://'.$_SERVER['HTTP_HOST'];}if(!empty($value['backPhoto'])){$url='http://'.$_SERVER['HTTP_HOST'];}$statusStr=0;switch($value['status']){case 1:$statusStr='待提交';break;case 2:$statusStr='已确认';break;case 4:$statusStr='已收货';break;case 8:$statusStr='待发运';break;case 16:$statusStr='已发运';break;case 32:$statusStr='清关中';break;case 64:$statusStr='派送中';break;case 128:$statusStr='暂存中';break;case 256:$statusStr='已取消';break;case 512:$statusStr='已退运';break;}if($value['status']==1) $statusStr='待提交';if($value['status'])$objPHPExcel->setActiveSheetIndex(0)->setCellValueExplicit("A".$i,$j,\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("B".$i,$value['orderSn'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("C".$i,$value['logisticsCode'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("D".$i,$value['idCard'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("E".$i,$value['consignee'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("F".$i,$value['mobile'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("G".$i,$value['province'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("H".$i,$value['city'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("I".$i,$value['district'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("J".$i,$value['address'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("K".$i,$value['gnum'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("L".$i,$value['pweight'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("M".$i,$value['remark'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("N".$i,$statusStr,\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("O".$i,$value['customerName'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("P".$i,$value['smobile'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("Q".$i,$value['saddress'],\PHPExcel_Cell_DataType::TYPE_STRING)->setCellValueExplicit("R".$i,$value['createTime'],\PHPExcel_Cell_DataType::TYPE_STRING);}$zip->close();$objPHPExcel->getActiveSheet(0)->getStyle('A1:BB1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::VERTICAL_CENTER);$objPHPExcel->getActiveSheet(0)->getStyle('A1:BB1')->getFill()->setFillType(\PHPExcel_Style_Fill::FILL_SOLID);$objPHPExcel->getActiveSheet(0)->getStyle('A1:BB1')->getFill()->getStartColor()->setRGB('DCDCDC');$objActSheet = $objPHPExcel ->getActiveSheet(0);$objActSheet->getColumnDimension('A')->setWidth(10);$objActSheet->getColumnDimension('B')->setWidth(25);$objActSheet->getColumnDimension('C')->setWidth(25);$objActSheet->getColumnDimension('D')->setWidth(25);$objActSheet->getColumnDimension('E')->setWidth(25);$objActSheet->getColumnDimension('F')->setWidth(25);$objActSheet->getColumnDimension('G')->setWidth(25);$objActSheet->getColumnDimension('H')->setWidth(25);$objActSheet->getColumnDimension('I')->setWidth(25);$objActSheet->getColumnDimension('J')->setWidth(25);$objActSheet->getColumnDimension('K')->setWidth(25);$objActSheet->getColumnDimension('L')->setWidth(25);$objActSheet->getColumnDimension('M')->setWidth(25);$objActSheet->getColumnDimension('N')->setWidth(25);$objActSheet->getColumnDimension('O')->setWidth(25);$objActSheet->getColumnDimension('P')->setWidth(25);$objActSheet->getColumnDimension('Q')->setWidth(25);$objActSheet->getColumnDimension('R')->setWidth(25);
//            $objActSheet->getColumnDimension('S')->setWidth(60);$objActSheet->setTitle("订单清关");$filename=date('YmdHis').str_pad(rand(0, 999), 3, '0', STR_PAD_LEFT).'.csv';header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');header('Content-Disposition: attachment;filename="'.$filename.'.csv"');header('Cache-Control: max-age=0');$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel,"Excel2007");$objWriter->save($path.'/'.$filename);$path=request()->domain().'/public/download/'.date('Ymd').'/'.$filename;$paths=request()->domain().'/public/download/'.date('Ymd').'/'.$zipFile;//$path='http://www.localhost.com/Public/'.$filename;
//            errorMsg(200, 'success',$zipFile);$valArr=[['name'=>$zipFile,'url'=>$paths],['name'=>$filename,'url'=>$path]];
//            $valArr=[$paths,$path];errorMsg(200, 'success',$valArr);}catch (Exception $e){errorMsg(400, $e->getLine().'.'.$e->getMessage());}}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部