示例#1
0
 /**
  * 按年取得统计结果
  * @method getYearTendency
  * @return [type]          [description]
  */
 public function getYearTendency()
 {
     $dt = Carbon::now('Asia/ShangHai');
     $length = $dt->month;
     DB::connection()->enableQueryLog();
     for ($i = 1; $i <= $length; $i++) {
         $start = Carbon::now('Asia/ShangHai')->month($i)->startOfMonth()->toDateTimeString();
         $end = Carbon::now('Asia/ShangHai')->month($i)->endOfMonth()->toDateTimeString();
         $dataValue[] = RobotOrder::whereBetween('pay_time', [$start, $end])->count();
     }
     return $dataValue;
 }
示例#2
0
 /**
  * 学生使用情况统计
  * @method usageStatistics
  * @return [json]          [description]
  */
 public function usageStatistics()
 {
     /**
      * 今日的统计结果
      */
     $today_carbon_start = Carbon::now('Asia/ShangHai')->startOfDay();
     $today_carbon_end = Carbon::now('Asia/ShangHai')->endOfDay();
     $data['countStudents'] = StudentUser::count();
     // 用户数
     $data['todayCountAdd'] = StudentUser::whereBetween('regdate', [$today_carbon_start, $today_carbon_end])->count();
     // 今日增加用户数
     $data['todayCountUsed'] = StudentUser::whereBetween('lastlogin', [$today_carbon_start, $today_carbon_end])->count();
     // 今日使用用户数
     $data['todayCountOrder'] = RobotOrder::whereBetween('pay_time', [$today_carbon_start, $today_carbon_end])->count();
     // 今日订单数
     $today_request = new Request(['practice_time' => 30 * 60, 'date' => 'today']);
     $data['todayCountActive'] = self::activeUser($today_request);
     // 今日活跃用户数(机器人使用时长30分钟以上)
     $data['todayValue'] = Carbon::now('Asia/ShangHai')->hour;
     /**
      * 本月的统计结果
      */
     $month_carbon_start = Carbon::now('Asia/ShangHai')->startOfMonth();
     $month_carbon_end = Carbon::now('Asia/ShangHai')->endOfMonth();
     //  $data['countStudents'] = StudentUser::count();  // 用户数
     $data['monthCountAdd'] = StudentUser::whereBetween('regdate', [$month_carbon_start, $month_carbon_end])->count();
     // 今日增加用户数
     $data['monthCountUsed'] = StudentUser::whereBetween('lastlogin', [$month_carbon_start, $month_carbon_end])->count();
     // 今日使用用户数
     $data['monthCountOrder'] = RobotOrder::whereBetween('pay_time', [$month_carbon_start, $month_carbon_end])->count();
     // 今日订单数
     $month_request = new Request(['practice_time' => 30 * 60 * 60, 'date' => 'month']);
     $data['monthCountActive'] = self::activeUser($month_request);
     // 今日活跃用户数(机器人使用时长30小时以上)
     //  $data['monthDayth'] = Carbon::now('Asia/ShangHai')->day;
     $data['monthValue'] = Carbon::now('Asia/ShangHai')->day;
     // 本月从开始到今天一共经过了多少天
     //  $data['monthArray'] = self::calEveryPeriodAddUsers('month', Carbon::now('Asia/ShangHai')->day);
     /**
      * 本季度的统计结果
      */
     $quarter_carbon_start = Carbon::now('Asia/ShangHai')->firstOfQuarter();
     $quarter_carbon_end = Carbon::now('Asia/ShangHai')->lastOfQuarter();
     //  return $quarter_carbon_start . '/' . $quarter_carbon_end;
     //  $data['countStudents'] = StudentUser::count();  // 用户数
     $data['quarterCountAdd'] = StudentUser::whereBetween('regdate', [$quarter_carbon_start, $quarter_carbon_end])->count();
     // 今日增加用户数
     $data['quarterCountUsed'] = StudentUser::whereBetween('lastlogin', [$quarter_carbon_start, $quarter_carbon_end])->count();
     // 今日使用用户数
     $data['quarterCountOrder'] = RobotOrder::whereBetween('pay_time', [$quarter_carbon_start, $quarter_carbon_end])->count();
     // 今日订单数
     $quarter_request = new Request(['practice_time' => 30 * 60 * 60, 'date' => 'quarter']);
     $data['quarterCountActive'] = self::activeUser($quarter_request);
     // 今日活跃用户数(机器人使用时长30小时以上)
     //  $data['QuarterMonth'] = Carbon::now('Asia/ShangHai')->nthOfQuarter();
     $firstOfQuarter_month = Carbon::now('Asia/ShangHai')->firstOfQuarter()->month;
     $now_month = Carbon::now('Asia/ShangHai')->month;
     $data['quarterValue'] = $now_month - $firstOfQuarter_month + 1;
     /**
      * 本年的统计结果
      */
     $year_carbon_start = Carbon::now('Asia/ShangHai')->firstOfYear();
     $year_carbon_end = Carbon::now('Asia/ShangHai');
     //  return $year_carbon_start . '/' . $year_carbon_end;
     //  $data['countStudents'] = StudentUser::count();  // 用户数
     $data['yearCountAdd'] = StudentUser::whereBetween('regdate', [$year_carbon_start, $year_carbon_end])->count();
     // 今日增加用户数
     $data['yearCountUsed'] = StudentUser::whereBetween('lastlogin', [$year_carbon_start, $year_carbon_end])->count();
     // 今日使用用户数
     $data['yearCountOrder'] = RobotOrder::whereBetween('pay_time', [$year_carbon_start, $year_carbon_end])->count();
     // 今日订单数
     $year_request = new Request(['practice_time' => 30 * 60 * 60, 'date' => 'year']);
     $data['yearCountActive'] = self::activeUser($year_request);
     // 今日活跃用户数(机器人使用时长30小时以上)
     $data['yearValue'] = Carbon::now('Asia/ShangHai')->month;
     return view('usageStatistics')->with('data', $data);
 }