34 lines
1.2 KiB
Python
34 lines
1.2 KiB
Python
from fastapi import APIRouter, Depends, HTTPException, status
|
|
from sqlalchemy.orm import Session
|
|
from typing import List
|
|
from ..core.database import get_db
|
|
from ..core.response_code import ResponseCode, ResponseMessage
|
|
from ..schemas.level_data import (
|
|
LevelDataRequest,
|
|
LevelDataListResponse,
|
|
LevelDataResponse
|
|
)
|
|
from ..services.level_data import LevelDataService
|
|
|
|
router = APIRouter(prefix="/level_data", tags=["水准数据"])
|
|
|
|
@router.post("/get_level_data_by_project", response_model=LevelDataListResponse)
|
|
def get_level_data_by_project(request: LevelDataRequest, db: Session = Depends(get_db)):
|
|
"""
|
|
通过标段名称获取全部水准线路
|
|
"""
|
|
try:
|
|
level_service = LevelDataService()
|
|
level_data_list = level_service.get_level_data_by_project_name(db, project_name=request.project_name, nyid_max=request.nyid_max)
|
|
|
|
return LevelDataListResponse(
|
|
code=ResponseCode.SUCCESS,
|
|
message="查询成功",
|
|
total=len(level_data_list),
|
|
data=level_data_list
|
|
)
|
|
except Exception as e:
|
|
raise HTTPException(
|
|
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
|
|
detail=f"查询失败: {str(e)}"
|
|
) |