
    [i                         d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZmZ d d	lmZ d d
lmZ d dlmZ  e j,                  e      Z G d deej2                        Zy)    N)DjangoFilterBackend)viewsets)IsAuthenticated)CallSearchMixin)Company)BotType)
CallFilterCallOrderingFilter)Call)CallLimitOffsetPagination)CallDetailSerializerc                   n    e Zd ZeZej                  j                         Ze	gZ
eZeegZeZg dZdgZd Zy)AdvisorCallViewSet)
created_atdurationcost-created_atc                    t        | d      r| j                  S | j                  j                  }|j                  s/t
        j                  j                         | _        | j                  S t        j                  j                  |j                  j                        j                         }|s/t
        j                  j                         | _        | j                  S t
        j                  j                  ||t        j                  j                        j                  d      }| j!                  |      }| j#                  |      }|| _        | j                  S )N
_cached_qs)phone)companytransfer_userbot_typer   )hasattrr   requestuseractive_companyr   objectsnoner   filterr   firstr   SERVICE_BOTvalueorder_bywith_sort_nameapply_call_search)selfr   r   qss       G/var/www/html/dp2/backend_v2.1/server/apps/calls/views/advisor_calls.pyget_querysetzAdvisorCallViewSet.get_queryset    s	   4&??"||  """ll//1DO??"//((t/B/B/H/H(IOOQ"ll//1DO??"\\  ((.. ! 
 (=
!	 	   $##B'    N)__name__
__module____qualname__r   serializer_classr   r   allquerysetr   permission_classesr   pagination_classr   r
   filter_backendsr	   filterset_classordering_fieldsorderingr*    r+   r)   r   r      sL     ,||!H)*0*,>?O O8OHr+   r   )loggingdjango_filters.rest_frameworkr   rest_frameworkr   rest_framework.permissionsr   apps.calls.mixinsr   apps.companies.modelsr   apps.calls.constantsr   apps.calls.filtersr	   r
   apps.calls.modelsr   apps.calls.paginationr   apps.calls.serializersr   	getLoggerr,   loggerReadOnlyModelViewSetr   r8   r+   r)   <module>rG      sP     = # 6 - ) ( = " ; 7 
		8	$'!!'r+   