pengchanglu před 3 roky
rodič
revize
6efcdc2286

+ 23 - 3
application/admin/controller/Dashboard.php

@@ -104,20 +104,36 @@ class Dashboard extends Backend
             ];
 
 
-            //饼图
+            //饼图 7
             $pielist = Db::query('SELECT c.name,COUNT(*) AS num ,SUM(num) AS sums FROM `pi_p_order` AS o LEFT JOIN `pi_p_company` AS c ON o.`'.$pie_filed.'` = c.id  WHERE o.province_id = 1 AND o.createtime>='.$starttime.' AND o.`createtime`<'.$endtime.' GROUP BY o.`'.$pie_filed.'` ;');
 
             $piecolumn = [];
             $piedata = [];
             foreach ($pielist as $key => $value) {
-                $piecolumn[] = $value['name'];
+                $piecolumn[] = $value['name'].'('.$value['num'].'笔)';
                 //$piecolumn[] = $value['name'].':码个数'.$value['sums'].','.'订单数'.$value['num'];
                 $temp = [];
                 $temp['value'] = $value['sums'];
                 //$temp['name'] = $value['name'].':码个数'.$value['sums'].','.'订单数'.$value['num'];
-                $temp['name'] = $value['name'];
+                $temp['name'] = $value['name'].'('.$value['num'].'笔)';
                 $piedata[] = $temp;
             }
+
+            //饼图 30
+            $starttime30 = Date::unixtime('day', -29);
+            $pielist30 = Db::query('SELECT c.name,COUNT(*) AS num ,SUM(num) AS sums FROM `pi_p_order` AS o LEFT JOIN `pi_p_company` AS c ON o.`'.$pie_filed.'` = c.id  WHERE o.province_id = 1 AND o.createtime>='.$starttime30.' AND o.`createtime`<'.$endtime.' GROUP BY o.`'.$pie_filed.'` ;');
+
+            $piecolumn30 = [];
+            $piedata30 = [];
+            foreach ($pielist as $key => $value) {
+                $piecolumn30[] = $value['name'].'('.$value['num'].'笔)';
+                
+                $temp = [];
+                $temp['value'] = $value['sums'];
+                
+                $temp['name'] =  $value['name'].'('.$value['num'].'笔)';
+                $piedata30[] = $temp;
+            }
   /*          print_r($piecolumn);
             print_r($piedata);
             exit; */
@@ -127,6 +143,8 @@ class Dashboard extends Backend
             $orders['datalist'] = $datalist;
             $orders['piecolumn'] = $piecolumn;
             $orders['piedata'] = $piedata;
+            $orders['piecolumn30'] = $piecolumn30;
+            $orders['piedata30'] = $piedata30;
             Cache::set($key, $orders, 300);
         }
 
@@ -136,6 +154,8 @@ class Dashboard extends Backend
         $this->assignconfig('orderlistdata', array_values($orders['orderlist']));
         $this->assignconfig('piecolumn', $orders['piecolumn']);
         $this->assignconfig('piedata', $orders['piedata']);
+        $this->assignconfig('piecolumn30', $orders['piecolumn30']);
+        $this->assignconfig('piedata30', $orders['piedata30']);
 
         $this->assign('isadmin', $this->auth->id == 1);
 

+ 29 - 22
application/admin/view/dashboard/index.html

@@ -160,15 +160,16 @@
     }
 </style>
 <div class="panel panel-default panel-intro">
-    <div class="panel-heading">
+    <!--<div class="panel-heading">
         {:build_heading(null, false)}
         <ul class="nav nav-tabs">
             <li class="active"><a href="#one" data-toggle="tab">{:__('Dashboard')}</a></li>
-        <!--
+        
             <li><a href="#two" data-toggle="tab">{:__('Custom')}</a></li>
-        -->
+       
         </ul>
     </div>
+     -->
     <div class="panel-body">
         <div id="myTabContent" class="tab-content">
             <div class="tab-pane fade active in" id="one">
@@ -217,25 +218,7 @@
                 </div>
 
                 <div class="row">
-<div class="col-lg-8  connectedSortable">
-                    <div class="nav-tabs-custom charts-custom">
-            <!-- Tabs within a box -->
-            <ul class="nav nav-tabs pull-right">
-                <li class="active"><a href="#pie-chart" data-toggle="tab">今天</a></li>
-                <li><a href="#bar-chart" data-toggle="tab">七天</a></li>
-                <li class="pull-left header"><i class="fa fa-inbox"></i> 访问记录</li>
-            </ul>
-            <div class="tab-content no-padding">
-                <!-- Morris chart - Sales -->
-                <div class="chart tab-pane active" id="pie-chart" style="position: relative; height: 300px;"></div>
-                <div class="chart tab-pane" id="bar-chart" style="position: relative; height: 300px;"></div>
-            </div>
-        </div>
-</div>
-                    <div class="col-lg-8">
-                        <div id="echart" class="btn-refresh" style="height:300px;width:100%;"></div>
-                    </div>
-                    <div class="col-lg-4">
+                       <div class="col-lg-4">
                         <div class="card sameheight-item stats">
                             <div class="card-block">
                                 <div class="row row-sm stats-container">
@@ -303,6 +286,30 @@
                             </div>
                         </div>
                     </div>
+                    <div class="col-lg-8">
+                        <div class="box-header">
+                                <i class="fa fa-calendar"></i>
+                                <h3 class="box-title">近7天订单统计</h3>
+                                <div class="box-tools pull-right"></div>
+                        </div>
+                        <div id="pie-chart-7" class="btn-refresh" style="height:300px;width:100%;"></div>
+                    </div>
+                    <div class="col-lg-8">
+                        <div class="box-header">
+                                <i class="fa fa-calendar-check-o"></i>
+                                <h3 class="box-title">近30天订单统计</h3>
+                                <div class="box-tools pull-right"></div>
+                        </div>
+                        <div id="pie-chart-30" class="btn-refresh" style="height:300px;width:100%;"></div>
+                    </div>
+                    <div class="col-lg-8">
+                        <div class="box-header">
+                                <i class="fa fa-bar-chart"></i>
+                                <h3 class="box-title">溯源码订单趋势</h3>
+                                <div class="box-tools pull-right"></div>
+                        </div>
+                        <div id="echart" class="btn-refresh" style="height:300px;width:100%;"></div>
+                    </div>
                 </div>
 {if condition="($isadmin)"}
                 <div class="row" style="margin-top:15px;" id="statistics">

+ 41 - 26
public/assets/js/backend/dashboard.js

@@ -76,36 +76,51 @@ define(['jquery', 'bootstrap', 'backend', 'addtabs', 'table', 'echarts', 'echart
 
             // 使用刚指定的配置项和数据显示图表。
             myChart.setOption(option);
-            //饼图
-         
-            var barChart = Echarts.init(document.getElementById('bar-chart'), 'walden');
-            option = {
-                legend: {},
-                tooltip: {},
-                dataset: {
-                    source: [
-                        ['产品销售', '2015', '2016', '2017'],
-                        ['风扇', 43.3, 85.8, 93.7],
-                        ['电视机', 83.1, 73.4, 55.1],
-                        ['空调', 86.4, 65.2, 82.5],
-                        ['冰箱', 72.4, 53.9, 39.1]
-                    ]
+            //饼图 7
+            var pieChart = Echarts.init(document.getElementById('pie-chart-7'), 'walden');
+            var option = {
+                tooltip: {
+                    trigger: 'item',
+                    formatter: '{a} <br/>{b}: {c} ({d}%)'
+                },
+                legend: {
+                    orient: 'vertical',
+                    left: 10,
+                    data: Config.piecolumn,
                 },
-                xAxis: {type: 'category'},
-                yAxis: {},
-                // Declare several bar series, each will be mapped
-                // to a column of dataset.source by default.
                 series: [
-                    {type: 'bar'},
-                    {type: 'bar'},
-                    {type: 'bar'}
+                    {
+                        name: '码流通统计',
+                        type: 'pie',
+                        radius: ['50%', '70%'],
+                        avoidLabelOverlap: false,
+                        label: {
+                            normal: {
+                                show: false,
+                                position: 'center'
+                            },
+                            emphasis: {
+                                show: true,
+                                textStyle: {
+                                    fontSize: '30',
+                                    fontWeight: 'bold'
+                                }
+                            }
+                        },
+                        labelLine: {
+                            normal: {
+                                show: false
+                            }
+                        },
+                        data: Config.piedata,
+                    }
                 ]
             };
             // 使用刚指定的配置项和数据显示图表。
-            barChart.setOption(option);
+            pieChart.setOption(option);
 
-            //饼图
-            var pieChart = Echarts.init(document.getElementById('pie-chart'), 'walden');
+            //饼图 30
+            var pieChart = Echarts.init(document.getElementById('pie-chart-30'), 'walden');
             var option = {
                 tooltip: {
                     trigger: 'item',
@@ -114,7 +129,7 @@ define(['jquery', 'bootstrap', 'backend', 'addtabs', 'table', 'echarts', 'echart
                 legend: {
                     orient: 'vertical',
                     left: 10,
-                    data: Config.piecolumn,
+                    data: Config.piecolumn30,
                 },
                 series: [
                     {
@@ -140,7 +155,7 @@ define(['jquery', 'bootstrap', 'backend', 'addtabs', 'table', 'echarts', 'echart
                                 show: false
                             }
                         },
-                        data: Config.piedata,
+                        data: Config.piedata30,
                     }
                 ]
             };