from django.db.models import Q


class CustomerSearchMixin:
    search_param = "search"

    def apply_call_search(self, queryset):
        search = self.request.query_params.get(self.search_param)
        if not search:
            return queryset

        return queryset.filter(
            Q(name__icontains=search)
            | Q(phone__icontains=search)
            | Q(customer_name__icontains=search)
        )
