From 5e8d738a27edcb7dae8a28a6d60bf0b881ce79c6 Mon Sep 17 00:00:00 2001 From: DingZQ Date: Wed, 5 Feb 2025 22:24:28 +0800 Subject: [PATCH] Add fastapi getelementproperties --- main.py | 5 +++++ tjnetwork.py | 9 +++++++++ 2 files changed, 14 insertions(+) diff --git a/main.py b/main.py index 7cdc973..4547873 100644 --- a/main.py +++ b/main.py @@ -429,6 +429,11 @@ async def fast_get_node_properties(network: str, node: str) -> dict[str, Any]: async def fast_get_link_properties(network: str, link: str) -> dict[str, Any]: return get_link_properties(network, link) +# type can be 'node' or 'link' +@app.get('/getelementproperties/') +async def fast_get_element_properties(network: str, type: str, element: str) -> dict[str, Any]: + return get_element_properties(network, type, element) + ############################################################ # title 1.[TITLE] ############################################################ diff --git a/tjnetwork.py b/tjnetwork.py index c7c777d..0c54d5d 100644 --- a/tjnetwork.py +++ b/tjnetwork.py @@ -409,6 +409,15 @@ def get_link_properties(name: str, link_id: str) -> dict[str, Any]: elif api.is_valve(name, link_id): return api.get_valve(name, link_id) +# type can be 'node' or 'link' +def get_element_properties(name: str, type: str, element_id: str) -> dict[str, Any]: + if type == 'node': + return get_node_properties(name, element_id) + elif type == 'link': + return get_link_properties(name, element_id) + else: + return {} + ############################################################ # title 1.[TITLE] ############################################################