HR-ATS-Portal/backend/users/models.py

30 lines
1.3 KiB
Python

from sqlalchemy import Column, Integer, String, ForeignKey, DateTime, Boolean, UUID
from sqlalchemy.orm import relationship
import uuid
from datetime import datetime
from sqlmodel import SQLModel
from role.models import Roles
class Users(SQLModel,table=True):
__tablename__ = "users"
id = Column(UUID, primary_key=True,default=uuid.uuid4)
name = Column(String,nullable=False)
email = Column(String,nullable=False,unique=True)
role_id = Column(Integer,ForeignKey("roles.id"))
role = relationship("Roles",back_populates="users",foreign_keys=[role_id])
password = Column(String,nullable=False)
created_at = Column(DateTime,default=datetime.now)
updated_at = Column(DateTime,default=datetime.now)
is_active = Column(Boolean,default=True)
is_deleted = Column(Boolean,default=False)
# role = Column(String,nullable=False)
# company_id = Column(UUID,ForeignKey("companies.id"))
# company = relationship("Companies",back_populates="users")
# created_by = Column(UUID,ForeignKey("users.id"))
# created_by_user = relationship("Users",back_populates="users")
# updated_by = Column(UUID,ForeignKey("users.id"))
# updated_by_user = relationship("Users",back_populates="users")
# deleted_by = Column(UUID,ForeignKey("users.id"))
# deleted_by_user = relationship("Users",back_populates="users")