o
    "i                     @   sP   d Z ddlmZmZmZmZmZmZ ddlm	Z	 ddl
mZ G dd deZdS )z
User model
    )ColumnStringBooleanDateTimeInteger
ForeignKey)relationship)	BaseModelc                   @   s   e Zd ZdZdZddiZeedddddZeeddd	Z	eeddd	Z
eed
dddZeeeddd	ZeeddZeeddZeeddd	Zeedd	ZeddegdZedddddZdS )UserzO
    User model
    Represents a user in the system with role-based access
    usersschemapublic   TF)uniqueindexnullable)r   2   customer_user)defaultr   zpublic.tenants.id)r   Tenant)back_populatesforeign_keysUserRoleuserzall, delete-orphanzUserRole.user_id)r   cascader   N)__name__
__module____qualname____doc____tablename____table_args__r   r   emailnamehashed_passwordroler   r   	tenant_idr   	is_activeis_verifiedverification_tokenr   
last_loginr   tenant
user_roles r,   r,   7/lsinfo/ai/hellotax_ai/base_platform/app/models/user.pyr
   	   s    r
   N)r   
sqlalchemyr   r   r   r   r   r   sqlalchemy.ormr   app.models.baser	   r
   r,   r,   r,   r-   <module>   s
     