32 lines
989 B
PHP
32 lines
989 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\AiModel;
|
|
use App\Models\Article;
|
|
use App\Models\Guide;
|
|
use App\Models\Tool;
|
|
use Illuminate\Contracts\View\View;
|
|
|
|
class DashboardController extends Controller
|
|
{
|
|
public function __invoke(): View
|
|
{
|
|
return view('admin.dashboard', [
|
|
'counts' => [
|
|
'tools' => Tool::query()->count(),
|
|
'models' => AiModel::query()->count(),
|
|
'articles' => Article::query()->count(),
|
|
'guides' => Guide::query()->count(),
|
|
],
|
|
'recentTools' => Tool::query()->latest('updated_at')->limit(5)->get(),
|
|
'recentModels' => AiModel::query()->latest('updated_at')->limit(5)->get(),
|
|
'recentArticles' => Article::query()->latest('updated_at')->limit(5)->get(),
|
|
'recentGuides' => Guide::query()->latest('updated_at')->limit(5)->get(),
|
|
]);
|
|
}
|
|
}
|