获取观测点id接口修改

This commit is contained in:
lhx
2025-12-01 18:00:50 +08:00
parent 36bcbc16b5
commit 2d69729a64
2 changed files with 43 additions and 10 deletions

View File

@@ -241,17 +241,22 @@ class CheckpointService(BaseService[Checkpoint]):
from ..models.settlement_data import SettlementData
# 1. 根据linecode查询水准数据表获取所有NYID去重
print(linecode)
nyid_query = db.query(LevelData.NYID).filter(LevelData.linecode == linecode).distinct()
nyid_list = [result.NYID for result in nyid_query.all() if result.NYID]
nyid_list = nyid_query.all()
if not nyid_list:
return []
print(nyid_list)
print("get_point_ids_by_linecode", nyid_list)
if not nyid_list or len(nyid_list) == 0:
return [], {}
print("nyid_list", nyid_list)
nyid_list = [result.NYID for result in nyid_list if result.NYID]
# print(nyid_list)
max_nyid_str = max(nyid_list, key=int)
nyid_list = []
nyid_list.append(max_nyid_str)
print(nyid_list)
# print(nyid_list)
# 2. 根据NYID列表查询沉降数据表获取所有point_id去重
point_id_query = db.query(
@@ -260,8 +265,13 @@ class CheckpointService(BaseService[Checkpoint]):
SettlementData.NYID.in_(nyid_list)
).distinct()
# print(point_id_query)
point_id_list = [f'{result.point_id}' for result in point_id_query.all() if result.point_id]
# -{db.query(Checkpoint.aname).filter(Checkpoint.point_id == result.point_id).first().aname}
point_id_dict = {item :db.query(Checkpoint.aname).filter(Checkpoint.point_id == item).first().aname for item in point_id_list}
return point_id_list,point_id_dict
point_id_dict = {}
print(point_id_dict)
for item in point_id_list:
checkpoint = db.query(Checkpoint.aname).filter(Checkpoint.point_id == item).first()
point_id_dict[item] = checkpoint.aname if checkpoint else None
# print(f"111" ,point_id_dict)
return point_id_list, point_id_dict