icp-api/models.py

30 lines
1.4 KiB
Python
Raw Normal View History

2025-01-22 19:34:16 +00:00
from pydantic import BaseModel, Field
from typing import List, Optional
# Pydantic 模型
class ICPRecord(BaseModel):
"""ICP备案记录模型"""
contentTypeName: str = Field(default="", description="内容类型名称")
domain: str = Field(default="", description="域名")
domainId: str | int = Field(default="", description="域名ID")
leaderName: str = Field(default="", description="负责人姓名")
limitAccess: str = Field(default="", description="限制访问")
mainId: str | int = Field(default="", description="主体ID")
mainLicence: str = Field(default="", description="主体许可证")
natureName: str = Field(default="", description="性质名称")
serviceId: str | int = Field(default="", description="服务ID")
serviceLicence: str = Field(default="", description="服务许可证")
unitName: str = Field(default="", description="单位名称")
updateRecordTime: str = Field(default="", description="更新记录时间")
class Config:
"""配置模型"""
json_encoders = {
int: str # 将整数类型自动转换为字符串
}
class QueryResponse(BaseModel):
"""查询响应模型"""
cached: bool = Field(default=False, description="是否从缓存中获取")
count: int = Field(default=0, description="数量")
data: List[ICPRecord] = Field(default_factory=list, description="ICP 记录列表")