1线上每日接口修改
This commit is contained in:
@@ -450,8 +450,8 @@ def get_today_data(request: TodayDataRequest, db: Session = Depends(get_db)):
|
||||
# account_id = request.account_id # 根据根据实际需求决定是否需要
|
||||
|
||||
# 触发定时任务(如果需要传入参数,可在这里添加)
|
||||
# from ..utils.scheduler import scheduled_get_max_nyid_by_point_id
|
||||
# scheduled_get_max_nyid_by_point_id()
|
||||
from ..utils.scheduler import scheduled_get_max_nyid_by_point_id
|
||||
scheduled_get_max_nyid_by_point_id()
|
||||
|
||||
# 调用服务层获取数据
|
||||
account_id = request.account_id
|
||||
@@ -550,3 +550,39 @@ def get_checkpoint_by_point(request: PointByAccountRequest, db: Session = Depend
|
||||
total=0,
|
||||
data=[]
|
||||
)
|
||||
|
||||
# 根据水准线路获取所有的测点id
|
||||
@router.post("/get_checkpoint_by_linecode", response_model=DataResponse)
|
||||
def get_checkpoint_by_point(request: LevelDataQueryRequest, db: Session = Depends(get_db)):
|
||||
"""根据观测点ID获取观测点"""
|
||||
try:
|
||||
linecode = request.linecode
|
||||
level_service = LevelDataService()
|
||||
result_data = level_service.get_last_by_linecode(db, linecode=linecode)
|
||||
NYID = result_data.NYID if result_data else None
|
||||
settlement_service = SettlementDataService()
|
||||
result_data = settlement_service.get_by_nyid(db, nyid=NYID)
|
||||
|
||||
# 使用 __dict__ 转换(过滤内部属性)
|
||||
if result_data:
|
||||
# 复制字典并排除 SQLAlchemy 内部属性
|
||||
data_dict = result_data.__dict__.copy()
|
||||
data_dict.pop('_sa_instance_state', None) # 移除ORM内部状态属性
|
||||
data_list = [data_dict]
|
||||
else:
|
||||
data_list = []
|
||||
|
||||
return DataResponse(
|
||||
code=ResponseCode.SUCCESS,
|
||||
message="查询成功",
|
||||
total=len(data_list),
|
||||
data=data_list
|
||||
)
|
||||
except Exception as e:
|
||||
logger.error(f"Query section data failed: {str(e)}")
|
||||
return DataResponse(
|
||||
code=ResponseCode.QUERY_FAILED,
|
||||
message=f"{ResponseMessage.QUERY_FAILED}: {str(e)}",
|
||||
total=0,
|
||||
data=[]
|
||||
)
|
||||
Reference in New Issue
Block a user