aiyou 4 gadi atpakaļ
vecāks
revīzija
bfb6bb3fc9

+ 49 - 12
application/admin/controller/Dashboard.php

@@ -2,8 +2,11 @@
 
 namespace app\admin\controller;
 
+use app\admin\model\order\StoreOrder;
+use app\admin\model\store\StoreProduct;
 use app\common\controller\Backend;
 use think\Config;
+use app\admin\model\Member;
 
 /**
  * 控制台
@@ -21,11 +24,23 @@ class Dashboard extends Backend
     {
         $seventtime = \fast\Date::unixtime('day', -7);
         $paylist = $createlist = [];
-        for ($i = 0; $i < 7; $i++)
+        for ($i = 0; $i <= 7; $i++)
         {
             $day = date("Y-m-d", $seventtime + ($i * 86400));
-            $createlist[$day] = mt_rand(20, 200);
-            $paylist[$day] = mt_rand(1, mt_rand(1, $createlist[$day]));
+
+            $where1['add_time'] = ['between', [strtotime($day.' 00:00:00'), strtotime($day.' 23:59:59')]];
+
+
+            $where1['status']=array('in',['1','2','3','0','9']);
+            $get_num_xiadan=StoreOrder::where($where1)->field('count(*) as num')->find();
+
+
+            $where1['status']=array('in',['1','2','3']);
+            $get_num_wancheng=StoreOrder::where($where1)->field('count(*) as num')->find();
+
+
+            $createlist[$day] = $get_num_xiadan['num'];
+            $paylist[$day] =$get_num_wancheng['num'];
         }
         $hooks = config('addons.hooks');
         $uploadmode = isset($hooks['upload_config_init']) && $hooks['upload_config_init'] ? implode(',', $hooks['upload_config_init']) : 'local';
@@ -33,21 +48,43 @@ class Dashboard extends Backend
         Config::parse($addonComposerCfg, "json", "composer");
         $config = Config::get("composer");
         $addonVersion = isset($config['version']) ? $config['version'] : __('Unknown');
+
+
+        $get_member_count=Member::field('count(*) as num')->find();
+
+        $order_where['status']=array('in',['3','4']);
+        $get_order_count=StoreOrder::where($order_where)->field('count(*) as num,sum(pay_price) as price')->find();
+
+        $where_member1['create_time']= ['between', [mktime(0,0,0,date('m'),date('d'),date('Y')), time()]];
+        $get_member_count=Member::where($where_member1)->field('count(*) as num')->find();
+
+
+        $where1['add_time'] = ['between', [mktime(0,0,0,date('m'),date('d'),date('Y')), time()]];
+        $where1['status']=array('in',['1','2','3']);
+        $get_order1=StoreOrder::where($where1)->field('count(*) as num')->find();
+
+        $where2['add_time'] = ['between', [mktime(0,0,0,date('m'),date('d'),date('Y')), time()]];
+        $where2['status']=array('in',['1']);
+        $get_order2=StoreOrder::where($where2)->field('count(*) as num')->find();
+
+
+        $get_store=StoreProduct::where('is_del','0')->where('is_show','1')->field('count(*) as num')->find();
         $this->view->assign([
-            'totaluser'        => 35200,
-            'totalviews'       => 219390,
-            'totalorder'       => 32143,
-            'totalorderamount' => 174800,
-            'todayuserlogin'   => 321,
-            'todayusersignup'  => 430,
-            'todayorder'       => 2324,
-            'unsettleorder'    => 132,
+            'totaluser'        => $get_member_count['num'],
+            'totalviews'       => '111',
+            'totalorder'       => $get_order_count['num'],
+            'totalorderamount' => $get_order_count['price'],
+//            'todayuserlogin'   => 430,
+            'todayusersignup'  => $get_member_count['num'],
+            'todayorder'       => $get_order1['num'],
+            'unsettleorder'    => $get_order2['num'],
             'sevendnu'         => '80%',
             'sevendau'         => '32%',
             'paylist'          => $paylist,
             'createlist'       => $createlist,
             'addonversion'       => $addonVersion,
-            'uploadmode'       => $uploadmode
+            'uploadmode'       => $uploadmode,
+            'product_num'       =>$get_store['num']
         ]);
 
         return $this->view->fetch();

+ 105 - 105
application/admin/view/dashboard/index.html

@@ -172,15 +172,15 @@
                             </div>
                         </div>
                     </div>
-                    <div class="col-sm-3 col-xs-6">
-                        <div class="sm-st clearfix">
-                            <span class="sm-st-icon st-violet"><i class="fa fa-book"></i></span>
-                            <div class="sm-st-info">
-                                <span>{$totalviews}</span>
-                                {:__('Total view')}
-                            </div>
-                        </div>
-                    </div>
+<!--                    <div class="col-sm-3 col-xs-6">-->
+<!--                        <div class="sm-st clearfix">-->
+<!--                            <span class="sm-st-icon st-violet"><i class="fa fa-book"></i></span>-->
+<!--                            <div class="sm-st-info">-->
+<!--                                <span>{$totalviews}</span>-->
+<!--                                {:__('Total view')}-->
+<!--                            </div>-->
+<!--                        </div>-->
+<!--                    </div>-->
                     <div class="col-sm-3 col-xs-6">
                         <div class="sm-st clearfix">
                             <span class="sm-st-icon st-blue"><i class="fa fa-shopping-bag"></i></span>
@@ -222,8 +222,8 @@
                                     <div class="col-xs-6 stat-col">
                                         <div class="stat-icon"><i class="fa fa-shopping-cart"></i></div>
                                         <div class="stat">
-                                            <div class="value"> {$todayuserlogin}</div>
-                                            <div class="name"> {:__('Today user login')}</div>
+                                            <div class="value">&nbsp;</div>
+                                            <div class="name">&nbsp;</div>
                                         </div>
                                         <div class="progress">
                                             <div class="progress-bar progress-bar-success" style="width: 25%"></div>
@@ -249,26 +249,26 @@
                                             <div class="progress-bar progress-bar-success" style="width: 25%"></div>
                                         </div>
                                     </div>
-                                    <div class="col-xs-6  stat-col">
-                                        <div class="stat-icon"><i class="fa fa-list-alt"></i></div>
-                                        <div class="stat">
-                                            <div class="value"> {$sevendnu}</div>
-                                            <div class="name"> {:__('Seven dnu')}</div>
-                                        </div>
-                                        <div class="progress">
-                                            <div class="progress-bar progress-bar-success" style="width: 25%"></div>
-                                        </div>
-                                    </div>
-                                    <div class="col-xs-6 stat-col">
-                                        <div class="stat-icon"><i class="fa fa-dollar"></i></div>
-                                        <div class="stat">
-                                            <div class="value"> {$sevendau}</div>
-                                            <div class="name"> {:__('Seven dau')}</div>
-                                        </div>
-                                        <div class="progress">
-                                            <div class="progress-bar progress-bar-success" style="width: 25%"></div>
-                                        </div>
-                                    </div>
+<!--                                    <div class="col-xs-6  stat-col">-->
+<!--                                        <div class="stat-icon"><i class="fa fa-list-alt"></i></div>-->
+<!--                                        <div class="stat">-->
+<!--                                            <div class="value"> {$sevendnu}</div>-->
+<!--                                            <div class="name"> {:__('Seven dnu')}</div>-->
+<!--                                        </div>-->
+<!--                                        <div class="progress">-->
+<!--                                            <div class="progress-bar progress-bar-success" style="width: 25%"></div>-->
+<!--                                        </div>-->
+<!--                                    </div>-->
+<!--                                    <div class="col-xs-6 stat-col">-->
+<!--                                        <div class="stat-icon"><i class="fa fa-dollar"></i></div>-->
+<!--                                        <div class="stat">-->
+<!--                                            <div class="value"> {$sevendau}</div>-->
+<!--                                            <div class="name"> {:__('Seven dau')}</div>-->
+<!--                                        </div>-->
+<!--                                        <div class="progress">-->
+<!--                                            <div class="progress-bar progress-bar-success" style="width: 25%"></div>-->
+<!--                                        </div>-->
+<!--                                    </div>-->
                                 </div>
                             </div>
                         </div>
@@ -284,86 +284,86 @@
                             <div class="panel-body">
                                 <div class="panel-title">
                                     <span class="label label-success pull-right">{:__('Real time')}</span>
-                                    <h5>{:__('Category count')}</h5>
+                                    <h5>商品数量</h5>
                                 </div>
                                 <div class="panel-content">
-                                    <h1 class="no-margins">1234</h1>
-                                    <div class="stat-percent font-bold text-gray"><i class="fa fa-commenting"></i> 1234</div>
-                                    <small>{:__('Category count tips')}</small>
-                                </div>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="col-xs-6 col-md-3">
-                        <div class="panel bg-aqua-gradient">
-                            <div class="panel-body">
-                                <div class="ibox-title">
-                                    <span class="label label-info pull-right">{:__('Real time')}</span>
-                                    <h5>{:__('Attachment count')}</h5>
-                                </div>
-                                <div class="ibox-content">
-                                    <h1 class="no-margins">1043</h1>
-                                    <div class="stat-percent font-bold text-gray"><i class="fa fa-modx"></i> 2592</div>
-                                    <small>{:__('Attachment count tips')}</small>
-                                </div>
-                            </div>
-                        </div>
-                    </div>
-
-                    <div class="col-xs-6 col-md-3">
-                        <div class="panel bg-purple-gradient">
-                            <div class="panel-body">
-                                <div class="ibox-title">
-                                    <span class="label label-primary pull-right">{:__('Real time')}</span>
-                                    <h5>{:__('Article count')}</h5>
-                                </div>
-                                <div class="ibox-content">
-
-                                    <div class="row">
-                                        <div class="col-md-6">
-                                            <h1 class="no-margins">1234</h1>
-                                            <div class="font-bold"><i class="fa fa-commenting"></i>
-                                                <small>{:__('Comment count')}</small>
-                                            </div>
-                                        </div>
-                                        <div class="col-md-6">
-                                            <h1 class="no-margins">6754</h1>
-                                            <div class="font-bold"><i class="fa fa-heart"></i>
-                                                <small>{:__('Like count')}</small>
-                                            </div>
-                                        </div>
-                                    </div>
-                                </div>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="col-xs-6 col-md-3">
-                        <div class="panel bg-green-gradient">
-                            <div class="panel-body">
-                                <div class="ibox-title">
-                                    <span class="label label-primary pull-right">{:__('Real time')}</span>
-                                    <h5>{:__('News count')}</h5>
-                                </div>
-                                <div class="ibox-content">
-
-                                    <div class="row">
-                                        <div class="col-md-6">
-                                            <h1 class="no-margins">5302</h1>
-                                            <div class="font-bold"><i class="fa fa-commenting"></i>
-                                                <small>{:__('Comment count')}</small>
-                                            </div>
-                                        </div>
-                                        <div class="col-md-6">
-                                            <h1 class="no-margins">8205</h1>
-                                            <div class="font-bold"><i class="fa fa-user"></i>
-                                                <small>{:__('Like count')}</small>
-                                            </div>
-                                        </div>
-                                    </div>
+                                    <h1 class="no-margins">{$product_num}</h1>
+                                    <div class="stat-percent font-bold text-gray"><i class="fa fa-commenting"></i> {$product_num}</div>
+                                    <small>当前在售商品总数</small>
                                 </div>
                             </div>
                         </div>
                     </div>
+<!--                    <div class="col-xs-6 col-md-3">-->
+<!--                        <div class="panel bg-aqua-gradient">-->
+<!--                            <div class="panel-body">-->
+<!--                                <div class="ibox-title">-->
+<!--                                    <span class="label label-info pull-right">{:__('Real time')}</span>-->
+<!--                                    <h5>{:__('Attachment count')}</h5>-->
+<!--                                </div>-->
+<!--                                <div class="ibox-content">-->
+<!--                                    <h1 class="no-margins">1043</h1>-->
+<!--                                    <div class="stat-percent font-bold text-gray"><i class="fa fa-modx"></i> 2592</div>-->
+<!--                                    <small>{:__('Attachment count tips')}</small>-->
+<!--                                </div>-->
+<!--                            </div>-->
+<!--                        </div>-->
+<!--                    </div>-->
+
+<!--                    <div class="col-xs-6 col-md-3">-->
+<!--                        <div class="panel bg-purple-gradient">-->
+<!--                            <div class="panel-body">-->
+<!--                                <div class="ibox-title">-->
+<!--                                    <span class="label label-primary pull-right">{:__('Real time')}</span>-->
+<!--                                    <h5>{:__('Article count')}</h5>-->
+<!--                                </div>-->
+<!--                                <div class="ibox-content">-->
+
+<!--                                    <div class="row">-->
+<!--                                        <div class="col-md-6">-->
+<!--                                            <h1 class="no-margins">1234</h1>-->
+<!--                                            <div class="font-bold"><i class="fa fa-commenting"></i>-->
+<!--                                                <small>{:__('Comment count')}</small>-->
+<!--                                            </div>-->
+<!--                                        </div>-->
+<!--                                        <div class="col-md-6">-->
+<!--                                            <h1 class="no-margins">6754</h1>-->
+<!--                                            <div class="font-bold"><i class="fa fa-heart"></i>-->
+<!--                                                <small>{:__('Like count')}</small>-->
+<!--                                            </div>-->
+<!--                                        </div>-->
+<!--                                    </div>-->
+<!--                                </div>-->
+<!--                            </div>-->
+<!--                        </div>-->
+<!--                    </div>-->
+<!--                    <div class="col-xs-6 col-md-3">-->
+<!--                        <div class="panel bg-green-gradient">-->
+<!--                            <div class="panel-body">-->
+<!--                                <div class="ibox-title">-->
+<!--                                    <span class="label label-primary pull-right">{:__('Real time')}</span>-->
+<!--                                    <h5>{:__('News count')}</h5>-->
+<!--                                </div>-->
+<!--                                <div class="ibox-content">-->
+
+<!--                                    <div class="row">-->
+<!--                                        <div class="col-md-6">-->
+<!--                                            <h1 class="no-margins">5302</h1>-->
+<!--                                            <div class="font-bold"><i class="fa fa-commenting"></i>-->
+<!--                                                <small>{:__('Comment count')}</small>-->
+<!--                                            </div>-->
+<!--                                        </div>-->
+<!--                                        <div class="col-md-6">-->
+<!--                                            <h1 class="no-margins">8205</h1>-->
+<!--                                            <div class="font-bold"><i class="fa fa-user"></i>-->
+<!--                                                <small>{:__('Like count')}</small>-->
+<!--                                            </div>-->
+<!--                                        </div>-->
+<!--                                    </div>-->
+<!--                                </div>-->
+<!--                            </div>-->
+<!--                        </div>-->
+<!--                    </div>-->
                 </div>
             </div>
             <div class="tab-pane fade" id="two">

+ 27 - 27
public/assets/js/backend/dashboard.js

@@ -70,33 +70,33 @@ define(['jquery', 'bootstrap', 'backend', 'addtabs', 'table', 'echarts', 'echart
             myChart.setOption(option);
 
             //动态添加数据,可以通过Ajax获取数据然后填充
-            setInterval(function () {
-                Orderdata.column.push((new Date()).toLocaleTimeString().replace(/^\D*/, ''));
-                var amount = Math.floor(Math.random() * 200) + 20;
-                Orderdata.createdata.push(amount);
-                Orderdata.paydata.push(Math.floor(Math.random() * amount) + 1);
-
-                //按自己需求可以取消这个限制
-                if (Orderdata.column.length >= 20) {
-                    //移除最开始的一条数据
-                    Orderdata.column.shift();
-                    Orderdata.paydata.shift();
-                    Orderdata.createdata.shift();
-                }
-                myChart.setOption({
-                    xAxis: {
-                        data: Orderdata.column
-                    },
-                    series: [{
-                        name: __('Sales'),
-                        data: Orderdata.paydata
-                    },
-                        {
-                            name: __('Orders'),
-                            data: Orderdata.createdata
-                        }]
-                });
-            }, 2000);
+            // setInterval(function () {
+            //     Orderdata.column.push((new Date()).toLocaleTimeString().replace(/^\D*/, ''));
+            //     var amount = Math.floor(Math.random() * 200) + 20;
+            //     Orderdata.createdata.push(amount);
+            //     Orderdata.paydata.push(Math.floor(Math.random() * amount) + 1);
+            //
+            //     //按自己需求可以取消这个限制
+            //     if (Orderdata.column.length >= 20) {
+            //         //移除最开始的一条数据
+            //         Orderdata.column.shift();
+            //         Orderdata.paydata.shift();
+            //         Orderdata.createdata.shift();
+            //     }
+            //     myChart.setOption({
+            //         xAxis: {
+            //             data: Orderdata.column
+            //         },
+            //         series: [{
+            //             name: __('Sales'),
+            //             data: Orderdata.paydata
+            //         },
+            //             {
+            //                 name: __('Orders'),
+            //                 data: Orderdata.createdata
+            //             }]
+            //     });
+            // }, 2000);
             $(window).resize(function () {
                 myChart.resize();
             });