NumController.php 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use App\Http\Controllers\Controller;
  4. use Illuminate\Support\Facades\DB;
  5. /**
  6. * 每日数据
  7. * Class NumController
  8. * @package App\Http\Controllers\Admin
  9. */
  10. class NumController extends Controller
  11. {
  12. //每日数据仪表
  13. public function index()
  14. {
  15. $ymdList = [];
  16. for ($i = 1; $i <= 7; $i++) {
  17. $ymdList[] = date('Ymd', strtotime('-' . $i . ' day'));
  18. }
  19. $numList = DB::table('num')
  20. ->selectRaw('SUM(traffic) AS traffic,SUM(inquire) AS inquire,SUM(top10) AS top10,ymd')
  21. ->whereIn('ymd', $ymdList)
  22. ->groupBy('ymd')->get()->keyBy('ymd')->toArray();
  23. $trafficY = $inquireY = $keywordY = [];
  24. foreach ($ymdList as $ymd) {
  25. $trafficY[] = $numList[$ymd]->traffic ?? 0;
  26. $inquireY[] = $numList[$ymd]->inquire ?? 0;
  27. $keywordY[] = $numList[$ymd]->top10 ?? 0;
  28. }
  29. return view('admin.num.index', [
  30. 'trafficLine' => [
  31. 'xAxis' => $ymdList,
  32. 'yAxis' => $trafficY,
  33. ],
  34. 'inquireLine' => [
  35. 'xAxis' => $ymdList,
  36. 'yAxis' => $inquireY,
  37. ],
  38. 'keywordLine' => [
  39. 'xAxis' => $ymdList,
  40. 'yAxis' => $keywordY,
  41. ],
  42. ]);
  43. }
  44. }