from apps.calls.constants import BotType
from apps.calls.models import Call
from apps.companies.models import CatchPhrase


class CatchPhraseReportRepository:

    @staticmethod
    def get_calls(company_id, filters=None):
        qs = Call.objects.filter(
            company_id=company_id,
            bot_type=BotType.SERVICE_BOT.value
        ).order_by('-created_at')

        if filters:
            qs = qs.filter(**filters)

        return qs.select_related("company").order_by("-id")

    @staticmethod
    def get_phrases(company_id):
        return CatchPhrase.objects.filter(company_id=company_id)
