has('name') && $request->name != '', function ($query) use ($request) { $query->where('name', 'LIKE', '%'.$request->name.'%'); }) ->when($request->has('package_id') && $request->package_id != '', function ($query) use ($request) { $query->where('id', $request->package_id); }) ->when($request->has('medical_center_id') && $request->medical_center_id != '' && $request->medical_center_id != 'undefined', function ($query) use ($request) { $query->whereHas('user', function ($query) use ($request) { $query->where('medical_center_id', $request->medical_center_id); }); }) ->with([ 'user', 'user.medical_center' => function ($query) { $query->select('id', 'name', 'address', 'phone_number'); }, 'items' ]) ->whereHas('user', function ($query) use ($user) { $query->where('users.medical_center_id', $user->medical_center_id); }) // ->where("status", StatusTypeEnum::APPROVED) ->orderByDesc('id') ->paginate(10); } public function indexForSupervisor($request, $user) { return Package::when($request->has('name') && $request->name != '', function ($query) use ($request) { $query->where('name', 'LIKE', '%'.$request->name.'%'); }) ->when($request->has('package_id') && $request->package_id != '', function ($query) use ($request) { $query->where('id', $request->package_id); }) ->when($request->has('medical_center_id') && $request->medical_center_id != '' && $request->medical_center_id != 'undefined', function ($query) use ($request) { $query->whereHas('user', function ($query) use ($request) { $query->where('medical_center_id', $request->medical_center_id); }); }) ->with([ 'user', 'user.medical_center' => function ($query) { $query->select('id', 'name', 'address', 'phone_number'); }, 'items' ])->whereHas('user', function ($query) use ($user) { $query->where('users.medical_center_id', $user->medical_center_id); }) ->orderByDesc('id') ->paginate(10); } public function indexForAdmin($request, $user) { return Package::when($request->has('name') && $request->name != '', function ($query) use ($request) { $query->where('name', 'LIKE', '%'.$request->name.'%'); }) ->when($request->has('package_id') && $request->package_id != '', function ($query) use ($request) { $query->where('id', $request->package_id); }) ->when($request->has('medical_center_id') && $request->medical_center_id != '' && $request->medical_center_id != 'undefined', function ($query) use ($request) { $query->whereHas('user', function ($query) use ($request) { $query->where('medical_center_id', $request->medical_center_id); }); }) ->with([ 'user', 'user.medical_center' => function ($query) { $query->select('id', 'name', 'address', 'phone_number'); }, 'items' ]) ->orderByDesc('id') ->paginate(10); } }