from datetime import datetime from uuid import UUID from sqlalchemy import BigInteger, Column, DateTime, String, func from sqlalchemy.dialects.postgresql import JSONB, UUID as PG_UUID from app.db.base import Base class BotDraft(Base): __tablename__ = "bot_drafts" id = Column(PG_UUID(as_uuid=True), primary_key=True, server_default=func.gen_random_uuid()) chat_id = Column(BigInteger, nullable=False) kind = Column(String(16), nullable=False) payload = Column(JSONB, nullable=False, default=dict) missing = Column(JSONB) status = Column(String(16), nullable=False, default="active") source = Column(String(16)) review_message_id = Column(BigInteger) last_bale_update_at = Column(DateTime(timezone=True)) created_at = Column(DateTime(timezone=True), server_default=func.now()) updated_at = Column(DateTime(timezone=True), onupdate=func.now())