mirror of
https://gitee.com/hzchunfen/erp.git
synced 2025-12-01 14:40:44 +00:00
feat: #10000 角色权限增加id
This commit is contained in:
parent
1002605449
commit
31e038b6ed
@ -23,17 +23,21 @@ class PermissionsController extends Controller
|
||||
]);
|
||||
}
|
||||
|
||||
public function index()
|
||||
public function index(Request $request)
|
||||
{
|
||||
$permissions = Permission::query()->get()->toArray();
|
||||
$permissions = $request->user()->getPermissionsViaRoles()->toArray();
|
||||
$permissions = ArrayUtils::index($permissions, 'name');
|
||||
$routes = include(resource_path('lang/zh-CN/permission.php'));
|
||||
foreach ($routes as $key => &$route) {
|
||||
$route['id'] = $permissions[$key]['id'];
|
||||
$allowedPermissions = [];
|
||||
foreach ($routes as $route => $conf) {
|
||||
if (isset($permissions[$route])) {
|
||||
$conf['id'] = $permissions[$route]['id'];
|
||||
$allowedPermissions[] = $conf;
|
||||
}
|
||||
}
|
||||
$routes = FormatUtils::formatTreeData($routes, 0);
|
||||
$allowedPermissions = FormatUtils::formatTreeData($allowedPermissions, 0);
|
||||
|
||||
return PermissionsResource::collection($routes);
|
||||
return PermissionsResource::collection($allowedPermissions);
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
|
||||
@ -4,6 +4,7 @@ namespace App\Http\Controllers\Role;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Log as LogModel;
|
||||
use App\Utils\ArrayUtils;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
use Illuminate\Validation\Rule;
|
||||
@ -22,14 +23,19 @@ class RolesController extends Controller
|
||||
]);
|
||||
}
|
||||
|
||||
public function index()
|
||||
public function index(Request $request)
|
||||
{
|
||||
$roles = Role::query()->with('permissions')->where('id', '<>', 1)->get()->toArray();
|
||||
$routes = include(resource_path('lang/zh-CN/permission.php'));
|
||||
$allPermissions = Permission::query()->get()->toArray();
|
||||
$allPermissions = ArrayUtils::index($allPermissions, 'name');
|
||||
foreach ($roles as &$role) {
|
||||
$permissions = [];
|
||||
foreach ($role['permissions'] as $item) {
|
||||
$permissions[] = $routes[$item['name']]['name'];
|
||||
$permissions[] = [
|
||||
'id' => $allPermissions[$item['name']]['id'],
|
||||
'name' => $routes[$item['name']]['name'],
|
||||
];
|
||||
}
|
||||
$role['permissions'] = $permissions;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user