|
|
@@ -597,8 +597,91 @@ class PurchaseOrderController extends BaseController
|
|
|
}
|
|
|
ini_set('memory_limit', '2045M');
|
|
|
set_time_limit(0);
|
|
|
- PurchaseOrderClass::exportDueList($list, $mainId);
|
|
|
- util::stop();
|
|
|
+
|
|
|
+
|
|
|
+ $objPHPExcel = new \PHPExcel();
|
|
|
+
|
|
|
+ $objPHPExcel->getProperties()->setCreator("Maarten Balliauw")
|
|
|
+ ->setLastModifiedBy("Maarten Balliauw")
|
|
|
+ ->setTitle("Office 2007 XLSX Document")
|
|
|
+ ->setSubject("Office 2007 XLSX Document")
|
|
|
+ ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
|
|
|
+ ->setKeywords("office 2007 openxml php")
|
|
|
+ ->setCategory("file");
|
|
|
+
|
|
|
+ $ghsTitle = '供货商';
|
|
|
+ $objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader(date('n月j日') . " " . $ghsTitle);
|
|
|
+
|
|
|
+ $objPHPExcel->getActiveSheet()->getPageMargins()->setTop(0.7);
|
|
|
+ $objPHPExcel->getActiveSheet()->getPageMargins()->setBottom(0.1);
|
|
|
+ $objPHPExcel->getActiveSheet()->getPageMargins()->setLeft(0.5);
|
|
|
+ $objPHPExcel->getActiveSheet()->getPageMargins()->setRight(0);
|
|
|
+ $objPHPExcel->getActiveSheet()->getPageMargins()->setHeader(0.1);
|
|
|
+ $objPHPExcel->getActiveSheet()->getPageMargins()->setFooter(0);
|
|
|
+
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('A1', 'ID');
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('B1', '客户');
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('C1', '手机号');
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('D1', '待结金额');
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('E1', '最近下单');
|
|
|
+
|
|
|
+ //设置宽度
|
|
|
+ $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(25);
|
|
|
+ $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20);
|
|
|
+ $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(15);
|
|
|
+ $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(30);
|
|
|
+ //加粗
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(9)->setBold(true);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(9)->setBold(true);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('C1')->getFont()->setSize(9)->setBold(true);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('D1')->getFont()->setSize(9)->setBold(true);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->setSize(9)->setBold(true);
|
|
|
+
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('B1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('C1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('D1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('E1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+
|
|
|
+ $baseRow = 2;
|
|
|
+ $list =[['id'=>1,'name'=>'shish','mobile'=>'15280215347','remainDebtAmount'=>12,'recentExpend'=>'wee']];
|
|
|
+ foreach ($list as $key => $custom) {
|
|
|
+ $i = $baseRow + $key;
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $custom['id']);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, $custom['name']);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, $custom['mobile'], \PHPExcel_Cell_DataType::TYPE_STRING);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('D' . $i, $custom['remainDebtAmount']);
|
|
|
+ if ($custom['recentExpend'] == '0000-00-00 00:00:00') {
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('E' . $i, '没有下过单');
|
|
|
+ } else {
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('E' . $i, $custom['recentExpend']);
|
|
|
+ }
|
|
|
+ //居左
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('A' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('B' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('C' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('D' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+ $objPHPExcel->getActiveSheet()->getStyle('E' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
|
|
|
+ }
|
|
|
+ $fileName = '客户-' . date("m-d");
|
|
|
+ $objPHPExcel->getActiveSheet()->setTitle($fileName);
|
|
|
+ $objPHPExcel->setActiveSheetIndex(0);
|
|
|
+ $dir = './priceTable/' . $mainId;
|
|
|
+ if (file_exists($dir) == false) {
|
|
|
+ mkdir($dir, 0777, true);
|
|
|
+ }
|
|
|
+ $date = $fileName;
|
|
|
+ $file = $date . '.xls';
|
|
|
+ $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
|
|
|
+ if (file_exists($dir . '/' . $file)) {
|
|
|
+ unlink($dir . '/' . $file);
|
|
|
+ }
|
|
|
+ $objWriter->save($dir . '/' . $file);
|
|
|
+ $fileUrl = Yii::$app->params['ghsHost'] . '/priceTable/' . $mainId . '/' . $file;
|
|
|
+ util::success(['file' => $fileUrl, 'shortFile' => $file]);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
util::success(['list' => $list, 'totalAmount' => $totalAmount]);
|
|
|
}
|