feat: add contract template v3 api and legacy oss migration

This commit is contained in:
wren
2026-05-19 18:38:17 +08:00
parent afaba4dd99
commit 16e8668150
11 changed files with 1241 additions and 0 deletions
@@ -0,0 +1,27 @@
from pydantic import BaseModel, Field
class ContractTemplateListQueryDTO(BaseModel):
"""合同模板列表查询参数。"""
keyword: str | None = Field(None, description="关键词")
category_id: int | None = Field(None, description="分类ID")
category_name: str | None = Field(None, description="分类名称")
file_format: str | None = Field(None, description="文件格式")
is_featured: bool | None = Field(None, description="是否推荐")
page: int = Field(1, ge=1, description="页码")
page_size: int = Field(12, ge=1, le=200, description="分页大小")
sort_by: str = Field("updated_at", description="排序字段")
sort_order: str = Field("desc", description="排序方向")
class ContractTemplateSearchQueryDTO(BaseModel):
"""合同模板搜索参数。"""
q: str = Field(..., min_length=1, description="搜索关键词")
category_id: int | None = Field(None, description="分类ID")
category_name: str | None = Field(None, description="分类名称")
page: int = Field(1, ge=1, description="页码")
page_size: int = Field(12, ge=1, le=200, description="分页大小")
sort_by: str = Field("updated_at", description="排序字段")
sort_order: str = Field("desc", description="排序方向")