Browse Source

刘功能优化

liuhairui 3 years ago
parent
commit
fd06513024

+ 51 - 0
application/admin/controller/Dashboard.php

@@ -78,7 +78,58 @@ class Dashboard extends Backend
         $this->assignconfig('column', array_keys($userlist));
         $this->assignconfig('userdata', array_values($userlist));
 
+        $date = date('Y-m-d');
+        $company_id = $_SESSION['think']['admin']['company_id'];//查询对应公司id
+        //配方单
+        $formuladate = Db::name('formula')->where('company_id',$company_id)->where('date',"<",$date)->count();
+        $this->view->assign('formuladate',$formuladate);
+        $formula = Db::name('formula')->where('company_id',$company_id)->count();
+        $this->view->assign('formula',$formula);
+        //订单
+        $orderdate = Db::name('order')->where('company_id',$company_id)->where('date',"<",$date)->count();
+        $this->view->assign('orderdate',$orderdate);
+        $order = Db::name('order')->where('company_id',$company_id)->count();
+        $this->view->assign('order',$order);
+        //库存
+        $stockdate = Db::name('stock')->where('company_id',$company_id)->where('create',"<",$date)->count();
+        $this->view->assign('stockdate',$stockdate);
+        $stock = Db::name('stock')->where('company_id',$company_id)->count();
+        $this->view->assign('stock',$stock);
+        //管理员
+        $admin = Db::name('admin')->where('company_id',$company_id)->count();
+        $this->view->assign('admin',$admin);
         return $this->view->fetch();
     }
 
+    public function ecDashboard(){
+//      $date = date('Y-m-d 23:59:59',strtotime("last Monday"));
+        $date = date('Y-m-d',strtotime("-6 days"));
+        $end = date('Y-m-d');
+        $r = $this->getDateFromRange($date,$end);
+        foreach ($r as $k=>$v){
+            $company_id = $_SESSION['think']['admin']['company_id'];//查询对应公司id
+            $orderdate = Db::name('order')->where('company_id',$company_id)->where('date',">",$v)->select();
+            if ($orderdate) {
+                return $orderdate;
+            } else {
+                return 0;
+            }
+        }
+    }
+
+
+
+    function getDateFromRange($startdate, $enddate)
+    {
+        $stimestamp = strtotime($startdate);
+        $etimestamp = strtotime($enddate);
+        // 计算日期段内有多少天
+        $days = ($etimestamp - $stimestamp) / 86400 + 1;
+        // 保存每天日期
+        $date = array();
+        for ($i = 0; $i < $days; $i++) {
+            $date[] = date('Y-m-d', $stimestamp + (86400 * $i));
+        }
+        return $date;
+    }
 }

+ 57 - 8
application/admin/lang/zh-cn/dashboard.php

@@ -5,16 +5,16 @@ return [
     'Pid'                      => '父ID',
     'Type'                     => '栏目类型',
     'Image'                    => '图片',
-    'Total user'               => '总会员数',
-    'Total addon'              => '总插件数',
-    'Total category'           => '总分类数',
-    'Total attachment'         => '总附件数',
-    'Total admin'              => '总管理员数',
-    'Today user signup'        => '今日注册',
-    'Today user login'         => '今日登录',
+    'Total user'               => '总订单数',//
+    'Total addon'              => '总配方单数',//
+    'Total category'           => '总分类数',//
+    'Total attachment'         => '总库存',//
+    'Total admin'              => '总管理员数',//
+    'Today user signup'        => '当天新增订单数',//
+    'Today user login'         => '当天新增配方数',//
     'Today order'              => '今日订单',
     'Unsettle order'           => '未处理订单',
-    'Three dnu'                => '三日新增',
+    'Three dnu'                => '当天新增库存',//
     'Seven dnu'                => '七日新增',
     'Seven dau'                => '七日活跃',
     'Thirty dau'               => '月活跃',
@@ -47,4 +47,53 @@ return [
     'Timezone'                 => '时区',
     'Language'                 => '语言',
     'View more'                => '查看更多',
+
+
+
+//    'Custom'                   => '自定义',
+//    'Pid'                      => '父ID',
+//    'Type'                     => '栏目类型',
+//    'Image'                    => '图片',
+//    'Total user'               => '总会员数',
+//    'Total addon'              => '总插件数',
+//    'Total category'           => '总分类数',
+//    'Total attachment'         => '总附件数',
+//    'Total admin'              => '总管理员数',
+//    'Today user signup'        => '今日注册',
+//    'Today user login'         => '今日登录',
+//    'Today order'              => '今日订单',
+//    'Unsettle order'           => '未处理订单',
+//    'Three dnu'                => '三日新增',
+//    'Seven dnu'                => '七日新增',
+//    'Seven dau'                => '七日活跃',
+//    'Thirty dau'               => '月活跃',
+//    'Custom zone'              => '这里是你的自定义数据',
+//    'Register user'            => '注册用户数',
+//    'Real time'                => '实时',
+//    'Category count'           => '分类统计',
+//    'Working addon count'      => '运行中的插件',
+//    'Category count tips'      => '当前分类总记录数',
+//    'Working addon count tips' => '当前运行中的插件数',
+//    'Database count'           => '数据库统计',
+//    'Database table nums'      => '数据表数量',
+//    'Database size'            => '占用空间',
+//    'Attachment count'         => '附件统计',
+//    'Attachment nums'          => '附件数量',
+//    'Attachment size'          => '附件大小',
+//    'Attachment count tips'    => '当前上传的附件数量',
+//    'Picture count'            => '图片统计',
+//    'Picture nums'             => '图片数量',
+//    'Picture size'             => '图片大小',
+//    'Server info'              => '服务器信息',
+//    'PHP version'              => 'PHP版本',
+//    'Sapi name'                => '运行方式',
+//    'Debug mode'               => '调试模式',
+//    'Software'                 => '环境信息',
+//    'Upload mode'              => '上传模式',
+//    'Upload url'               => '上传URL',
+//    'Upload cdn url'           => '上传CDN',
+//    'Cdn url'                  => '静态资源CDN',
+//    'Timezone'                 => '时区',
+//    'Language'                 => '语言',
+//    'View more'                => '查看更多',
 ];

+ 72 - 66
public/assets/js/backend/dashboard.js

@@ -2,77 +2,83 @@ define(['jquery', 'bootstrap', 'backend', 'addtabs', 'table', 'echarts', 'echart
 
     var Controller = {
         index: function () {
-            // 基于准备好的dom,初始化echarts实例
-            var myChart = Echarts.init(document.getElementById('echart'), 'walden');
-            var option = {
-                title: {
-                    text: '',
-                    subtext: ''
-                },
-                color: [
-                    "#18d1b1",
-                    "#3fb1e3",
-                    "#626c91",
-                    "#a0a7e6",
-                    "#c4ebad",
-                    "#96dee8"
-                ],
-                tooltip: {
-                    trigger: 'axis'
-                },
-                legend: {
-                    data: [__('Register user')]
-                },
-                toolbox: {
-                    show: false,
-                    feature: {
-                        magicType: {show: true, type: ['stack', 'tiled']},
-                        saveAsImage: {show: true}
-                    }
-                },
-                xAxis: {
-                    type: 'category',
-                    boundaryGap: false,
-                    data: Config.column
-                },
-                yAxis: {},
-                grid: [{
-                    left: 'left',
-                    top: 'top',
-                    right: '10',
-                    bottom: 30
-                }],
-                series: [{
-                    name: __('Register user'),
-                    type: 'line',
-                    smooth: true,
-                    areaStyle: {
-                        normal: {}
-                    },
-                    lineStyle: {
-                        normal: {
-                            width: 1.5
-                        }
-                    },
-                    data: Config.userdata
-                }]
-            };
+            $.ajax({
+                type : "post",
+                async : false,
+                url : "Dashboard/ecDashboard",
+                data : {},
+                dataType : "json",
+                success : function(result) {
+                    console.log(result);
+0
+                    var myChart = Echarts.init(document.getElementById('echart'), 'walden');
+                    var option = {
+                        title: {
+                            text: ''
+                        },
+                        // color: ['#003366', '#006699', '#4cabce'],
+                        tooltip: {
+                            trigger: 'axis',
+                            // axisPointer: {
+                            //     type: 'shadow'
+                            // }
+                        },
+                        // toolbox: {//图片下载
+                        //     feature: {
+                        //         saveAsImage: {}
+                        //     }
+                        // },
+                        grid: {//图表大小
+                            left: '2%',
+                            right: '5%',
+                            bottom: '3%',
+                            containLabel: true
+                        },
+                        xAxis: [
+                            {
+                                type: 'category',
+                                boundaryGap: false,
+                                data: Config.column//日期
+                            }
+                        ],
+                        yAxis: [
+                            {
+                                type: 'value'
+                            }
+                        ],
+                        series: [
+                            {
+                                name: '订单',
+                                type: 'line',
+                                stack: 'Total',
+                                // label: {//显示数据文字
+                                //     show: true,
+                                //     position: 'top'
+                                // },
+                                areaStyle: {},
+                                emphasis: {
+                                    focus: 'series'
+                                },
+                                data: [1,1,10,30,35,0,result]
+                            },
+                        ]
+                    };
 
-            // 使用刚指定的配置项和数据显示图表。
-            myChart.setOption(option);
+                    // 使用刚指定的配置项和数据显示图表。
+                    myChart.setOption(option);
 
-            $(window).resize(function () {
-                myChart.resize();
-            });
+                    $(window).resize(function () {
+                        myChart.resize();
+                    });
 
-            $(document).on("click", ".btn-refresh", function () {
-                setTimeout(function () {
-                    myChart.resize();
-                }, 0);
+                    $(document).on("click", ".btn-refresh", function () {
+                        setTimeout(function () {
+                            myChart.resize();
+                        }, 0);
+                    });
+                }
             });
-
         }
     };
-
     return Controller;
 });