数据处理基础

This commit is contained in:
lhx
2025-09-28 15:17:09 +08:00
parent 247bb71d55
commit f89f2eef37
16 changed files with 1314 additions and 0 deletions

View File

@@ -0,0 +1,95 @@
from pydantic import BaseModel
from typing import Any, Dict, List, Optional
# 原始数据导入请求
class OriginalDataImportRequest(BaseModel):
bfpcode: str
mtime: str
bffb: str
bfpl: str
bfpvalue: str
times: str
NYID: str
sort: Optional[int] = None
# 水准数据导入请求
class LevelDataImportRequest(BaseModel):
linecode: str
NYID: str
benchmarkids: Optional[str] = None
wsphigh: Optional[str] = None
createDate: Optional[str] = None
# 沉降数据导入请求
class SettlementDataImportRequest(BaseModel):
point_id: str
NYID: str
CVALUE: str
MAVALUE: str
MTIME_W: str
PRELOADH: str
PSTATE: str
createdate: str
day: str
day_jg: str
REMARK: Optional[str] = None
WORKINFO: Optional[str] = None
useflag: Optional[str] = None
mavalue_lj: Optional[str] = None
mavalue_bc: Optional[str] = None
sjName: Optional[str] = None
workinfoname: Optional[str] = None
isgzjdxz: Optional[str] = None
upd_remark: Optional[str] = None
# 观测点数据导入请求
class CheckpointDataImportRequest(BaseModel):
point_id: str
aname: str
section_id: str
burial_date: Optional[str] = None
# 断面数据导入请求
class SectionDataImportRequest(BaseModel):
section_id: str
mileage: str
work_site: str
status: str
number: str
basic_types: Optional[str] = None
height: Optional[str] = None
transition_paragraph: Optional[str] = None
# 批量导入请求
class BatchSectionDataImportRequest(BaseModel):
data: List[SectionDataImportRequest]
class BatchCheckpointDataImportRequest(BaseModel):
data: List[CheckpointDataImportRequest]
class BatchSettlementDataImportRequest(BaseModel):
data: List[SettlementDataImportRequest]
class BatchLevelDataImportRequest(BaseModel):
data: List[LevelDataImportRequest]
class BatchOriginalDataImportRequest(BaseModel):
data: List[OriginalDataImportRequest]
# 响应模型
class DataImportResponse(BaseModel):
success: bool
message: str
total_count: int
success_count: int
failed_count: int
failed_items: List[Dict[str, Any]] = []
# 兼容旧接口的模型
class ComprehensiveDataImportRequest(BaseModel):
data: Dict[str, Any]
class ComprehensiveDataImportResponse(BaseModel):
success: bool
message: str