From ee3336485c82e7a330f8d1f93960f80cb04a6a3b Mon Sep 17 00:00:00 2001 From: JIANG Date: Mon, 3 Nov 2025 17:51:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=9B=91=E6=B5=8B=E7=82=B9?= =?UTF-8?q?=E6=96=B9=E6=A1=88=E5=88=9B=E5=BB=BAAPI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/main.py b/main.py index 5bc1c16..1367e3a 100644 --- a/main.py +++ b/main.py @@ -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)}")