find($userId);; //获取用户所在分组 $ugm = UserGroupMembers::where('user_id', $userId)->where('status', 1)->get(); $group_id = isset($ugm->group_id)?$ugm->group_id:0; $roleRule = UserDashboardRule::orWhere(function ($query) use ($user) { $query->whereIn('related', $user->roles->pluck('id')) ->where('rule_type', 'role'); }) ->orWhere(function ($query) use ($userId) { $query->where('related', $userId) ->where('rule_type', 'user'); }) ->orWhere(function ($query) use ($group_id) { $query->where('related', $group_id) ->where('rule_type', 'group'); }) ->orderBy('weight','desc') ->orderBy('rule_type','desc') ->first(); $resources_id = $roleRule?$roleRule->resources_id:null; return $resources_id; } }