HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/projects/buyercall/buyercall/blueprints/agents/__pycache__/rest_api.cpython-310.pyc
o

�wel�@s�ddlmZmZmZddlmZmZddlmZddl	m
Z
mZddlm
Z
ddlmZddlmZmZejd	d
gd�edd
���Zejdd
gd�edd���Zejd	dgd�edd���Zejdd
gd�e
dd���ZdS)�)�jsonify�
make_response�request)�current_user�login_required)�and_)�rest_method�rest_partnership_account)�db���agents)�Agent�
AgentSchedulez/api/agents�GET)�methodscCs�tj}tj}|rtj}tj�ttj|ktjdk��}t	j
�d�dkr*|�tjdk�}|�
�}ttdd�|D�d��}d|jd<|S)	�i Return the list of the agents used by the 'agents' component in an inbound
    or outbound routing.
    F�exclude_groups�truecSsg|]
}t|j|jd��qS))�id�fullName)�dictr�	full_name)�.0�a�r�F/home/arjun/projects/buyercall/buyercall/blueprints/agents/rest_api.py�
<listcomp>s��z#get_user_agents.<locals>.<listcomp>)�
collection�no-cache�
Cache-Control)r�partnership_account_id�is_viewing_partnership�'get_user_viewing_partnership_account_idr�query�filterr�is_deactivatedr�args�get�is_group�allrr�headers)r!�viewing_partnership_account�
all_agents�responserrr�get_user_agentss
�
r/z/api/agents/<int:id_>cCs^tj}tj}|rtj}tj�tj|ktj|k���}t	t
|j|j|j|j
d��}d|jd<|S)r)rr�phoneNumber�availableNowrr )rr!r"r#rr$r%r�onerrr�phonenumber�
available_nowr+)�id_r!r,�agentr.rrr�	get_agent's$���
r7�POSTc
Cs�tj}tj}tj}tjrtj}tj}t�}||_||_|d|_	|d|_
|�d�|_|d|_
d|_d|_td�D]}|j�t|dd	d
|d��q:tj�|�tj��|��}|j|d<t|�S)
N�	firstName�lastName�emailr0Tz
US/Central�z08:00 AMz17:00 PMFz-1r)r�jsonrr!�partnership_idr"r#�get_user_viewing_partnership_idr�	firstname�lastnamer(r;r3�	all_hours�timezone�range�	schedules�appendrr
�session�add�commit�copyrr)�rr!r>r6�day�resultrrr�
add_new_agentCs0


�

rNz/api/v1/agentscCs�tj�tjtjk���}g}|D]#}|�t|j|j	|j
|j|j|j
|j|j|j|j|j|j|jd�
�qtt|d��}d|jd<|S)z! External REST API endpoint.
    )
rr@rA�titler;r3�mobile�	extension�
departmentrCrE�available_from�available_torrr )rr$r%r!r	rr*rFrr@rArOr;r3rPrQrRrCrErSrTrrr+)r-�datar6r.rrr�
get_agentsfs*
�
rVN)�flaskrrr�flask_loginrr�
sqlalchemyr�buyercall.lib.util_restrr	�buyercall.extensionsr
�viewsr
�modelsrr�router/r7rNrVrrrr�<module>s&!