From dd8f3d921c39783420f8e1694cf42fa21edf5666 Mon Sep 17 00:00:00 2001 From: vine_liutk <961510893@qq.com> Date: Sat, 4 Dec 2021 10:15:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8F=9C=E5=8D=95=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/routes.php | 8 +-- app/Models/Admin/Menu.php | 13 +++++ config/admin.php | 2 +- database/seeders/AdminPermissionSeeder.php | 57 ++++++++-------------- 4 files changed, 39 insertions(+), 41 deletions(-) diff --git a/app/Admin/routes.php b/app/Admin/routes.php index 55eabc6e..27046130 100644 --- a/app/Admin/routes.php +++ b/app/Admin/routes.php @@ -12,10 +12,10 @@ Route::group([ 'middleware' => config('admin.route.middleware'), ], function (Router $router) { $router->get('/', 'HomeController@index'); - $router->resource('adminstrators', 'AdministratorController'); - $router->resource('roles', 'RoleController'); - $router->resource('permissions', 'RoleController'); - $router->resource('menus', 'MenuController'); + $router->resource('auth/users', 'AdministratorController')->names('administrators'); + $router->resource('auth/roles', 'RoleController'); + $router->resource('auth/permissions', 'RoleController'); + $router->resource('auth/menus', 'MenuController'); $router->resource('ad-addresses', 'AdAddressController')->only([ 'index', 'create', 'store', 'edit', 'update', 'destroy', diff --git a/app/Models/Admin/Menu.php b/app/Models/Admin/Menu.php index 4d7956c1..86e5e18b 100755 --- a/app/Models/Admin/Menu.php +++ b/app/Models/Admin/Menu.php @@ -2,8 +2,21 @@ namespace App\Models\Admin; +use Dcat\Admin\Admin; use Dcat\Admin\Models\Menu as DcatMenu; class Menu extends DcatMenu { + public function fetchAll() + { + return $this->withQuery(function ($query) { + if (!Admin::user()->isAdministrator()) { + return $query->with('roles')->whereHas('roles', function ($q) { + $q->whereIn('id', Admin::user()->roles()->pluck('id')->toArray()); + }); + } else { + return $query->with('roles'); + } + })->treeAllNodes(); + } } diff --git a/config/admin.php b/config/admin.php index 4a62443f..38745d1e 100644 --- a/config/admin.php +++ b/config/admin.php @@ -240,7 +240,7 @@ return [ ], // Whether enable menu bind to a permission. - 'bind_permission' => true, + 'bind_permission' => false, // Whether enable role bind to menu. 'role_bind_menu' => true, diff --git a/database/seeders/AdminPermissionSeeder.php b/database/seeders/AdminPermissionSeeder.php index b7e90142..b508b5b7 100644 --- a/database/seeders/AdminPermissionSeeder.php +++ b/database/seeders/AdminPermissionSeeder.php @@ -50,6 +50,15 @@ class AdminPermissionSeeder extends Seeder ], ], ], + 'api'=>[ + 'name'=>'后台接口', + 'curd' => false, + 'children' => [ + 'product_categories'=>['name'=>'商品分类'], + 'product_group_details' =>['name'=>'商品分组'], + 'product_skus'=>['name'=>'子商品列表'], + ], + ], 'ad_addresses'=>[ 'name'=>'广告位', 'curd' => ['index', 'create', 'store', 'edit', 'update', 'destroy'], @@ -86,48 +95,28 @@ class AdminPermissionSeeder extends Seeder 'name' =>'主商品', 'curd'=> true, 'children'=>[ - 'list'=>[ - 'name'=>'子商品列表', - ], - 'setting_specs'=>[ - 'name'=>'设置规格', - ], - 'init_sku_by_specs'=>[ - 'name' =>'初始化SKU', - ], - 'add_sku'=>[ - 'name' =>'添加子商品', - ], + 'list'=>['name'=>'子商品列表'], + 'setting_specs'=>['name'=>'设置规格'], + 'init_sku_by_specs'=>['name' =>'初始化SKU'], + 'add_sku'=>['name' =>'添加子商品'], ], ], 'product_skus'=>[ 'name' =>'子商品', 'curd' =>['index', 'edit', 'update', 'destroy'], 'children'=>[ - 'batch_release_up' => [ - 'name'=>'批量上架申请', - ], - 'batch_release_down'=>[ - 'name' =>'批量下架', - ], - 'batch_release_cacel'=>[ - 'name' =>'批量取消申请', - ], - 'batch_sku_sync_spu'=>[ - 'name' =>'批量同步主商品', - ], + 'batch_release_up' => ['name'=>'批量上架申请'], + 'batch_release_down'=>['name' =>'批量下架'], + 'batch_release_cacel'=>['name' =>'批量取消申请'], + 'batch_sku_sync_spu'=>['name' =>'批量同步主商品'], ], ], 'product_sku_verifies'=>[ 'name' =>'商品审核', 'curd'=>['index', 'destroy'], 'children' => [ - 'verify'=>[ - 'name' =>'审核商品', - ], - 'batch_verify'=>[ - 'name' =>'批量审核', - ], + 'verify'=>['name' =>'审核商品'], + 'batch_verify'=>['name' =>'批量审核'], ], ], 'vips'=>[ @@ -138,12 +127,8 @@ class AdminPermissionSeeder extends Seeder 'name'=>'会员管理', 'curd'=>['index', 'create', 'store'], 'children'=>[ - 'disable' =>[ - 'name'=>'禁用', - ], - 'enable'=>[ - 'name' =>'启用', - ], + 'disable' =>['name'=>'禁用'], + 'enable'=>['name' =>'启用'], ], ], ];