with(['permissions' => function ($query) { $query->where('guard_name', 'api'); }]) ->get()->filter(function($item) { return count($item->permissions) > 0; }); return PermissionGroupResource::collection($permissionGroups); } public function menuPermissions() { $menus = Menu::select(['id','name', 'parent_id', 'permission'])->get(); return $this->success([ 'data' => make_tree($menus->toArray()), ]); } }