更新监测点方案创建API

This commit is contained in:
JIANG
2025-11-03 17:51:35 +08:00
parent b85bda00fc
commit ee3336485c

35
main.py
View File

@@ -4028,22 +4028,27 @@ async def fastapi_pressure_sensor_placement_kmeans(
username=item["username"],
)
# 后续改进合并两个接口为一个增加method、sensor_type参数选择方法
class Pressure_Sensor_Placement_Request(BaseModel):
network: str
scheme_name: str
sensor_type: str
method: str # "sensitivity" 或 "kmeans"
sensor_count: int
min_diameter: int = 0
user_name: str
@app.post("/sensorplacementscheme/create")
@app.get("/sensorplacementscheme/create")
async def fastapi_pressure_sensor_placement(
data: Pressure_Sensor_Placement_Request,
) -> dict[str, str]:
item = data.dict()
network: str = Query(...),
scheme_name: str = Query(...),
sensor_type: str = Query(...),
method: str = Query(...),
sensor_count: int = Query(...),
min_diameter: int = Query(0),
user_name: str = Query(...),
) -> str:
item = {
"network": network,
"scheme_name": scheme_name,
"sensor_type": sensor_type,
"method": method,
"sensor_count": sensor_count,
"min_diameter": min_diameter,
"user_name": user_name,
}
# 验证方法参数
if item["method"] not in ["sensitivity", "kmeans"]:
@@ -4069,7 +4074,7 @@ async def fastapi_pressure_sensor_placement(
username=item["user_name"],
)
return {"status": "success", "method": item["method"]}
return "success"
except Exception as e:
raise HTTPException(status_code=500, detail=f"执行失败: {str(e)}")