You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
2.1 KiB

<?php
namespace App\Http\Controllers\Api\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\JsonResponse;
class AdminMenuController extends Controller
{
/**
* 管理端侧栏菜单(一期可按角色裁剪)。赛事子功能在工作区内以 Tab 切换,不再单独占菜单项。
*
* @return array<int, array<string, mixed>>
*/
public function index(): JsonResponse
{
return response()->json([
'data' => [
[
'name' => 'admin-dashboard',
'path' => 'dashboard',
'title' => '首页',
'permissionCode' => 'admin.dashboard',
],
['section' => '赛事中心'],
[
'name' => 'admin-competitions-list',
'path' => 'competitions',
'title' => '赛事列表',
'permissionCode' => 'competition.read',
],
[
'name' => 'admin-public-source-channels',
'path' => 'public-source-channels',
'title' => '公开来源渠道',
'permissionCode' => 'competition.read',
],
['section' => '评审管理'],
[
'name' => 'admin-reviewers-list',
'path' => 'review/reviewers',
'title' => '评审员管理',
'permissionCode' => 'reviewer.manage',
],
[
'name' => 'admin-review-portal',
'path' => 'review/portal',
'title' => '评审端入口',
'permissionCode' => 'reviewer.manage',
],
['section' => '系统管理'],
[
'name' => 'admin-users-list',
'path' => 'admin-users',
'title' => '用户管理',
'permissionCode' => 'admin.users',
],
],
]);
}
}