
    ]h,                         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
mZ d dlmZ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 d
dlmZ d
dlmZ  G d de
j<                        Zy)    )render)action)IsAuthenticatedAllowAny)Response)viewsetsstatus)SearchFilterOrderingFilter)DjangoFilterBackend)CompanyCompanyBotSettings)BotType   )Appointment)AppointmentSerializer)AppointmentFilter) AppointmentLimitOffsetPaginationc                   |    e Zd ZdZej
                  j                         ZeZ	e
gZeZeeegZeZg dZg dZdgZd Zy)ServiceAppointmentViewSetzJViewSet for managing Service appointments only (SERVICE_BOT appointments).)nametwilio_call_sidcall__from_numberappointment_phone)scheduled_date
created_atr   -scheduled_datec                    | j                   j                  }|j                  rC| j                  j	                  t
        j                  j                        j                  d      S |j                  rO	 | j                  j	                  |j                  t
        j                  j                        j                  d      S | j                  j                         S # t        j                  $ r | j                  j                         cY S w xY w)N)bot_typer   )companyr   )requestuseris_superuserquerysetfilterr   SERVICE_BOTvalueorder_byactive_companyr   DoesNotExistnone)selfr"   s     G/var/www/html/dp2/backend_v2.1/server/apps/appointments/service_view.pyget_querysetz&ServiceAppointmentViewSet.get_queryset   s    ||  ==''1D1D1J1J'KTTUfgg,}}++ //$0066 ,  (,-. }}!!## '' ,}}))++,s   3AC -D
DN)__name__
__module____qualname____doc__r   objectsallr$   r   serializer_classr   permission_classesr   pagination_classr   r
   r   filter_backendsr   filterset_classsearch_fieldsordering_fieldsorderingr.        r-   r   r      sV    T""&&(H,)*7*L.IO'OYM>O!"H$r>   r   N) django.shortcutsr   rest_framework.decoratorsr   rest_framework.permissionsr   r   rest_framework.responser   rest_frameworkr   r	   rest_framework.filtersr
   r   django_filters.rest_frameworkr   apps.companies.modelsr   r   apps.calls.constantsr   modelsr   serializersr   filtersr   
paginationr   ModelViewSetr   r=   r>   r-   <module>rM      s@    # , @ , + ? = > (  . & 8$ 5 5 $r>   