Files

28 lines
1.1 KiB
Python

"""Модель верификации профиля (Verified Badges)."""
import uuid
from datetime import datetime, timezone
from sqlalchemy import Column, DateTime, Boolean, String, func
from sqlalchemy.dialects.postgresql import UUID as PG_UUID
from sqlalchemy.orm import Mapped, mapped_column
from app.core.database import Base
class Verification(Base):
__tablename__ = "verifications"
id: Mapped[uuid.UUID] = mapped_column(PG_UUID(as_uuid=True), primary_key=True, default=uuid.uuid4)
user_id: Mapped[uuid.UUID] = mapped_column(PG_UUID(as_uuid=True), nullable=False, unique=True)
# Типы верификации
is_email_verified: Mapped[bool] = mapped_column(default=False)
is_phone_verified: Mapped[bool] = mapped_column(default=False)
is_id_verified: Mapped[bool] = mapped_column(default=False) # ID document
is_bank_verified: Mapped[bool] = mapped_column(default=False) # Bank account
verified_at: Mapped[datetime | None] = mapped_column(DateTime(timezone=True))
created_at: Mapped[datetime] = mapped_column(DateTime(timezone=True), server_default=func.now())