From abcc4507815bbe6e96365e11d7439759f333e88a Mon Sep 17 00:00:00 2001 From: "WQY\\qiong" Date: Tue, 2 May 2023 18:19:13 +0800 Subject: [PATCH] Support fetch all keys and data --- api/__init__.py | 7 +++++-- api/s25_vertices.py | 12 ++++++++++++ api/s29_scada_device.py | 20 ++++++++++++-------- api/s31_scada_element.py | 19 +++++++++++-------- tjnetwork.py | 24 ++++++++++++++++++------ 5 files changed, 58 insertions(+), 24 deletions(-) diff --git a/api/__init__.py b/api/__init__.py index 4fa3293..47b16ae 100644 --- a/api/__init__.py +++ b/api/__init__.py @@ -116,13 +116,15 @@ from .batch_api import set_option_v3_ex from .s24_coordinates import get_node_coord from .s25_vertices import get_vertex_schema, get_vertex, set_vertex, add_vertex, delete_vertex +from .s25_vertices import get_all_vertex_links, get_all_vertices from .s26_labels import get_label_schema, get_label, set_label, add_label, delete_label from .s27_backdrop import get_backdrop_schema, get_backdrop, set_backdrop from .s29_scada_device import SCADA_DEVICE_TYPE_PRESSURE, SCADA_DEVICE_TYPE_DEMAND, SCADA_DEVICE_TYPE_QUALITY, SCADA_DEVICE_TYPE_LEVEL, SCADA_DEVICE_TYPE_FLOW -from .s29_scada_device import get_scada_device_schema, get_scada_devices, get_scada_device, set_scada_device, add_scada_device, delete_scada_device +from .s29_scada_device import get_scada_device_schema, get_scada_device, set_scada_device, add_scada_device, delete_scada_device +from .s29_scada_device import get_all_scada_device_ids, get_all_scada_devices from .clean_api import clean_scada_device from .s30_scada_device_data import get_scada_device_data_schema, get_scada_device_data, set_scada_device_data, add_scada_device_data, delete_scada_device_data @@ -130,7 +132,8 @@ from .clean_api import clean_scada_device_data from .s31_scada_element import SCADA_MODEL_TYPE_JUNCTION, SCADA_MODEL_TYPE_RESERVOIR, SCADA_MODEL_TYPE_TANK, SCADA_MODEL_TYPE_PIPE, SCADA_MODEL_TYPE_PUMP, SCADA_MODEL_TYPE_VALVE from .s31_scada_element import SCADA_ELEMENT_STATUS_OFFLINE, SCADA_ELEMENT_STATUS_ONLINE -from .s31_scada_element import get_scada_element_schema, get_scada_elements, get_scada_element, set_scada_element, add_scada_element, delete_scada_element +from .s31_scada_element import get_scada_element_schema, get_scada_element, set_scada_element, add_scada_element, delete_scada_element +from .s31_scada_element import get_all_scada_element_ids, get_all_scada_elements from .clean_api import clean_scada_element from .s32_region_util import get_nodes_in_boundary, get_nodes_in_region, calculate_convex_hull, calculate_boundary, inflate_boundary, inflate_region diff --git a/api/s25_vertices.py b/api/s25_vertices.py index 20f8cf5..3660ce9 100644 --- a/api/s25_vertices.py +++ b/api/s25_vertices.py @@ -75,6 +75,18 @@ def delete_vertex(name: str, cs: ChangeSet) -> ChangeSet: return execute_command(name, result) +def get_all_vertex_links(name: str) -> list[str]: + result : list[str] = [] + rows = read_all(name, 'select link from vertices order by link') + for row in rows: + result.append(str(row['link'])) + return result + + +def get_all_vertices(name: str) -> list[dict[str, Any]]: + return read_all(name, 'select * from vertices order by link') + + #-------------------------------------------------------------- # [EPA2][IN][OUT] # id x y diff --git a/api/s29_scada_device.py b/api/s29_scada_device.py index 337277c..6a9b19d 100644 --- a/api/s29_scada_device.py +++ b/api/s29_scada_device.py @@ -15,14 +15,6 @@ def get_scada_device_schema(name: str) -> dict[str, dict[str, Any]]: 'sd_type': {'type': 'str', 'optional': True , 'readonly': False}} -def get_scada_devices(name: str) -> list[str]: - result : list[str] = [] - rows = read_all(name, 'select id from scada_device order by id') - for row in rows: - result.append(str(row['id'])) - return result - - def get_scada_device(name: str, id: str) -> dict[str, Any]: sm = try_read(name, f"select * from scada_device where id = '{id}'") if sm == None: @@ -116,3 +108,15 @@ def delete_scada_device(name: str, cs: ChangeSet) -> ChangeSet: if get_scada_device(name, cs.operations[0]['id']) == {}: return ChangeSet() return execute_command(name, _delete_scada_device(name, cs)) + + +def get_all_scada_device_ids(name: str) -> list[str]: + result : list[str] = [] + rows = read_all(name, 'select id from scada_device order by id') + for row in rows: + result.append(str(row['id'])) + return result + + +def get_all_scada_devices(name: str) -> list[dict[str, Any]]: + return read_all(name, 'select * from scada_device order by id') diff --git a/api/s31_scada_element.py b/api/s31_scada_element.py index f4739ab..5b1f522 100644 --- a/api/s31_scada_element.py +++ b/api/s31_scada_element.py @@ -64,14 +64,6 @@ def get_scada_element_schema(name: str) -> dict[str, dict[str, Any]]: 'status' : {'type': 'str' , 'optional': True , 'readonly': False} } -def get_scada_elements(name: str) -> list[str]: - result : list[str] = [] - rows = read_all(name, 'select id from scada_element order by id') - for row in rows: - result.append(str(row['id'])) - return result - - def get_scada_element(name: str, id: str) -> dict[str, Any]: sm = try_read(name, f"select * from scada_element where id = '{id}'") if sm == None: @@ -178,3 +170,14 @@ def delete_scada_element(name: str, cs: ChangeSet) -> ChangeSet: if get_scada_element(name, cs.operations[0]['id']) == {}: return ChangeSet() return execute_command(name, _delete_scada_element(name, cs)) + + +def get_all_scada_element_ids(name: str) -> list[str]: + result : list[str] = [] + rows = read_all(name, 'select id from scada_element order by id') + for row in rows: + result.append(str(row['id'])) + return result + +def get_all_scada_elements(name: str) -> list[dict[str, Any]]: + return read_all(name, 'select * from scada_element order by id') diff --git a/tjnetwork.py b/tjnetwork.py index 208fe9c..44fafe3 100644 --- a/tjnetwork.py +++ b/tjnetwork.py @@ -836,6 +836,12 @@ def add_vertex(name: str, cs: ChangeSet) -> ChangeSet: def delete_vertex(name: str, cs: ChangeSet) -> ChangeSet: return api.delete_vertex(name, cs) +def get_all_vertex_links(name: str) -> list[str]: + return api.get_all_vertex_links(name) + +def get_all_vertices(name: str) -> list[dict[str, Any]]: + return api.get_all_vertices(name) + ############################################################ # label 26.[LABELS] @@ -883,9 +889,6 @@ def set_backdrop(name: str, cs: ChangeSet) -> ChangeSet: def get_scada_device_schema(name: str) -> dict[str, dict[str, Any]]: return api.get_scada_device_schema(name) -def get_scada_devices(name: str) -> list[str]: - return api.get_scada_devices(name) - def get_scada_device(name: str, id: str) -> dict[str, Any]: return api.get_scada_device(name, id) @@ -901,6 +904,12 @@ def delete_scada_device(name: str, cs: ChangeSet) -> ChangeSet: def clean_scada_device(name: str) -> ChangeSet: return api.clean_scada_device(name) +def get_all_scada_device_ids(name: str) -> list[str]: + return api.get_all_scada_device_ids(name) + +def get_all_scada_devices(name: str) -> list[dict[str, Any]]: + return api.get_all_scada_devices(name) + ############################################################ # scada_device_data 30 @@ -936,9 +945,6 @@ def clean_scada_device_data(name: str) -> ChangeSet: def get_scada_element_schema(name: str) -> dict[str, dict[str, Any]]: return api.get_scada_element_schema(name) -def get_scada_elements(name: str) -> list[str]: - return api.get_scada_elements(name) - def get_scada_element(name: str, id: str) -> dict[str, Any]: return api.get_scada_element(name, id) @@ -954,6 +960,12 @@ def delete_scada_element(name: str, cs: ChangeSet) -> ChangeSet: def clean_scada_element(name: str) -> ChangeSet: return api.clean_scada_element(name) +def get_all_scada_element_ids(name: str) -> list[str]: + return api.get_all_scada_device_ids(name) + +def get_all_scada_elements(name: str) -> list[dict[str, Any]]: + return api.get_all_scada_devices(name) + ############################################################ # region_util 32