o
    Ah                     @   s  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 d dlmZ d dlmZ e Zejde
d	eejfd
edejfddZejded	d ddddddeejeef	dededee dee dee dee dee dejdefddZejde
d	eejfdedejfddZejde
d	eejeefded
ededejdef
dd Zej de
d	eejfdedejfd!d"Z!dS )#    )	APIRouterHTTPExceptionDependsRequest)Optional)database)PartnerPartnerCreatePartnerUpdatePartners)User)get_current_userdetails)partners/)response_modelpartnerdbc              
   C   s^   z	t | |}|W S  ty } ztdt|dd }~w ty. } ztdddd }~ww )N  status_codedetail  Internal server error)partner_servicecreate_partner_service
ValueErrorr   str	Exception)r   r   created_partnervee r!   8/var/www/html/moveengine/app/v1/routers/saas/partners.pycreate_partner   s   r#   
   Nskiplimitqpartner_typecreated_date_fromcreated_date_tostatuscurrent_userc	                 C   sN   t d zt| ||||||||	}	|	W S  ty& }
 ztdddd }
~
ww )Nz!partners list 3434343434343343434r   r   r   )printr   get_partners_servicer   r   )r%   r&   r'   r(   r)   r*   r+   r   r,   resultr    r!   r!   r"   get_partners   s   r0   z/{partner_id}
partner_idc              
   C   V   zt | |}|d u rtddd|W S  ty* } ztddt| dd }~ww )N  Partner not foundr   r   zError retrieving partner: )r   get_partner_servicer   r   r   )r1   r   r   r    r!   r!   r"   get_partner+      r6   requestc              
   C   sV   zt | |||}|W S  ty } z|d }~w ty* } ztdddd }~ww )Nr   r   r   )r   update_partner_servicer   r   )r1   r   r8   r   r,   updated_partnerher    r!   r!   r"   update_partner8   s   r<   c              
   C   r2   )Nr3   r4   r   r   zError deleting partner: )r   delete_partner_servicer   r   r   )r1   r   deleted_partnerr    r!   r!   r"   delete_partnerH   r7   r?   )"fastapir   r   r   r   typingr   app.dbr   app.v1.models.saas.partnersr   r	   r
   r   app.v1.models.saas.usersmodelr   app.v1.dependencies.authr   app.v1.services.saasr   r   routerpostget_mongo_dbMongoDBr#   getintr   r0   r6   r<   deleter?   r!   r!   r!   r"   <module>   s    	