north 8 年之前
父節點
當前提交
d70c6b574e
共有 2 個文件被更改,包括 474 次插入0 次删除
  1. 35 0
      www/protected/components/CommonFn.php
  2. 439 0
      www/protected/controllers/ROrderController.php

+ 35 - 0
www/protected/components/CommonFn.php

@@ -1196,4 +1196,39 @@ class CommonFn
         return false;
     }
 
+
+    public static function browser_export($type, $filename){
+    if($type == "Excel5"){
+        header('Content-Type: application/vnd.ms-excel'); //excel2003
+    }else{
+        header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); //excel2007
+    }
+    header('Content-Disposition: attachment;filename="'.$filename.'"');
+    header('Cache-Control: max-age=0');
+}
+
+    //解决Excel2007不能导出
+    public static function SaveViaTempFile($objWriter){
+        $filePath = dirname(__FILE__) . rand(0, getrandmax()) . rand(0, getrandmax()) . ".tmp";
+        $objWriter->save($filePath);
+        readfile($filePath);
+        unlink($filePath);
+    }
+
+    public static function  getExcelCeilIndex($row, $col) {
+        if($row > 0 && $col > 0 )
+        {
+            $str ="ZABCDEFGHIGKLMNOPQRSTUVWXY";
+            $col_str ="";
+            do
+            {
+                $col_tmp = $col % 26;
+                $col = $col_tmp == 0 ? intval($col / 26) - 1 : intval($col / 26);
+                $col_str = $str[$col_tmp].$col_str;
+            }while( $col );
+            return $col_str.'$'.$row;
+        }
+        return false;
+    }
+
 }

+ 439 - 0
www/protected/controllers/ROrderController.php

@@ -1129,6 +1129,445 @@ class ROrderController extends AdminController{
     }
 
 
+    /**
+     * 根据服务类型导出一个月的订单折线图
+     *
+     */
+    public function actionExportLineChartForOneMonth()
+    {
+        Yii::$enableIncludePath = false;
+        Yii::import('application.extensions.PHPExcel.PHPExcel', 1);
+        $objPHPExcel = new PHPExcel();
+        $objSheet = $objPHPExcel->getActiveSheet();
+        $criteria = new EMongoCriteria();
+        $criteria->status('==',1);
+        $product = Product::model()->parse(CommonFn::getRowsFromCursor(Product::model()->findAll($criteria)));
+        $data = array();
+        $data[0][0] = '';
+        $days = date("t",mktime(0,0,0,date('m')-1,1,date('Y')));//获取上一个月总天数
+        foreach ($product as $key => $value){
+            $data[0][$key+1] = $value['type_str'];
+            /**
+             * 根据获取的产品类型,进行分类,将每一天相同服务类型的总订单存储到数组中,
+             */
+            for($i=1;$i<=$days;$i++){
+                $order_criteria = new EMongoCriteria();
+                $order_criteria->type('==',$value['type']);
+                $start_time = mktime(0,0,0,date('m')-1,$i,date('Y'));
+                $end_time = mktime(23,59,59,date('m')-1,$i,date('Y'));
+                $order_criteria->booking_time('>=',$start_time);
+                $order_criteria->booking_time('<=',$end_time);
+                $orders = ROrder::model()->findAll($order_criteria);
+                $data[$i][0] = date('m-d',$start_time);
+                //$data[$i][$key+1] = count($orders) == 0?1:count($orders)+1;
+                $data[$i][$key+1] = count($orders) == 0?'0':count($orders);
+            }
+
+
+        }
+
+        $objSheet->fromArray($data);
+
+        //图表
+        $labels = array(
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$B$1',null,1),//1
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$C$1',null,1),//2
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$D$1',null,1),//3
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$E$1',null,1),//4
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$F$1',null,1),//5
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$G$1',null,1),//6
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$H$1',null,1),//7
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$I$1',null,1),//8
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$J$1',null,1),//9
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$K$1',null,1),//10
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$L$1',null,1),//11
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$M$1',null,1),//12
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$N$1',null,1),//13
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$O$1',null,1),//14
+        );
+        $xLabels = array(
+            new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$A$2:$A$'.($days+1),null,14),//取x轴刻度
+        );
+        $datas = array(
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$B$2:$B$'.($days+1),null,14),//1
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$C$2:$C$'.($days+1),null,14),//2
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$D$2:$D$'.($days+1),null,14),//3
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$E$2:$E$'.($days+1),null,14),//4
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$F$2:$F$'.($days+1),null,14),//5
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$G$2:$G$'.($days+1),null,14),//6
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$H$2:$H$'.($days+1),null,14),//7
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$I$2:$I$'.($days+1),null,14),//8
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$J$2:$J$'.($days+1),null,14),//9
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$K$2:$K$'.($days+1),null,14),//10
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$L$2:$L$'.($days+1),null,14),//11
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$M$2:$M$'.($days+1),null,14),//12
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$N$2:$N$'.($days+1),null,14),//13
+            new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$O$2:$O$'.($days+1),null,14),//14
+        );
+
+        $series = array(
+            new PHPExcel_Chart_DataSeries(
+                PHPExcel_Chart_DataSeries::TYPE_LINECHART,
+                PHPExcel_Chart_DataSeries::GROUPING_STANDARD,
+                range(0, count($datas)-1),
+                $labels,
+                $xLabels,
+                $datas
+            )
+        ); //图表框架
+
+        $layout=new PHPExcel_Chart_Layout();
+        $layout->setShowVal(true);
+        $areas = new PHPExcel_Chart_PlotArea(null,$series);
+        $legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_BOTTOM,$layout,false);
+        $title = new PHPExcel_Chart_Title("订单数角度对比(月)折线图");
+        $ytitle = new PHPExcel_Chart_Title("订单数");
+        $chart = new PHPExcel_Chart('line_chart',$title,$legend,$areas,true,false,null,$ytitle);
+        $chart->setTopLeftPosition("A1")->setBottomRightPosition("P31"); //图表位置
+
+        $objSheet->addChart($chart);
+
+
+        $excel = 'Excel2007';
+        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,$excel);
+        $objWriter->setIncludeCharts(true); //图表必须
+        // $objWriter->save($dir.'/export.xls'); //生成excel文件
+        CommonFn::browser_export($excel,date('m')."月份订单数角度对比(月)折线图.xlsx"); //浏览器输出
+
+        CommonFn::SaveViaTempFile($objWriter);
+
+    }
+
+    /**
+     * 根据服务类型导出一个周/月的订单柱形图 同比
+     *
+     */
+    public function actionExportColumChartForOneMonth()
+    {
+        Yii::$enableIncludePath = false;
+        Yii::import('application.extensions.PHPExcel.PHPExcel', 1);
+        $week = Yii::app()->request->getParam('week','');
+        $objPHPExcel = new PHPExcel();
+        $objSheet = $objPHPExcel->getActiveSheet();
+        $criteria = new EMongoCriteria();
+        $criteria->status('==',1);
+        $product = Product::model()->parse(CommonFn::getRowsFromCursor(Product::model()->findAll($criteria)));
+        $data = array();
+        $data[0][0] = '';
+        if($week){
+            foreach ($product as $key => $value) {
+                $data[0][$key + 1] = $value['type_str'];
+                /**
+                 * 根据获取的产品类型,进行分类,将每一天相同服务类型的总订单存储到数组中,
+                 */
+                for ($i = 1; $i <= 7; $i++) {
+                    $order_criteria = new EMongoCriteria();
+                    $order_criteria->type('==', $value['type']);
+                    $start_time = mktime(0, 0, 0, date('m'), date('d')-$i, date('Y'));
+                    $end_time = mktime(23, 59, 59, date('m'), date('d')-$i, date('Y'));
+                    $order_criteria->booking_time('>=', $start_time);
+                    $order_criteria->booking_time('<=', $end_time);
+                    $orders = ROrder::model()->findAll($order_criteria);
+                    $data[$i][0] = date('m-d', $start_time);
+                    //$data[$i][$key+1] = count($orders) == 0?1:count($orders)+1;
+                    $data[$i][$key + 1] = count($orders) == 0 ? '0' : count($orders);
+                }
+            }
+        } else {
+            $days = date("t",mktime(0,0,0,date('m')-1,1,date('Y')));//获取上一个月总天数
+            foreach ($product as $key => $value){
+                $data[0][$key+1] = $value['type_str'];
+                /**
+                 * 根据获取的产品类型,进行分类,将每一天相同服务类型的总订单存储到数组中,
+                 */
+                for($i=1;$i<=$days;$i++){
+                    $order_criteria = new EMongoCriteria();
+                    $order_criteria->type('==',$value['type']);
+                    $start_time = mktime(0,0,0,date('m')-1,$i,date('Y'));
+                    $end_time = mktime(23,59,59,date('m')-1,$i,date('Y'));
+                    $order_criteria->booking_time('>=',$start_time);
+                    $order_criteria->booking_time('<=',$end_time);
+                    $orders = ROrder::model()->findAll($order_criteria);
+                    $data[$i][0] = date('m-d',$start_time);
+                    //$data[$i][$key+1] = count($orders) == 0?1:count($orders)+1;
+                    $data[$i][$key+1] = count($orders) == 0?'0':count($orders);
+                }
+
+            }
+        }
+
+
+        $objSheet->fromArray($data);
+
+        //图表
+        if($week){
+            $labels = array(
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$B$1',null,1),//1
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$C$1',null,1),//2
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$D$1',null,1),//3
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$E$1',null,1),//4
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$F$1',null,1),//5
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$G$1',null,1),//6
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$H$1',null,1),//7
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$I$1',null,1),//8
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$J$1',null,1),//9
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$K$1',null,1),//10
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$L$1',null,1),//11
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$M$1',null,1),//12
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$N$1',null,1),//13
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$O$1',null,1),//14
+            );
+            $xLabels = array(
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$A$2:$A$8',null,7),//取x轴刻度
+            );
+            $datas = array(
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$B$2:$B$8',null,7),//1
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$C$2:$C$8',null,7),//2
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$D$2:$D$8',null,7),//3
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$E$2:$E$8',null,7),//4
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$F$2:$F$8',null,7),//5
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$G$2:$G$8',null,7),//6
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$H$2:$H$8',null,7),//7
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$I$2:$I$8',null,7),//8
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$J$2:$J$8',null,7),//9
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$K$2:$K$8',null,7),//10
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$L$2:$L$8',null,7),//11
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$M$2:$M$8',null,7),//12
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$N$2:$N$8',null,7),//13
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$O$2:$O$8',null,7),//14
+            );
+            $name = '"同比数据分析(周)柱形图.xlsx"';
+        } else {
+            $labels = array(
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$B$1',null,1),//1
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$C$1',null,1),//2
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$D$1',null,1),//3
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$E$1',null,1),//4
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$F$1',null,1),//5
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$G$1',null,1),//6
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$H$1',null,1),//7
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$I$1',null,1),//8
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$J$1',null,1),//9
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$K$1',null,1),//10
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$L$1',null,1),//11
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$M$1',null,1),//12
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$N$1',null,1),//13
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$O$1',null,1),//14
+            );
+            $xLabels = array(
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$A$2:$A$'.($days+1),null,14),//取x轴刻度
+            );
+            $datas = array(
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$B$2:$B$'.($days+1),null,14),//1
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$C$2:$C$'.($days+1),null,14),//2
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$D$2:$D$'.($days+1),null,14),//3
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$E$2:$E$'.($days+1),null,14),//4
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$F$2:$F$'.($days+1),null,14),//5
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$G$2:$G$'.($days+1),null,14),//6
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$H$2:$H$'.($days+1),null,14),//7
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$I$2:$I$'.($days+1),null,14),//8
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$J$2:$J$'.($days+1),null,14),//9
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$K$2:$K$'.($days+1),null,14),//10
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$L$2:$L$'.($days+1),null,14),//11
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$M$2:$M$'.($days+1),null,14),//12
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$N$2:$N$'.($days+1),null,14),//13
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$O$2:$O$'.($days+1),null,14),//14
+            );
+            $name = '"同比数据分析(月)柱形图.xlsx"';
+        }
+
+
+        $series = array(
+            new PHPExcel_Chart_DataSeries(
+                PHPExcel_Chart_DataSeries::TYPE_BARCHART,
+                PHPExcel_Chart_DataSeries::GROUPING_STANDARD,
+                range(0, count($datas)-1),
+                $labels,
+                $xLabels,
+                $datas
+            )
+        ); //图表框架
+
+        $layout=new PHPExcel_Chart_Layout();
+        $layout->setShowVal(true);
+        $areas = new PHPExcel_Chart_PlotArea(null,$series);
+        $legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT,$layout,false);
+        $title = new PHPExcel_Chart_Title("同比数据分析");
+        $ytitle = new PHPExcel_Chart_Title("订单数");
+        $chart = new PHPExcel_Chart('line_chart',$title,$legend,$areas,true,false,null,$ytitle);
+        $chart->setTopLeftPosition("A1")->setBottomRightPosition("P31"); //图表位置
+
+        $objSheet->addChart($chart);
+
+
+        $excel = 'Excel2007';
+        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,$excel);
+        $objWriter->setIncludeCharts(true); //图表必须
+        // $objWriter->save($dir.'/export.xls'); //生成excel文件
+        CommonFn::browser_export($excel,date('m').$name); //浏览器输出
+
+        CommonFn::SaveViaTempFile($objWriter);
+
+    }
+
+    /**
+     * 根据支付方式导出一个周/月的订单柱形图
+     */
+    public function actionExportColumChartForOneMonthByChannel()
+    {
+        Yii::$enableIncludePath = false;
+        Yii::import('application.extensions.PHPExcel.PHPExcel', 1);
+        $week = Yii::app()->request->getParam('week','');
+        $objPHPExcel = new PHPExcel();
+        $objSheet = $objPHPExcel->getActiveSheet();
+        $criteria = new EMongoCriteria();
+        $channel = ROrder::$channel_option;
+        $data = array();
+        $data[0][0] = '';
+        $k =1;
+        if($week){
+            foreach ($channel as $key => $value) {
+
+                $data[0][$k] = $value['name'];
+                /**
+                 * 根据获取的产品类型,进行分类,将每一天相同服务类型的总订单存储到数组中,
+                 */
+                for ($i = 1; $i <= 7; $i++) {
+                    $order_criteria = new EMongoCriteria();
+                    $order_criteria->channel('==',$key);
+                    $start_time = mktime(0, 0, 0, date('m'), date('d')-$i, date('Y'));
+                    $end_time = mktime(23, 59, 59, date('m'), date('d')-$i, date('Y'));
+                    $order_criteria->booking_time('>=', $start_time);
+                    $order_criteria->booking_time('<=', $end_time);
+                    $orders = ROrder::model()->findAll($order_criteria);
+                    $data[$i][0] = date('m-d', $start_time);
+                    //$data[$i][$key+1] = count($orders) == 0?1:count($orders)+1;
+                    $data[$i][$k] = count($orders) == 0 ? '0' : count($orders);
+                }
+                $k ++;
+            }
+        } else {
+            $days = date("t",mktime(0,0,0,date('m')-1,1,date('Y')));//获取上一个月总天数
+            foreach ($channel as $key => $value){
+                $data[0][$k] = $value['name'];
+                /**
+                 * 根据获取的支付类型,进行分类,将每一天相同服务类型的总订单存储到数组中,
+                 */
+                for($i=1;$i<=$days;$i++){
+                    $order_criteria = new EMongoCriteria();
+                    $order_criteria->channel('==',$key);
+                    $start_time = mktime(0,0,0,date('m')-1,$i,date('Y'));
+                    $end_time = mktime(23,59,59,date('m')-1,$i,date('Y'));
+                    $order_criteria->booking_time('>=',$start_time);
+                    $order_criteria->booking_time('<=',$end_time);
+                    $orders = ROrder::model()->findAll($order_criteria);
+                    $data[$i][0] = date('m-d',$start_time);
+                    //$data[$i][$key+1] = count($orders) == 0?1:count($orders)+1;
+                    $data[$i][$k] = count($orders) == 0?'0':count($orders);
+                }
+                $k++;
+
+            }
+        }
+
+
+        $objSheet->fromArray($data);
+
+        //图表
+        if($week){
+            $labels = array(
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$B$1',null,1),//1
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$C$1',null,1),//2
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$D$1',null,1),//3
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$E$1',null,1),//4
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$F$1',null,1),//5
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$G$1',null,1),//6
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$H$1',null,1),//7
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$I$1',null,1),//8
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$J$1',null,1),//9
+            );
+            $xLabels = array(
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$A$2:$A$8',null,9),//取x轴刻度
+            );
+            $datas = array(
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$B$2:$B$8',null,9),//1
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$C$2:$C$8',null,9),//2
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$D$2:$D$8',null,9),//3
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$E$2:$E$8',null,9),//4
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$F$2:$F$8',null,9),//5
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$G$2:$G$8',null,9),//6
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$H$2:$H$8',null,9),//7
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$I$2:$I$8',null,9),//8
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$J$2:$J$8',null,9),//9
+            );
+            $name = "支付方式分析(周)柱形图.xlsx";
+        } else {
+            $labels = array(
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$B$1',null,1),//1
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$C$1',null,1),//2
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$D$1',null,1),//3
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$E$1',null,1),//4
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$F$1',null,1),//5
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$G$1',null,1),//6
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$H$1',null,1),//7
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$I$1',null,1),//8
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$J$1',null,1),//9
+            );
+            $xLabels = array(
+                new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$A$2:$A$'.($days+1),null,9),//取x轴刻度
+            );
+            $datas = array(
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$B$2:$B$'.($days+1),null,9),//1
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$C$2:$C$'.($days+1),null,9),//2
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$D$2:$D$'.($days+1),null,9),//3
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$E$2:$E$'.($days+1),null,9),//4
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$F$2:$F$'.($days+1),null,9),//5
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$G$2:$G$'.($days+1),null,9),//6
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$H$2:$H$'.($days+1),null,9),//7
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$I$2:$I$'.($days+1),null,9),//8
+                new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$J$2:$J$'.($days+1),null,9),//9
+            );
+            $name = "支付方式分析(月)柱形图.xlsx";
+        }
+
+
+        $series = array(
+            new PHPExcel_Chart_DataSeries(
+                PHPExcel_Chart_DataSeries::TYPE_BARCHART,
+                PHPExcel_Chart_DataSeries::GROUPING_STANDARD,
+                range(0, count($datas)-1),
+                $labels,
+                $xLabels,
+                $datas
+            )
+        ); //图表框架
+
+        $layout=new PHPExcel_Chart_Layout();
+        $layout->setShowVal(true);
+        $areas = new PHPExcel_Chart_PlotArea(null,$series);
+        $legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT,$layout,false);
+        $title = new PHPExcel_Chart_Title("支付方式分析");
+        $ytitle = new PHPExcel_Chart_Title("订单数");
+        $chart = new PHPExcel_Chart('line_chart',$title,$legend,$areas,true,false,null,$ytitle);
+        $chart->setTopLeftPosition("A1")->setBottomRightPosition("P31"); //图表位置
+
+        $objSheet->addChart($chart);
+
+
+        $excel = 'Excel2007';
+        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,$excel);
+        $objWriter->setIncludeCharts(true); //图表必须
+        // $objWriter->save($dir.'/export.xls'); //生成excel文件
+
+        CommonFn::browser_export($excel,date('m').$name); //浏览器输出
+
+        CommonFn::SaveViaTempFile($objWriter);
+
+    }
+
+
+
+