Files
railway_cloud/app/schemas/level_data.py
2025-11-19 12:01:47 +08:00

40 lines
1.2 KiB
Python

from pydantic import BaseModel, Field, ConfigDict
from typing import Optional, List, Any
from datetime import datetime
class LevelDataBase(BaseModel):
"""水准数据基础模型"""
linecode: Optional[str] = None
benchmarkids: Optional[str] = None
wsphigh: Optional[str] = None
NYID: Optional[str] = None
mtype: Optional[str] = None
wspversion: Optional[str] = None
barometric: Optional[str] = None
equipbrand: Optional[str] = None
instrumodel: Optional[str] = None
serialnum: Optional[str] = None
sjname: Optional[str] = None
temperature: Optional[str] = None
weather: Optional[str] = None
class LevelDataResponse(LevelDataBase):
"""水准数据响应模型"""
id: int
createDate: Optional[datetime] = None
model_config = ConfigDict(
from_attributes=True
)
class LevelDataRequest(BaseModel):
"""水准数据请求模型"""
project_name: str = Field(..., description="标段名称")
nyid_max: Optional[bool] = Field(False, description="是否只获取最新期数的水准数据")
class LevelDataListResponse(BaseModel):
"""水准数据列表响应格式"""
code: int = 0
message: str
total: int
data: List[LevelDataResponse] = []