chore: init saasshop repo + sql migrations runner + gitee go
This commit is contained in:
57
app/Http/Controllers/Admin/DashboardController.php
Normal file
57
app/Http/Controllers/Admin/DashboardController.php
Normal file
@@ -0,0 +1,57 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Concerns\ResolvesPlatformAdminContext;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Admin;
|
||||
use App\Models\Order;
|
||||
use App\Models\Product;
|
||||
use App\Models\Merchant;
|
||||
use App\Models\User;
|
||||
use App\Support\CacheKeys;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
use Illuminate\View\View;
|
||||
|
||||
class DashboardController extends Controller
|
||||
{
|
||||
use ResolvesPlatformAdminContext;
|
||||
|
||||
public function index(Request $request): View
|
||||
{
|
||||
$admin = $this->ensurePlatformAdmin($request);
|
||||
|
||||
$stats = Cache::remember(
|
||||
CacheKeys::platformDashboardStats(),
|
||||
now()->addMinutes(10),
|
||||
fn () => [
|
||||
'merchants' => Merchant::count(),
|
||||
'admins' => Admin::count(),
|
||||
'users' => User::count(),
|
||||
'products' => Product::count(),
|
||||
'orders' => Order::count(),
|
||||
'active_merchants' => Merchant::query()->where('status', 'active')->count(),
|
||||
'pending_orders' => Order::query()->where('status', 'pending')->count(),
|
||||
]
|
||||
);
|
||||
|
||||
return view('admin.dashboard', [
|
||||
'adminName' => $admin->name,
|
||||
'stats' => $stats,
|
||||
'platformAdmin' => $admin,
|
||||
'cacheMeta' => [
|
||||
'store' => config('cache.default'),
|
||||
'ttl' => '10m',
|
||||
],
|
||||
'platformOverview' => [
|
||||
'system_role' => '总台管理',
|
||||
'current_scope' => '总台运营方视角',
|
||||
'merchant_mode' => '统一管理多个站点',
|
||||
'channel_count' => 5,
|
||||
'active_merchants' => $stats['active_merchants'],
|
||||
'pending_orders' => $stats['pending_orders'],
|
||||
],
|
||||
]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user