/** * 获取需要修改菜单的数据 * * @param * * @author wen.zhou@bioon.com * * @date 2015-10-17 08:09:32 * * @return */ public function getEdit(PermissionTreeContract $perCon) { $id = request('id', 2); $returnData = []; if (is_numeric($id) && !empty($id)) { $role = Role::find($id); if (!$role->get()->isEmpty()) { /*所有权限*/ $all_permissions = Permission::all(); /*该角色的所有权限*/ $role_permissions = $role->permissions()->get()->keyBy('slug')->keys()->toArray(); $deal_permissions = []; foreach ($all_permissions as $all_permission) { array_set($deal_permissions, $all_permission->slug, json_encode(['key' => $all_permission->slug, 'val' => $all_permission->name . ':' . $all_permission->description])); } $permissions = $perCon->permissionToTreeUpdate($deal_permissions, $role_permissions, '#'); $returnData['status'] = true; $returnData['msg'] = "获取成功"; $returnData['role'] = $role; $returnData['permissions'] = json_encode($permissions); $returnData['role_permissions'] = json_encode($role_permissions); } else { $returnData['status'] = false; $returnData['msg'] = "获取失败"; } } else { $returnData['status'] = false; $returnData['msg'] = "获取数据错误"; } return view('admin.role.edit')->with($returnData); }
/** * 获取需要修改菜单的数据 * * @param * * @author wen.zhou@bioon.com * * @date 2015-10-17 08:09:32 * * @return */ public function getEdit(PermissionTreeContract $perCon) { $id = request('id', 2); $returnData = []; if (is_numeric($id) && !empty($id)) { $user = User::find($id); if (!$user->get()->isEmpty()) { /*用户所拥有的角色*/ $user_roles = $user->getRoles(); /*用户所拥有的权限*/ $user_permissions = $user->userPermissions()->get()->keyBy('slug')->keys()->toArray(); /*所有角色*/ $all_roles = Role::all(); /*所有权限*/ $all_permissions = Permission::all(); $deal_permissions = []; foreach ($all_permissions as $all_permission) { array_set($deal_permissions, $all_permission->slug, json_encode(['key' => $all_permission->slug, 'val' => $all_permission->name . ':' . $all_permission->description])); } $permissions = $perCon->permissionToTreeUpdate($deal_permissions, $user_permissions, '#'); $returnData['status'] = true; $returnData['msg'] = "获取成功"; $returnData['user'] = $user; $returnData['permissions'] = collect($permissions); $returnData['user_permissions'] = collect($user_permissions); $returnData['user_roles'] = $user_roles; $returnData['all_roles'] = $all_roles; } else { $returnData['status'] = false; $returnData['msg'] = "获取失败"; } } else { $returnData['status'] = false; $returnData['msg'] = "获取数据错误"; } return view('admin.user.edit')->with($returnData); }