feat(admin): 统一后台权限注册表并移除路由中间件鉴权

This commit is contained in:
2026-05-19 09:34:31 +08:00
parent 4cf561cd57
commit 063cb98311
19 changed files with 519 additions and 389 deletions

View File

@@ -6,6 +6,7 @@ use App\Models\AdminUser;
use App\Lottery\ErrorCode;
use Illuminate\Support\Str;
use App\Support\ApiResponse;
use App\Support\AdminAuthorizationRegistry;
use Illuminate\Http\JsonResponse;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Hash;
@@ -68,6 +69,7 @@ final class LoginController extends Controller
)->plainTextToken;
$admin->forceFill(['last_login_at' => now()])->save();
$permissionSlugs = $admin->fresh()->adminPermissionSlugs();
return ApiResponse::success([
'token' => $plainToken,
@@ -77,7 +79,8 @@ final class LoginController extends Controller
'username' => $admin->username,
'nickname' => $admin->name,
'email' => $admin->email,
'permissions' => $admin->fresh()->adminPermissionSlugs(),
'permissions' => $permissionSlugs,
'navigation' => AdminAuthorizationRegistry::visibleNavigationItems($permissionSlugs),
],
]);
}

View File

@@ -4,6 +4,7 @@ namespace App\Http\Controllers\Api\V1\Admin\User;
use App\Models\AdminRole;
use App\Support\ApiResponse;
use App\Support\AdminAuthorizationRegistry;
use Illuminate\Http\JsonResponse;
use Illuminate\Support\Facades\DB;
use App\Http\Controllers\Controller;
@@ -62,6 +63,7 @@ final class AdminPermissionCatalogController extends Controller
return ApiResponse::success([
'permissions' => $permissions,
'permission_menu_groups' => $permissionMenuGroups,
'navigation' => AdminAuthorizationRegistry::navigationItems(),
'roles' => $roles->map(static function (AdminRole $role): array {
$userCount = (int) DB::table('admin_user_site_roles')
->where('role_id', $role->id)