B
    bz                 @   sP   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)ValidationError)gettext_lazy)AdminRuntimeWarning)AbstractCloudc                   sx   e Zd ZejddZejedddZejedddZ	dd Z
d	d
 Z fddZd fdd	ZG dd dZ  ZS )AllowanceTypeT)Zprimary_keyZallowance_field_code   )Z
max_lengthZallowance_filed_namec             C   s   d | jS )Nz{0})formatallowance_name)self r   BG:\easytimepro\master/mysite/payroll\models\model_allowancetype.py__str__   s    zAllowanceType.__str__c             C   sl   t jj| j| jd}|r4|d j| jkr4ttdt jj| j| jd}|rh|d j| jkrhttdd S )N)Zallowance_code__exact
company_idr   Z"this_allowance_code_already_exists)Zallowance_name__exactr   Z"this_allowance_name_already_exists)	r   objectsfilterallowance_coder   Zpkr   _r
   )r   objr   r   r   clean   s    zAllowanceType.cleanc                s   t t|   d S )N)superr   save)r   )	__class__r   r   r      s    zAllowanceType.saveNFc                sB   ddl m} |jj| jd}|r,ttdtt| 	|| d S )Nr   )Reimbursement)Zallowance_type_idz$The allowance type is already in use)
Zmysite.payroll.modelsr   r   r   idr   r   r   r   delete)r   ZusingZkeep_parentsr   Zls)r   r   r   r      s
    zAllowanceType.deletec               @   s"   e Zd ZdgZdZedZeZdS )zAllowanceType.Metar   ZpayrollZpayroll_model_allowancetypeN)__name__
__module____qualname__ZorderingZ	app_labelr   Zverbose_nameZverbose_name_pluralr   r   r   r   Meta$   s   r   )NF)r   r   r   r   Z	AutoFieldr   Z	CharFieldr   r   r
   r   r   r   r   r   __classcell__r   r   )r   r   r   	   s   r   N)Z	django.dbr   Zdjango.formsr   Zdjango.utils.translationr   r   Zmysite.admin.exceptionsr   Z!mysite.admin.abstract_cloud_modelr   r   r   r   r   r   <module>   s
   