U
    ŷi                     @   s   d dl Z d dlmZmZmZ d dlmZmZ d dlmZm	Z	m
Z
mZmZmZ d dlmZmZmZ d dlmZ G dd deZdS )	    N)datetimedatetimezone)ListOptional)StringBooleanIntegerDateDateTime
ForeignKey)Mappedmapped_columnrelationship)Basec                   @   s  e Zd ZU dZeeddd dZee e	d< eeddZ
ee e	d	< eeddZee e	d
< eeddZee e	d< eeedddddZeee  e	d< eeddZeee  e	d< eedddZee e	d< eedddZee e	d< eedddd dZee e	d< eedddd dd dZee e	d< edddZeed  e	d < ed!d"d#d$d%Zee d!  e	d&< ed'd"d#d(Z!ee d'  e	d)< ed*d"d#d(Z"ee d*  e	d+< d,S )-Employee	employeesTc                   C   s   t t S N)struuiduuid4 r   r   :/var/www/html/me.goteku.com/backend/app/models/employee.py<lambda>       zEmployee.<lambda>)primary_keydefaultidF)nullablenameaccount_nameaccount_numberzcompanies.idzSET NULL)ondelete
company_id	hire_dater   )r   r   base_salary)r   r   active)r   c                   C   s   t tjS r   r   nowr   utcr   r   r   r   r      r   )r   
created_atc                   C   s   t tjS r   r'   r   r   r   r   r      r   c                   C   s   t tjS r   r'   r   r   r   r   r      r   )r   onupdate
updated_atCompany)back_populatescompany_relSalaryHistoryZemployeezall, delete-orphanzSalaryHistory.effective_date)r.   cascadeorder_bysalary_historyLoan)r.   r1   loansBenefitbenefitsN)#__name__
__module____qualname____tablename__r   r   r   r   r   __annotations__r   r    r!   r   r#   r   r
   r$   r   r	   r%   intr   r&   boolr   r*   r   r,   r   r/   r3   r   r5   r7   r   r   r   r   r   	   s\   
   
   r   )r   r   r   r   typingr   r   
sqlalchemyr   r   r	   r
   r   r   sqlalchemy.ormr   r   r   app.core.databaser   r   r   r   r   r   <module>   s    