sync
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
import uuid
|
||||
|
||||
from sqlalchemy import UUID
|
||||
from sqlalchemy import UUID, ForeignKey
|
||||
from sqlalchemy.orm import Mapped, mapped_column
|
||||
|
||||
from api.infrastructure.persistence.models.base import Base
|
||||
|
||||
|
||||
class CompanyModel(Base):
|
||||
__tablename__ = "companies"
|
||||
__tablename__ = "company"
|
||||
|
||||
id: Mapped[uuid.UUID] = mapped_column(
|
||||
UUID(as_uuid=True),
|
||||
@@ -15,3 +15,45 @@ class CompanyModel(Base):
|
||||
)
|
||||
name: Mapped[str]
|
||||
email: Mapped[str] = mapped_column(unique=True)
|
||||
address: Mapped[str]
|
||||
owner_id: Mapped[uuid.UUID] = mapped_column(
|
||||
ForeignKey("users.id", ondelete="CASCADE"),
|
||||
)
|
||||
|
||||
|
||||
class DepartmentModel(Base):
|
||||
__tablename__ = "department"
|
||||
|
||||
id: Mapped[uuid.UUID] = mapped_column(
|
||||
UUID(as_uuid=True),
|
||||
primary_key=True,
|
||||
)
|
||||
name: Mapped[str]
|
||||
address: Mapped[str]
|
||||
company_id: Mapped[uuid.UUID] = mapped_column(
|
||||
ForeignKey("company.id", ondelete="CASCADE")
|
||||
)
|
||||
|
||||
|
||||
class CompanyDepartmentModel(Base):
|
||||
__tablename__ = "company_department_m2m"
|
||||
company_id: Mapped[uuid.UUID] = mapped_column(
|
||||
ForeignKey("company.id", ondelete="CASCADE"),
|
||||
primary_key=True,
|
||||
)
|
||||
department_id: Mapped[uuid.UUID] = mapped_column(
|
||||
ForeignKey("department.id", ondelete="CASCADE"),
|
||||
primary_key=True,
|
||||
)
|
||||
|
||||
|
||||
class DepartmentUserModel(Base):
|
||||
__tablename__ = "department_user_m2m"
|
||||
department_id: Mapped[uuid.UUID] = mapped_column(
|
||||
ForeignKey("department.id", ondelete="CASCADE"),
|
||||
primary_key=True,
|
||||
)
|
||||
user_id: Mapped[uuid.UUID] = mapped_column(
|
||||
ForeignKey("users.id"),
|
||||
primary_key=True,
|
||||
)
|
||||
|
@@ -14,5 +14,6 @@ class UserModel(Base):
|
||||
primary_key=True,
|
||||
)
|
||||
name: Mapped[str]
|
||||
last_name: Mapped[str]
|
||||
email: Mapped[str] = mapped_column(unique=True)
|
||||
hashed_password: Mapped[str]
|
||||
|
Reference in New Issue
Block a user