U
    !e*                     @   s(   d dl T d dlmZ G dd deZdS )    )*)ApiViewc                       sJ   e Zd ZdZ fddZdd ZedddZej	j
 fd	d
Z  ZS )SDeskApiViewz/sd_apic                    s$   dd l }t j|jjjjgd d S )Nr   )Zextra_models_list)Z&modules.servicedesk.models.sdesk_toolssuper__init__ZservicedeskZmodelsZsdesk_tools
SdeskTools)selfmodules	__class__ (./modules/servicedesk/views/sdesk_api.pyr      s    zSDeskApiView.__init__c                 C   s.   t dt j  t jjrdS t jjr*dS dS )Nu   Доступ к SDesk апи: TF)gdebugZcurrent_personZcurrent_userZservicedesk_allowZ
user_localr   r   r   r   _check_access   s    zSDeskApiView._check_access)methodc                 O   s  z|j ddd\}}W n tk
r,   Y d S X |ds<d S || jkrJd S d }|dkrh| jd d d }|d	kr| jd d d }|d
kr| jd d d }|dkr| jd d d }|dkr| jd d d }|dkr| jd d d }|dkr| jd d d }|dkr"| jd d d }|dkr>| jd d d }|dkrZ| jd d d }|dkrv| jd d d }|dkr| jd d d }|dkr| jd d d }|dkr| jd d d  }|d!kr| jd d d" }|d#kr| jd d d$ }|d%kr| jd d d }|d&kr:| jd d d' }|d(krV| jd d d) }|d*krr| jd d d+ }|d,kr| jd d d- }|d.kr| jd/ d d }|d0kr| jd/ d d }|d1kr| jd/ d d }|d2kr| jd/ d d3 }|d4kr| jd5 d d }|d6kr6| jd5 d d }|d7krR| jd5 d d }|d8krn| jd5 d d" }|d9kr| jd5 d d3 }|d:kr| jd; d d }|d<kr| jd= d d> }|d?kr| jd d d }|d@kr| jd= d dA }|dBkr| jd d d }|dCkr2| jdD d dE }|dFkrN| jd d d }|dGkrj| jdD d dH }|dIkr| jdJ d d }|dKkr| jdJ d d }|dLkr| jd d d }|dMkr| jd d d }|dNkr| jd d d }|dOkr| jd d d }|dPkr.| jd d d }|dQkrJ| jd d d }|dRkrf| jd d d }|dSkr| jd d d }|dTkr| jd d d }|dUkr| jd d d }|dVkr| jd d d }|dWkr| jd d d }|dXkr| jdY d dZ }|d[kr*| jd\ d d }|d]krF| jd\ d d }|d^krb| jd_ d d }|d`kr~| jd_ d d }|dakr| jdb d d }|dckr| jdb d d }|ddkr| jde d d }|dfkr| jdD d d }|dgkr
| jdh d d }|dikr&| jdh d d }|djkrB| jdk d d }|dlkr^| jdk d d }|shd S | j| dm |dm< dn}||do< |S )pN.   )maxsplitZsdesk_z BaseModel.sdesk_get_ui_full_pathr   methodsZsdesk_get_ui_full_pathzCmfTask.sdesk_get_ui_full_pathz*CmfSDeskRequestType.sdesk_get_ui_full_pathz!CmfProject.sdesk_get_ui_full_pathzBaseModel.sdesk_all_models_metaZ	BaseModelZall_models_metazCmfProject.sdesk_getZ
CmfProjectZ	sdesk_getzCmfProject.sdesk_listZ
sdesk_listzCmfTask.sdesk_createZCmfTaskZsdesk_createzCmfTask.sdesk_listzCmfTask.sdesk_countZsdesk_countz%CmfTask.sdesk_timetracker_change_timeZ
sdesk_nonezCmfTask.sdesk_get_metaZget_metazCmfTask.sdesk_getzCmfTask.sdesk_ui_getZsdesk_ui_getzCmfTask.sdesk_updateZsdesk_updatez CmfTask.sdesk_field_options_listZsdesk_field_options_listzCmfTask.sdesk_lockzCmfTask.sdesk_approve_oneZsdesk_approve_onezCmfTask.sdesk_create_dummy_taskZsdesk_create_dummy_taskzCmfTask.sdesk_delete_dummy_taskZsdesk_delete_dummy_taskzCmfTask.sdesk_save_dummy_taskZsdesk_save_dummy_taskzCmfAttachment.sdesk_getZCmfAttachmentzCmfAttachment.sdesk_listzCmfAttachment.sdesk_createzCmfAttachment.sdesk_deletedeletezCmfComment.sdesk_createZ
CmfCommentzCmfComment.sdesk_getzCmfComment.sdesk_listzCmfComment.sdesk_updatezCmfComment.sdesk_deletezCmfSDeskSlaCycle.sdesk_listZCmfSDeskSlaCyclezCmfPersonVar.sdesk_getZCmfPersonVargetz-CmfPersonVar.sdesk_update_recent_options_listzCmfPersonVar.sdesk_pingZ
sdesk_pingz%CmfPersonVar.sdesk_update_recents_objz CmfPerson.sdesk_get_current_userZ	CmfPersonZget_current_userz"CmfPerson.sdesk_get_org_units_listzCmfPerson.sdesk_mark_viewedZmark_viewedzCmfDocument.sdesk_getZCmfDocumentzCmfDocument.sdesk_listzCmfGlobalSettings.sdesk_listz$CmfGlobalSettings.sdesk_get_settingszCmfLicense.sdesk_listzCmfGanttTask.sdesk_getzCmfGanttTask.sdesk_updatez CmfTimeTrackerHistory.sdesk_listzCmfTimeTrackerHistory.sdesk_getzCmfTaskFilter.sdesk_getzCmfTaskFilter.sdesk_updatezCmfRelationType.sdesk_listzCmfRole.sdesk_listzCmfRelationOption.sdesk_deletezCmfMenuTree.sdesk_get_treeZCmfMenuTreeZpublic_get_treezCmfSDeskRequestGroup.sdesk_getZCmfSDeskRequestGroupzCmfSDeskRequestGroup.sdesk_listzCmfSDeskRequestType.sdesk_listZCmfSDeskRequestTypezCmfSDeskRequestType.sdesk_getz#CmfSDeskKnowlageCategory.sdesk_listZCmfSDeskKnowlageCategoryz"CmfSDeskKnowlageCategory.sdesk_getzCmfRFile.sdesk_getZCmfRFilezCmfPerson.sdesk_getzCmfApprove.sdesk_getZ
CmfApprovezCmfApprove.sdesk_listzCmfApproveGroup.sdesk_getZCmfApproveGroupzCmfApproveGroup.sdesk_listZ_classFZ_use_simple)split
ValueError
startswithZrpc)r   r   argskwargsZproc_cls_nameZproc_methodZ
res_methodZ
use_simpler   r   r   rpc_prepare_method   s"   





























































zSDeskApiView.rpc_prepare_methodc                    s
   t   S )N)r   postr   r
   r   r   r      s    zSDeskApiView.post)__name__
__module____qualname__Z__url__r   r   strr   ZcmfZviewsactionr   __classcell__r   r   r
   r   r      s   	 Dr   N)Zcmf.includeZmodules.api.views.indexr   r   r   r   r   r   <module>   s   