コード例 #1
0
ファイル: owBoxManage.view.php プロジェクト: ohjack/newErp
 /**
  * 导出料号与箱号关联报表
  */
 public function view_exportBoxInfo()
 {
     require_once WEB_PATH . 'lib/PHPExcel.php';
     $objPHPExcel = new PHPExcel();
     $objPHPExcel->getProperties()->setCreator("Maarten Balliauw")->setLastModifiedBy("Maarten Balliauw")->setTitle("Office 2007 XLSX Test Document")->setSubject("Office 2007 XLSX Test Document")->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")->setKeywords("office 2007 openxml php")->setCategory("Test result file");
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', '备货单号Shipment ID');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('B1', '箱号CTN NO.');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('C1', '料号SKU');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('D1', '每箱个数');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('E1', '优先上架Priority for Putaway');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('F1', '纸箱长度L(cm)');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('G1', '纸箱宽度W(cm)');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('H1', '纸箱高度H(cm)');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('I1', '体积CBM');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('J1', '每箱净重N.W(kg)');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('K1', '每箱毛重G.W(kg)');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('L1', '中文描述Goods Desc(CN)');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('M1', '英文描述 Goods Desc');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('N1', '材质Material');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('O1', '单价U/P(RMB)');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('P1', '总价TTL(RMB)');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('Q1', '单价U/P(USD)');
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('R1', '总价TTL(USD)');
     $serOrderSn = isset($_GET['orderSn']) ? $_GET['orderSn'] : '';
     $serStatus = isset($_GET['status']) ? $_GET['status'] : '';
     $serSku = isset($_GET['sku']) ? $_GET['sku'] : '';
     $serStartTime = isset($_GET['startTime']) ? $_GET['startTime'] : '';
     $serEndTime = isset($_GET['endTime']) ? $_GET['endTime'] : '';
     $condition = '';
     if (!empty($serOrderSn)) {
         $condition .= " AND a.replenshId = '{$serOrderSn}'";
     }
     if (!empty($serSku)) {
         $condition .= " AND b.sku = '{$serSku}'";
     }
     if (!empty($serStatus)) {
         $condition .= " AND a.status = '{$serStatus}'";
     }
     if (!empty($serStartTime) && $serEndTime >= $serStartTime) {
         $serstart = strpos($serStartTime, ':') !== false ? strtotime($serStartTime) : strtotime($serStartTime . " 00:00:00");
         $serend = strpos($serEndTime, ':') !== false ? strtotime($serEndTime) : strtotime($serEndTime . " 23:59:59");
         $condition .= " AND a.addtime BETWEEN '{$serstart}' AND '{$serend}'";
     }
     $boxModel = new BoxManageModel();
     $rtnData = $boxModel->getListBoxInfo($condition);
     if (!empty($rtnData)) {
         $row = 2;
         foreach ($rtnData as $k => $v) {
             $orderSn = $v['replenshId'];
             $boxId = $v['boxid'];
             $length = $v['length'];
             $width = $v['width'];
             $high = $v['high'];
             $volume = round($v['volume'] / 1000000, 3);
             $grossWeight = $v['grossWeight'];
             $netWeight = $v['netWeight'];
             $addtime = date('Y-m-d', $v['addtime']);
             $status = $v['status'];
             $userName = getUserNameById($v['adduser']);
             $sku = $v['sku'];
             $num = $v['num'];
             $skuBase = $boxModel->getSkuBaseInfo($sku);
             $skuName = $skuBase['goodsName'];
             $skuPrice = $skuBase['goodsCost'];
             $totalRmb = $skuPrice * $num;
             switch ($status) {
                 case '1':
                     $stu = '已配货';
                     break;
                 case '2':
                     $stu = '已复核';
                     break;
                 case '3':
                     $stu = '已装柜';
                     break;
                 case '4':
                     $stu = '海外已收货';
                     break;
                 default:
                     $stu = '';
                     break;
             }
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A' . $row, $orderSn);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('B' . $row, $boxId);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('C' . $row, $sku);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('D' . $row, $num);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('E' . $row, '');
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('F' . $row, $length);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('G' . $row, $width);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('H' . $row, $high);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('I' . $row, $volume);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('J' . $row, $netWeight);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('K' . $row, $grossWeight);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('L' . $row, $skuName);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('M' . $row, '');
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('O' . $row, $skuPrice);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('P' . $row, $totalRmb);
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('Q' . $row, '');
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue('R' . $row, '');
             $row++;
         }
     }
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('A')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('B')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('C')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('D')->setWidth(10);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('E')->setWidth(30);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('F')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('G')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('H')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('I')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('J')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('K')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('L')->setWidth(30);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('M')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('N')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('O')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('P')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('Q')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('R')->setWidth(20);
     $title = "装柜清单" . date('Y-m-d');
     $titlename = $title . ".xls";
     $objPHPExcel->getActiveSheet()->setTitle($title);
     $objPHPExcel->setActiveSheetIndex(0);
     header('Content-Type: application/vnd.ms-excel');
     header("Content-Disposition: attachment;filename={$titlename}");
     header('Cache-Control: max-age=0');
     $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
     $objWriter->save('php://output');
 }