
    2Ai                     V    d dl  d dl  G d dej                  j                        Zy)    )*c            	          e Zd ZdZdZdZdZdZg dZdZ	e
j                  j                  e
j                  j                  dd	
      Z G d de
j                  j                   j"                        Z G d de
j                  j                   j$                        Ze
j                  j                  e
j                  j&                  dddddd      Ze
j                  j                  e
j                  j&                  dddddd      Ze
j                  j                  e
j                  j,                  ddd gddgd      Ze
j                  j                  e
j                  j0                  d d	gddddgd       Ze
j                  j                  e
j                  j&                  dd!dddd"      Ze
j                  j                  e
j                  j,                  d#gd$dd%      Ze
j                  j                  e
j                  j8                  d&'      Zed(        Ze
j                  j                  e
j                  j@                  d)d*d+      Z!y,)-
CmfOrgUnitOrgUnitpersonOUstaticT)codenametexttree_parentheadmembersu   Отделыu%   Руководитель отделаCmfRole)captionmodelc                       e Zd ZdZdZdZy)CmfOrgUnit.codeu   Код отделаu+   только латиница и цифрыuX   Используется для прав доступа и для email рассылкиN)__name__
__module____qualname__r   placeholdercomment     './modules/person/fields/cmf_org_unit.pyr
   r      s    'Clr   r
   c                       e Zd ZdZdZy)CmfOrgUnit.nameu   Имя отделаu4   отдел или подразделение и тпN)r   r   r   r   r   r   r   r   r   r      s    'Lr   r   CmfChatGroup	executorsu   ЧатыF)r   backrefrightno_aclr   visibleCmfPersonGroup
rg_members
tree_nodesu   Входит в группы)r"   r   r!   r#   nested_alias_ofr   u   Входит в отделid)r   nullablemodelsoptions_list_paramsr!   r   zCmfRole.personzCmfOrgUnit.tree_nodesu   Состав отдела)r+   r!   r#   nested_fieldsr   CmfChatTopic)r"   r   r!   r#   r   r$   	CmfPersonu   Владелец)r+   r   r$   readonlyu   Описание)r   c                 j    | j                   j                          | j                   j                         S )ux   
        Рекурсивно получаем всех сотрудников в дереве
        :return:
        )r'   load
all_nested)selfs    r   personszCmfOrgUnit.persons>   s'     	))++r   u*   Код запрета совмещенияu"   коды через запятую)r   r   r*   N)"r   r   r   ui_name	ui_modulecode_prefixacl_typefull_searchfields_orderverbose_namecmffieldsFieldCmfRelationr   r+   	CmfEntityr
   r   CmfGenericM2Mchat_groupsrg_member_ofCmfGenericRelationr   CmfGenericBackrefr'   chat_topics	cmf_owner	CmfMarkupr   propertyr5   CmfStrincompatible_combination_coder   r   r   r   r      sM   GIKHK NL!L::CJJ22<cktuDmszz##(( m
Mszz##(( M **""

  SW`dE # +K
 ::##

  4Dlcg$. $ 0L
 **""

%%,~!<0 # K !!

$$lI-FP]')@A+	 " -J **""

  NK`dE # +K 

  

%%{m"EE ! CI ::CJJ00:LMD, , %(JJ$4$4

<8	 %5 %!r   r   N)cmf.include
cmf.fieldsr=   r+   rA   r   r   r   r   <module>rO      s#     G%% Gr   