from sqlalchemy import TIMESTAMP, Boolean, Column, DateTime, ForeignKey, Integer, String from sqlalchemy.orm import declarative_base Base = declarative_base() class UnitOfWork(Base): __tablename__ = "unit_of_work" unit_of_work_id = Column(Integer(), primary_key=True) activity_status = Column(String()) last_updated_at = Column(TIMESTAMP(timezone=True)) class ContentStatus(Base): __tablename__ = "content_status" content_status_id = Column(Integer(), primary_key=True) unit_of_work_id = Column(Integer()) context = Column(String()) content_name = Column(String()) content_status = Column(String()) failure_count = Column(Integer()) created_at = Column(TIMESTAMP(timezone=True)) metadata_process_status = Column(String()) content_size = Column(Integer()) last_checked_at = Column(TIMESTAMP(timezone=True)) latest_job_id = Column(String()) completed_at = Column(TIMESTAMP(timezone=True)) class ContentFailureLog(Base): __tablename__ = "content_failure_log" content_failure_log_id = Column(Integer(), primary_key=True) content_status_id = Column(Integer()) job_id = Column(String()) failure_code = Column(String()) failure_description = Column(String()) created_at = Column(TIMESTAMP(timezone=True))