From b9013c5a08dd581181b8b21ad2a2c77b9e06405c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E4=B8=91=E8=B7=AF=E4=BA=BA?= <2278757482@qq.com> Date: Thu, 20 May 2021 10:57:31 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E7=99=BB=E5=BD=95=E4=BC=9A?= =?UTF-8?q?=E5=91=98=E7=9A=84=E6=9D=83=E9=99=90=E5=88=97=E8=A1=A8=EF=BC=9B?= =?UTF-8?q?=20=E5=90=8E=E5=8F=B0=E8=AE=BF=E9=97=AE=E8=B7=AF=E5=BE=84?= =?UTF-8?q?=E6=8C=89=E7=85=A7=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E8=AE=BE?= =?UTF-8?q?=E5=AE=9A=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Http/Controllers/AuthController.php | 2 ++ app/Modules/Admin/Routes/web.php | 2 +- app/Modules/Admin/Services/AuthService.php | 21 +++++++++++++++++++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/app/Modules/Admin/Http/Controllers/AuthController.php b/app/Modules/Admin/Http/Controllers/AuthController.php index e811b8c..e263672 100644 --- a/app/Modules/Admin/Http/Controllers/AuthController.php +++ b/app/Modules/Admin/Http/Controllers/AuthController.php @@ -58,6 +58,8 @@ class AuthController extends BaseController public function getRabcList() { + return $this->successJson($this->service->getRabcList()); + // 临时测试数据 return $this->successJson(list_to_tree(AdminMenu::getInstance()->getAllMenus()->toArray())); } diff --git a/app/Modules/Admin/Routes/web.php b/app/Modules/Admin/Routes/web.php index 3f409a1..494e0bb 100644 --- a/app/Modules/Admin/Routes/web.php +++ b/app/Modules/Admin/Routes/web.php @@ -16,7 +16,7 @@ use App\Modules\Admin\Http\Middleware\CheckAuth; use App\Modules\Admin\Http\Middleware\CheckRabc; use App\Modules\Admin\Http\Middleware\AdminLog; -Route::prefix('admin') +Route::prefix(cnpscy_config('admin_prefix')) ->group(function() { // Route::get('/', 'AdminController@index'); //后台管理路由 diff --git a/app/Modules/Admin/Services/AuthService.php b/app/Modules/Admin/Services/AuthService.php index 5bdfc72..a276d29 100644 --- a/app/Modules/Admin/Services/AuthService.php +++ b/app/Modules/Admin/Services/AuthService.php @@ -6,6 +6,7 @@ use App\Exceptions\Admin\AuthException; use App\Exceptions\Admin\AuthTokenException; use App\Exceptions\InvalidRequestException; use App\Modules\Admin\Entities\Log\AdminLoginLog; +use App\Modules\Admin\Entities\Rabc\Admin; use App\Services\Service; use Illuminate\Support\Facades\Auth; @@ -56,6 +57,26 @@ class AuthService extends Service return $admin; } + /** + * 获取拥有的权限 + * + * @throws \App\Exceptions\Admin\AuthTokenException + */ + public function getRabcList() + { + if (!$admin = Auth::guard($this->guard)->user()){ + throw new AuthTokenException('认证失败!'); + } + $admin = Admin::with(['roles.menus'])->find($admin->admin_id)->toArray(); + + $menus = []; + foreach (array_column($admin['roles'], 'menus') as $item){ + $menus = array_merge($menus, $item); + } + + return list_to_tree($menus); + } + /** * 退出登录 * -- Gitee