B
    b
                 @   s   d dl Z d dlmZ d dlmZ d dlmZ d dl	mZ d dl
mZ d dlmZmZ d dlmZ d dlmZ G dd	 d	ejZG d
d dejZeeG dd dejZdS )    N)gettext_lazy)forms)admin)DeptAttRule)fieldswidgets)
Departmentc               @   sD   e Zd ZejeddZeje	j
 edejdZejddZdS )BatchAddDepartmentRuleFormZdeptAttRule_field_alias)labelZdeptAttRule_field_department)Zquerysetr
   widget )initialN)__name__
__module____qualname__r   Z	CharField_aliasdjango_formsZModelMultipleChoiceFieldr   objectsallr   ZDepartmentSelectMultiple
departmentZ	TextFieldrule r   r   ;G:\easytimepro\master/mysite/att\admin\deptattrule_admin.pyr	      s
   
r	   c               @   s0   e Zd ZedZedZedZeZdd Z	dS )BatchAddDepartmentRuleZdepartmentRule_action_batchAddZ)departmentRule_action_batchAddDescriptionZ%departmentRule_action_batchAddHelpTxtc       	      O   s   | j jdd }| j jdd }| j jdd }|r|rtjj|dd}|rtt	dt
d dd|d	 i x"|D ]}t|||d
}|  qzW d S )Nr   r   r   )Zdepartment_id__indepartment__dept_namez%sz!%(department)s_already_setup_rule,r   )r   Zdepartment_idr   )requestZPOSTZgetlistgetr   r   filterZvalues_listr   ZValidationErrorr   joinZsave)	selfargskwargsZdeptsr   r   ZobjsZdeptZholidayr   r   r   action   s    
zBatchAddDepartmentRule.actionN)
r   r   r   r   Zverbose_nameZshort_descriptionZhelp_txtr	   Zaction_formr$   r   r   r   r   r      s
   r   c                   sB   e Zd ZdZdZejdejiiZ	e
fZdd Z fddZ  ZS )DeptAttRuleAdmin)idr   r   )r   r   r   c             C   s   dS )NFr   )r!   r   r   r   r   has_add_permission7   s    z#DeptAttRuleAdmin.has_add_permissionc                sH   |j j}tt| |j|j jd}|j jsD| rD|j|	 d}|S )N)Z
company_id)Zdepartment__in)
userZget_auth_deptsuperr%   get_querysetr   Zcurrent_companyZis_superuserexistsr   )r!   r   Z	auth_deptZ	query_set)	__class__r   r   r*   :   s
    zDeptAttRuleAdmin.get_queryset)r   r   r   Zlist_displayZlist_filterr   ZDepartmentForeignKeyr   ZDepartmentRadioSelectZformfield_overridesr   Zactionsr'   r*   __classcell__r   r   )r,   r   r%   ,   s   r%   )ZdatetimeZdjango.utils.translationr   r   Zdjangor   r   mysiter   Zmysite.adminZmysite.att.modelsr   Zmysite.personnelr   r   Zmysite.personnel.modelsr   Z
mysite.attZmodel_formsZZKActionFormr	   ZZKModelActionr   registerZZKModelAdminr%   r   r   r   r   <module>   s   