| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- from __future__ import annotations
- from typing import Any, Dict, Optional
- from pydantic import BaseModel, ConfigDict, Field
- class BaseRequest(BaseModel):
- """所有请求模型基类:默认允许额外字段,避免破坏兼容性。"""
- model_config = ConfigDict(extra="allow")
- class RunTaskRequest(BaseRequest):
- task_name: str = Field(..., min_length=1)
- date_string: Optional[str] = None
- class TaskListRequest(BaseRequest):
- page: int = Field(default=1, ge=1)
- size: int = Field(default=50, ge=1, le=200)
- sort_by: str = Field(default="id", min_length=1)
- sort_dir: str = Field(default="desc", min_length=1)
- id: Optional[int] = None
- date_string: Optional[str] = None
- trace_id: Optional[str] = None
- task_status: Optional[int] = None
- class GetCoverRequest(BaseRequest):
- """GetCoverService 的请求体字段不固定,先保持兼容。"""
- # 用一个可选字段占位,避免空模型在某些场景不好读
- payload: Optional[Dict[str, Any]] = None
- class SaveTokenRequest(BaseRequest):
- """GzhCookieManager 的请求体字段不固定,先保持兼容。"""
- token: Optional[str] = None
|