From 0144295b430aae118de1838b3687214be00dd573 Mon Sep 17 00:00:00 2001 From: DingZQ Date: Sun, 18 Sep 2022 09:35:11 +0800 Subject: [PATCH] Add pipe fastapi --- main.py | 230 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 229 insertions(+), 1 deletion(-) diff --git a/main.py b/main.py index b44275e..086369f 100644 --- a/main.py +++ b/main.py @@ -140,7 +140,10 @@ def fastapi_is_curve(network: str, pattern: str) -> bool: return is_pattern(network, pattern) -# junction +############################################################ +# junction 2.[JUNCTIONS] +############################################################ + @app.post("/addjunction/") async def fastapi_add_junction(network: str, junction: str, x: float, y: float, z: float) -> ChangeSet: return add_junction(network, junction, x, y, z) @@ -182,6 +185,231 @@ async def fastapi_set_junction_pattern(network: str, junction: str, pattern: str return set_junction_pattern(network, junction, pattern) +############################################################ +# reservoir 3.[RESERVOIRS] +############################################################ + +@app.post("addreservoir/") +def fastapi_add_reservoir(name: str, reservoir_id: str, x: float, y: float, head: float) -> ChangeSet: + return add_reservoir(name, reservoir_id, x, y, head) + +@app.post("/deletereservoir/") +def fastapi_delete_reservoir(name: str, reservoir_id: str) -> ChangeSet: + return delete_reservoir(name, reservoir_id) + +@app.get("/getreservoirhead/") +def fastapi_get_reservoir_head(name: str, reservoir_id: str) -> float | None: + return get_reservoir_head(name, reservoir_id) + +@app.get("/getreservoirpattern/") +def fastapi_get_reservoir_pattern(name: str, reservoir_id: str) -> str | None: + return get_reservoir_pattern(name, reservoir_id) + +@app.get("/getreservoircoord/") +def fastapi_get_reservoir_coord(name: str, reservoir_id: str) -> dict[str, float] | None: + return get_reservoir_coord(name, reservoir_id) + +@app.post("/setreservoirhead/") +def fastapi_set_reservoir_head(name: str, reservoir_id: str, head: float) -> ChangeSet: + return set_reservoir_head(name, reservoir_id, head) + +@app.post("/setreservoirpattern/") +def fastapi_set_reservoir_pattern(name: str, reservoir_id: str, pattern: str) -> ChangeSet: + return set_reservoir_pattern(name, reservoir_id, pattern) + +@app.post("/setreservoircoord/") +def fastapi_set_reservoir_coord(name: str, reservoir_id: str, x: float, y: float) -> ChangeSet: + return set_reservoir_coord(name, reservoir_id, x, y) + +############################################################ +# reservoir 3.[RESERVOIRS] +############################################################ + +@app.post("/addreservoir/") +def fastapi_add_reservoir(name: str, reservoir_id: str, x: float, y: float, head: float) -> ChangeSet: + return add_reservoir(name, reservoir_id, x, y, head) + +@app.post("/deletereservoir/") +def fastapi_delete_reservoir(name: str, reservoir_id: str) -> ChangeSet: + return delete_reservoir(name, reservoir_id) + +@app.get("/getreservoirhead/") +def fastapi_get_reservoir_head(name: str, reservoir_id: str) -> float | None: + return get_reservoir_head(name, reservoir_id) + +@app.get("/getreservoirpattern/") +def fastapi_get_reservoir_pattern(name: str, reservoir_id: str) -> str | None: + return get_reservoir_pattern(name, reservoir_id) + +@app.get("/getreservoircoord/") +def fastapi_get_reservoir_coord(name: str, reservoir_id: str) -> dict[str, float] | None: + return get_reservoir_coord(name, reservoir_id) + +@app.get("/getreservoirhead/") +def fastapi_get_reservoir_head(name: str, reservoir_id: str, head: float) -> ChangeSet: + return set_reservoir_head(name, reservoir_id, head) + +@app.get("/getreservoirpattern/") +def fastapi_get_reservoir_pattern(name: str, reservoir_id: str, pattern: str) -> ChangeSet: + return set_reservoir_pattern(name, reservoir_id, pattern) + +@app.get("/getreservoircoord/") +def fastapi_get_reservoir_coord(name: str, reservoir_id: str, x: float, y: float) -> ChangeSet: + return set_reservoir_coord(name, reservoir_id, x, y) + +############################################################ +# tank 4.[TANKS] +############################################################ + +@app.post("/addtank/") +def fastapi_add_tank(name: str, tank_id: str, x: float, y: float, elevation: float, init_level: float = 0, min_level: float = 0, max_level: float = 0, diameter: float = 0, min_vol: float = 0) -> ChangeSet: + return add_tank(name, tank_id, x, y, elevation, init_level, min_level, max_level, diameter, min_vol) + +@app.post("/deletetank/") +def fastapi_delete_tank(name: str, tank_id: str) -> ChangeSet: + return delete_tank(name, tank_id) + +@app.get("/gettankelevation/") +def fastapi_get_tank_elevation(name: str, tank_id: str) -> float | None: + return get_tank_elevation(name, tank_id) + +@app.get("/gettankinitlevel/") +def fastapi_get_tank_init_level(name: str, tank_id: str) -> float | None: + return get_tank_init_level(name, tank_id) + +@app.get("/gettankminlevel/") +def fastapi_get_tank_min_level(name: str, tank_id: str) -> float | None: + return get_tank_min_level(name, tank_id) + +@app.get("/gettankmaxlevel/") +def fastapi_get_tank_max_level(name: str, tank_id: str) -> float | None: + return get_tank_max_level(name, tank_id) + +@app.get("/gettankdiameter/") +def fastapi_get_tank_diameter(name: str, tank_id: str) -> float | None: + return get_tank_diameter(name, tank_id) + +@app.get("/gettankminvol/") +def fastapi_get_tank_min_vol(name: str, tank_id: str) -> float | None: + return get_tank_min_vol(name, tank_id) + +@app.get("/gettankvolcurve/") +def fastapi_get_tank_vol_curve(name: str, tank_id: str) -> str | None: + return get_tank_vol_curve(name, tank_id) + +@app.get("/gettankoverflow/") +def fastapi_get_tank_overflow(name: str, tank_id: str) -> str | None: + return get_tank_overflow(name, tank_id) + +@app.get("/gettankcoord/") +def fastapi_get_tank_coord(name: str, tank_id: str) -> dict[str, float] | None: + return get_tank_coord(name, tank_id) + +@app.post("/settankelevation/") +def fastapi_set_tank_elevation(name: str, tank_id: str, elevation: float) -> ChangeSet: + return set_tank_elevation(name, tank_id, elevation) + +@app.post("/settankinitlevel/") +def fastapi_set_tank_init_level(name: str, tank_id: str, init_level: float) -> ChangeSet: + return set_tank_init_level(name, tank_id, init_level) + +@app.post("/settankminlevel/") +def fastapi_set_tank_min_level(name: str, tank_id: str, min_level: float) -> ChangeSet: + return set_tank_min_level(name, tank_id, min_level) + +@app.post("/settankmaxlevel/") +def fastapi_set_tank_max_level(name: str, tank_id: str, max_level: float) -> ChangeSet: + return set_tank_max_level(name, tank_id, max_level) + +@app.post("settankdiameter//") +def fastapi_set_tank_diameter(name: str, tank_id: str, diameter: float) -> ChangeSet: + return set_tank_diameter(name, tank_id, diameter) + +@app.post("/settankminvol/") +def fastapi_set_tank_min_vol(name: str, tank_id: str, min_vol: float) -> ChangeSet: + return set_tank_min_vol(name, tank_id, min_vol) + +@app.post("/settankvolcurve/") +def fastapi_set_tank_vol_curve(name: str, tank_id: str, vol_curve: str) -> ChangeSet: + return set_tank_vol_curve(name, tank_id, vol_curve) + +@app.post("/settankoverflow/") +def fastapi_set_tank_overflow(name: str, tank_id: str, overflow: str) -> ChangeSet: + return set_tank_overflow(name, tank_id, overflow) + +@app.post("/settankcoord/") +def fastapi_set_tank_coord(name: str, tank_id: str, x: float, y: float) -> ChangeSet: + return set_tank_coord(name, tank_id, x, y) + +############################################################ +# pipe 4.[PIPES] +############################################################ + +@app.post("/addpipe/") +def fastapi_add_pipe(name: str, pipe_id: str, node1: str, node2: str, length: float = 0, diameter: float = 0, roughness: float = 0, minor_loss: float = 0, status: str = PIPE_STATUS_OPEN) -> ChangeSet: + return add_pipe(name, pipe_id, node1, node2, length, diameter, roughness, minor_loss, status) + +@app.post("/deletepipe/") +def fastapi_delete_pipe(name: str, pipe_id: str) -> ChangeSet: + return delete_pipe(name, pipe_id) + +@app.get("/getpipenode1/") +def fastapi_get_pipe_node1(name: str, pipe_id: str) -> str | None: + return get_pipe_node1(name, pipe_id) + +@app.get("/getpipenode2/") +def fastapi_get_pipe_node2(name: str, pipe_id: str) -> str | None: + return get_pipe_node2(name, pipe_id) + +@app.get("/getpipelength/") +def fastapi_get_pipe_length(name: str, pipe_id: str) -> float | None: + return get_pipe_length(name, pipe_id) + +@app.get("/getpipediameter/") +def fastapi_get_pipe_diameter(name: str, pipe_id: str) -> float | None: + return get_pipe_diameter(name, pipe_id) + +@app.get("/getpiperoughness/") +def fastapi_get_pipe_roughness(name: str, pipe_id: str) -> float | None: + return get_pipe_roughness(name, pipe_id) + +@app.get("/getpipeminorloss/") +def fastapi_get_pipe_minor_loss(name: str, pipe_id: str) -> float | None: + return get_pipe_minor_loss(name, pipe_id) + +@app.get("/getpipestatus/") +def fastapi_get_pipe_status(name: str, pipe_id: str) -> str | None: + return get_pipe_status(name, pipe_id) + +@app.post("/setpipenode1/") +def fastapi_set_pipe_node1(name: str, pipe_id: str, node1: str) -> ChangeSet: + return set_pipe_node1(name, pipe_id, node1) + +@app.post("/setpipenode2/") +def fastapi_set_pipe_node2(name: str, pipe_id: str, node2: str) -> ChangeSet: + return set_pipe_node2(name, pipe_id, node2) + +@app.post("/setpipelength/") +def fastapi_set_pipe_length(name: str, pipe_id: str, length: float) -> ChangeSet: + return set_pipe_length(name, pipe_id, length) + +@app.post("/setpipediameter/") +def fastapi_set_pipe_diameter(name: str, pipe_id: str, diameter: float) -> ChangeSet: + return set_pipe_diameter(name, pipe_id, diameter) + +@app.post("/setpiperoughness/") +def fastapi_set_pipe_roughness(name: str, pipe_id: str, roughness: float) -> ChangeSet: + return set_pipe_roughness(name, pipe_id, roughness) + +@app.post("/setpipeminorloss/") +def fastapi_set_pipe_minor_loss(name: str, pipe_id: str, minor_loss: float) -> ChangeSet: + return set_pipe_minor_loss(name, pipe_id, minor_loss) + +@app.post("/setpipestatus/") +def fastapi_set_pipe_status(name: str, pipe_id: str, status: float) -> ChangeSet: + return set_pipe_status(name, pipe_id, status) + + # inp file @app.post("/uploadinp/", status_code=status.HTTP_200_OK) async def upload_inp(file: bytes = File(), name: str = None):