<?php namespace App\Models\Scopes; use App\Models\Company; use App\Models\TeamMember; use App\Models\User; use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Scope; use Illuminate\Support\Facades\Auth; class CompanyScope implements Scope { public function apply(Builder $builder, Model $model): void { if (Auth::user()) { // $builder->where($model->getTable() . '.company_id', '=', Auth::user()->company_id); if (Auth::user()->super_admin || Auth::user()->company_admin) { $company = Company::query() ->where('id',Auth::user()->company_id) ->orWhere("parent_id", Auth::user()->company_id) ->pluck("id"); $builder->whereIn($model->getTable() . '.company_id', $company->toArray()); }else{ $builder->where($model->getTable() . '.company_id', '=', Auth::user()->company_id); } } } }