where('business_id', auth()->user()->business_id); // Date Filter $duration = request('custom_days') ?: 'today'; $this->applyDateFilter($subscriberQuery, $duration, 'created_at', request('from_date'), request('to_date')); // Search Filter if (request('search')) { $search = request('search'); $subscriberQuery->where(function ($query) use ($search) { $query->where('duration', 'like', '%' . $search . '%') ->orWhereHas('plan', function ($q) use ($search) { $q->where('subscriptionName', 'like', '%' . $search . '%'); }) ->orWhereHas('gateway', function ($q) use ($search) { $q->where('name', 'like', '%' . $search . '%'); }) ->orWhereHas('business', function ($q) use ($search) { $q->where('companyName', 'like', '%' . $search . '%') ->orWhereHas('category', function ($q) use ($search) { $q->where('name', 'like', '%' . $search . '%'); }); }); }); } $subscribers = $subscriberQuery->latest()->limit(request('per_page') ?? 20)->get(); return view('business::reports.subscription-reports.excel-csv', compact('subscribers')); } }