B
    eb-                 @   st   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 d dlmZ d dlmZ G d	d
 d
eZdS )    )models)gettext_lazy)AdminRuntimeWarning)db_const)	APP_LABEL)
Department)DepartmentForeignKey)AbstractCloudc                   sp   e Zd ZejedejdZe	e
edejdZejeddddZdd	 Zd fdd	ZG dd dZ  ZS )DeptAttRuleZdeptAttRule_field_alias)Z
max_lengthZdeptAttRule_field_department)verbose_nameZ	on_deleteZ deptAttRule_field_departmentRuleT)r   ZblankZnullc             C   s   d | jS )Nz{0})formatalias)self r   <G:\easytimepro\master/mysite/att\models\model_deptattrule.py__str__   s    zDeptAttRule.__str__FNc                s   dd l }tjj| jdj| jd}|rBtdtd d| jj	i |
| j}|d }|d }	|d	 }
|d
 }|
dk s|dk s|dk s|	dk rttdtt| |||| d S )Nr   )
department)pkz%sz!%(department)s_already_setup_ruler   mins_late_absentsmins_early_absentsmiss_in_minsmiss_out_minsZplease_input_a_valid_number)jsonr
   Zobjectsfilterr   Zexcluder   r   _Z	dept_nameloadsrulesupersave)r   Zforce_insertZforce_updateZusingZupdate_fieldsr   ZobjsZrulesr   r   r   r   )	__class__r   r   r      s     zDeptAttRule.savec               @   s    e Zd ZeZedZeZdZdS )zDeptAttRule.MetaZatt_model_deptAttRule)deleteZchangeviewN)	__name__
__module____qualname__r   Z	app_labelr   r   Zverbose_name_pluralZdefault_permissionsr   r   r   r   Meta'   s   r%   )FFNN)r"   r#   r$   r   Z	CharFieldr   r   ZMAX_TIME_INTERVAL_ALIASr   r   r   ZCASCADEr   Z	TextFieldr   r   r   r%   __classcell__r   r   )r   r   r
      s    r
   N)Z	django.dbr   Zdjango.utils.translationr   r   Zmysite.admin.exceptionsr   Z
mysite.attr   Zmysite.att.db_constr   Zmysite.personnel.modelsr   Zmysite.personnel.fieldsr   Z!mysite.admin.abstract_cloud_modelr	   r
   r   r   r   r   <module>   s   