o
    Ah                     @   sv  d dl mZmZmZmZmZ d dlmZmZm	Z	m
Z
 d dlmZ d dlmZ d dlmZmZmZmZ d dlmZmZmZmZmZmZmZmZ e Zejdedeejeefd	e d
e defddZ!ej"dedeejeefde defddZ#ej$dee ded d dedddeejfd	e de%de%dee fddZ&ej$dedeejfd	e defddZ'ej(dedeejfd	e de	e e
f defddZ)ej(d edeejfd	e d!ee	e e
f  defd"d#Z*ej$d$eded d dedddeejfd	e de%de%defd%d&Z+ej$d'ee ded d dedddeejfd	e de%de%dee fd(d)Z,d*S )+    )	APIRouterDependsHTTPExceptionQueryPath)OptionalListDictAny)database)get_current_userdetails)CommentAccountDetailAccountStatsLog)add_comment_servicedelete_comment_serviceget_comments_serviceget_account_detail_serviceupdate_account_detail_serviceupdate_sales_pipeline_serviceget_account_stats_serviceget_logs_servicez	/comment/)response_model
account_idcommentreturnc              
   C   sJ   | dd}z
t| |||}|W S  ty$ } ztdt|dd }~ww )Nidunknown  status_codedetail)getr   	Exceptionr   str)r   r   dbcurrent_userteam_member_idnew_commente r+   1/var/www/html/moveengine/app/v1/routers/cx/crm.pypost_comment   s   r-   z/comment/{comment_id}
comment_idc              
   C   s:   zt | |}|W S  ty } ztdt|dd }~ww Nr   r    )r   r$   r   r%   )r.   r&   r'   deletedr*   r+   r+   r,   delete_comment$   s   
r1   z/comments/{account_id})ge
      skiplimitc              
   C   >   z
t | |||}|W S  ty } ztdt|dd }~ww r/   )r   r$   r   r%   )r   r5   r6   r&   commentsr*   r+   r+   r,   get_comments0      r9   z/account_detail/{account_id}c                 C   s   t | |}|stddd|S )Ni  zAccount detail not foundr    )r   r   )r   r&   r"   r+   r+   r,   read_account_detail@   s   
r;   update_datac              
   C   <   z	t | ||}|W S  ty } ztdt|dd }~ww r/   )r   r$   r   r%   )r   r<   r&   r"   r*   r+   r+   r,   update_account_detailJ      r>   z/sales_pipeline/{account_id}pipelinec              
   C   r=   r/   )r   r$   r   r%   )r   r@   r&   r"   r*   r+   r+   r,   update_sales_pipelineY   r?   rA   z/account_stats/{account_id}c              
   C   s>   z
t | |||}|W S  ty } ztdt|dd }~ww r/   )r   r$   r   r%   )r   r5   r6   r&   statsr*   r+   r+   r,   get_account_statsh   r:   rC   z/logs/{account_id}c              
   C   r7   r/   )r   r$   r   r%   )r   r5   r6   r&   logsr*   r+   r+   r,   get_logsx   r:   rE   N)-fastapir   r   r   r   r   typingr   r   r	   r
   app.dbr   app.v1.dependencies.authr   app.v1.models.cx.crmr   r   r   r   app.v1.services.cx.crmr   r   r   r   r   r   r   r   routerpostget_mongo_dbr%   r-   deleter1   r#   intr9   r;   putr>   rA   rC   rE   r+   r+   r+   r,   <module>   s    (

	




