Files
MediaManager/media_manager/indexer/models.py
2026-01-05 19:30:42 +01:00

26 lines
786 B
Python

from uuid import UUID
from sqlalchemy import Integer, String
from sqlalchemy.dialects.postgresql import ARRAY
from sqlalchemy.orm import Mapped, mapped_column
from sqlalchemy.sql.sqltypes import BigInteger
from media_manager.database import Base
from media_manager.torrent.schemas import Quality
class IndexerQueryResult(Base):
__tablename__ = "indexer_query_result"
id: Mapped[UUID] = mapped_column(primary_key=True)
title: Mapped[str]
download_url: Mapped[str]
seeders: Mapped[int]
flags = mapped_column(ARRAY(String))
quality: Mapped[Quality]
season = mapped_column(ARRAY(Integer))
size = mapped_column(BigInteger)
usenet: Mapped[bool]
age: Mapped[int]
score: Mapped[int] = mapped_column(default=0)
indexer: Mapped[str | None]