| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 | 
							- <?php
 
- namespace app\admin\controller;
 
- use app\admin\model\Admin;
 
- use app\admin\model\User;
 
- use app\common\controller\Backend;
 
- use app\common\model\Attachment;
 
- use fast\Date;
 
- use think\Db;
 
- /**
 
-  * 控制台
 
-  *
 
-  * @icon   fa fa-dashboard
 
-  * @remark 用于展示当前系统中的统计数据、统计报表及重要实时数据
 
-  */
 
- class Dashboard extends Backend
 
- {
 
-     /**
 
-      * 查看
 
-      */
 
-     public function index()
 
-     {
 
-         try {
 
-             \think\Db::execute("SET @@sql_mode='';");
 
-         } catch (\Exception $e) {
 
-         }
 
-         $column = [];
 
-         $starttime = Date::unixtime('day', -6);
 
-         $endtime = Date::unixtime('day', 0, 'end');
 
-         $joinlist = Db("user")->where('jointime', 'between time', [$starttime, $endtime])
 
-             ->field('jointime, status, COUNT(*) AS nums, DATE_FORMAT(FROM_UNIXTIME(jointime), "%Y-%m-%d") AS join_date')
 
-             ->group('join_date')
 
-             ->select();
 
-         for ($time = $starttime; $time <= $endtime;) {
 
-             $column[] = date("Y-m-d", $time);
 
-             $time += 86400;
 
-         }
 
-         $userlist = array_fill_keys($column, 0);
 
-         foreach ($joinlist as $k => $v) {
 
-             $userlist[$v['join_date']] = $v['nums'];
 
-         }
 
-         $this->view->assign([
 
-             'totaluser'         => User::count(),
 
-             'totalorder'        => Db::name('unishop_order')->where('status',1)->where('have_paid','gt',0)->count(),
 
-             'kongjianyuyue'     => Db::name('kongjianyuyue')->count(),
 
-             'laorenguanhuai'    => Db::name('laorenguanhuai')->count(),
 
-             'service_grade'     => Db::name('service_grade')->count(),
 
-             'topic_dongtai'     => Db::name('topic_dongtai')->where('auditstatus',1)->count(),
 
-             'exam_grade'        => Db::name('exam_grade')->where('status',2)->count(),
 
-             'todayusersignup'   => User::whereTime('jointime', 'today')->count(),
 
-             'todayuserlogin'    => User::whereTime('logintime', 'today')->count(),
 
-             'sevendau'          => User::whereTime('jointime|logintime|prevtime', '-7 days')->count(),
 
-             'thirtydau'         => User::whereTime('jointime|logintime|prevtime', '-30 days')->count(),
 
-             'threednu'          => User::whereTime('jointime', '-3 days')->count(),
 
-             'sevendnu'          => User::whereTime('jointime', '-7 days')->count(),
 
-         ]);
 
-         $this->assignconfig('column', array_keys($userlist));
 
-         $this->assignconfig('userdata', array_values($userlist));
 
-         return $this->view->fetch();
 
-     }
 
- }
 
 
  |