mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-11-11 00:01:55 +08:00
30 lines
1.0 KiB
Python
30 lines
1.0 KiB
Python
from fastapi import Depends, Query
|
|
|
|
from app.adapters.web.security.access import verify_token
|
|
from app.api.response import COLLECTION_MAX_PAGE_SIZE, ResponseAPIRouter
|
|
from app.chain.transfer.facade import TransferChain
|
|
from app.schemas.token import TokenPayload as _SchemaTokenPayload
|
|
from app.schemas.transfer import TransferQueuePageData as _SchemaTransferQueuePageData
|
|
|
|
router = ResponseAPIRouter()
|
|
|
|
|
|
@router.get( # type: ignore[misc]
|
|
"/queue/page",
|
|
summary="查询受限整理队列快照",
|
|
response_model=_SchemaTransferQueuePageData,
|
|
)
|
|
async def query_queue_page(
|
|
_: _SchemaTokenPayload = Depends(verify_token),
|
|
page: int = Query(1, ge=1),
|
|
count: int = Query(100, ge=1, le=COLLECTION_MAX_PAGE_SIZE),
|
|
) -> _SchemaTransferQueuePageData:
|
|
"""返回前端所需的有限整理队列窗口,避免全量队列阻塞接口序列化。"""
|
|
items, total = TransferChain().get_queue_tasks_page(page, count)
|
|
return _SchemaTransferQueuePageData(
|
|
items=items,
|
|
total=total,
|
|
page=page,
|
|
count=count,
|
|
)
|