Clean code
This commit is contained in:
@@ -32,25 +32,25 @@ from .s0_base import get_node_links
|
|||||||
from .s1_title import get_title_schema, get_title, set_title
|
from .s1_title import get_title_schema, get_title, set_title
|
||||||
|
|
||||||
from .s2_junctions import get_junction_schema, add_junction, get_junction, set_junction
|
from .s2_junctions import get_junction_schema, add_junction, get_junction, set_junction
|
||||||
from .del_cmd import delete_junction_cascade
|
from .api_batch import delete_junction_cascade
|
||||||
|
|
||||||
from .s3_reservoirs import get_reservoir_schema, add_reservoir, get_reservoir, set_reservoir
|
from .s3_reservoirs import get_reservoir_schema, add_reservoir, get_reservoir, set_reservoir
|
||||||
from .del_cmd import delete_reservoir_cascade
|
from .api_batch import delete_reservoir_cascade
|
||||||
|
|
||||||
from .s4_tanks import OVERFLOW_YES, OVERFLOW_NO
|
from .s4_tanks import OVERFLOW_YES, OVERFLOW_NO
|
||||||
from .s4_tanks import get_tank_schema, add_tank, get_tank, set_tank
|
from .s4_tanks import get_tank_schema, add_tank, get_tank, set_tank
|
||||||
from .del_cmd import delete_tank_cascade
|
from .api_batch import delete_tank_cascade
|
||||||
|
|
||||||
from .s5_pipes import PIPE_STATUS_OPEN, PIPE_STATUS_CLOSED, PIPE_STATUS_CV
|
from .s5_pipes import PIPE_STATUS_OPEN, PIPE_STATUS_CLOSED, PIPE_STATUS_CV
|
||||||
from .s5_pipes import get_pipe_schema, add_pipe, get_pipe, set_pipe
|
from .s5_pipes import get_pipe_schema, add_pipe, get_pipe, set_pipe
|
||||||
from .del_cmd import delete_pipe_cascade
|
from .api_batch import delete_pipe_cascade
|
||||||
|
|
||||||
from .s6_pumps import get_pump_schema, add_pump, get_pump, set_pump
|
from .s6_pumps import get_pump_schema, add_pump, get_pump, set_pump
|
||||||
from .del_cmd import delete_pump_cascade
|
from .api_batch import delete_pump_cascade
|
||||||
|
|
||||||
from .s7_valves import VALVES_TYPE_PRV, VALVES_TYPE_PSV, VALVES_TYPE_PBV, VALVES_TYPE_FCV, VALVES_TYPE_TCV, VALVES_TYPE_GPV
|
from .s7_valves import VALVES_TYPE_PRV, VALVES_TYPE_PSV, VALVES_TYPE_PBV, VALVES_TYPE_FCV, VALVES_TYPE_TCV, VALVES_TYPE_GPV
|
||||||
from .s7_valves import get_valve_schema, add_valve, get_valve, set_valve
|
from .s7_valves import get_valve_schema, add_valve, get_valve, set_valve
|
||||||
from .del_cmd import delete_valve_cascade
|
from .api_batch import delete_valve_cascade
|
||||||
|
|
||||||
from .s8_tags import TAG_TYPE_NODE, TAG_TYPE_LINK
|
from .s8_tags import TAG_TYPE_NODE, TAG_TYPE_LINK
|
||||||
from .s8_tags import get_tag_schema, get_tags, get_tag, set_tag
|
from .s8_tags import get_tag_schema, get_tags, get_tag, set_tag
|
||||||
@@ -61,11 +61,11 @@ from .s10_status import LINK_STATUS_OPEN, LINK_STATUS_CLOSED, LINK_STATUS_ACTIVE
|
|||||||
from .s10_status import get_status_schema, get_status, set_status
|
from .s10_status import get_status_schema, get_status, set_status
|
||||||
|
|
||||||
from .s11_patterns import get_pattern_schema, get_pattern, set_pattern, add_pattern
|
from .s11_patterns import get_pattern_schema, get_pattern, set_pattern, add_pattern
|
||||||
from .del_cmd import delete_pattern_cascade
|
from .api_batch import delete_pattern_cascade
|
||||||
|
|
||||||
from .s12_curves import CURVE_TYPE_PUMP, CURVE_TYPE_EFFICIENCY, CURVE_TYPE_VOLUME, CURVE_TYPE_HEADLOSS
|
from .s12_curves import CURVE_TYPE_PUMP, CURVE_TYPE_EFFICIENCY, CURVE_TYPE_VOLUME, CURVE_TYPE_HEADLOSS
|
||||||
from .s12_curves import get_curve_schema, get_curve, set_curve, add_curve
|
from .s12_curves import get_curve_schema, get_curve, set_curve, add_curve
|
||||||
from .del_cmd import delete_curve_cascade
|
from .api_batch import delete_curve_cascade
|
||||||
|
|
||||||
from .s13_controls import get_control_schema, get_control, set_control
|
from .s13_controls import get_control_schema, get_control, set_control
|
||||||
|
|
||||||
@@ -98,7 +98,7 @@ from .s23_options_util import OPTION_UNBALANCED_STOP, OPTION_UNBALANCED_CONTINUE
|
|||||||
from .s23_options_util import OPTION_DEMAND_MODEL_DDA, OPTION_DEMAND_MODEL_PDA
|
from .s23_options_util import OPTION_DEMAND_MODEL_DDA, OPTION_DEMAND_MODEL_PDA
|
||||||
from .s23_options_util import OPTION_QUALITY_NONE, OPTION_QUALITY_CHEMICAL, OPTION_QUALITY_AGE, OPTION_QUALITY_TRACE
|
from .s23_options_util import OPTION_QUALITY_NONE, OPTION_QUALITY_CHEMICAL, OPTION_QUALITY_AGE, OPTION_QUALITY_TRACE
|
||||||
from .s23_options_util import get_option_schema, get_option
|
from .s23_options_util import get_option_schema, get_option
|
||||||
from .s23_options import set_option
|
from .api_batch import set_option_ex
|
||||||
|
|
||||||
from .s23_options_util import OPTION_V3_FLOW_UNITS_CFS, OPTION_V3_FLOW_UNITS_GPM, OPTION_V3_FLOW_UNITS_MGD, OPTION_V3_FLOW_UNITS_IMGD, OPTION_V3_FLOW_UNITS_AFD, OPTION_V3_FLOW_UNITS_LPS, OPTION_V3_FLOW_UNITS_LPM, OPTION_V3_FLOW_UNITS_MLD, OPTION_V3_FLOW_UNITS_CMH, OPTION_V3_FLOW_UNITS_CMD
|
from .s23_options_util import OPTION_V3_FLOW_UNITS_CFS, OPTION_V3_FLOW_UNITS_GPM, OPTION_V3_FLOW_UNITS_MGD, OPTION_V3_FLOW_UNITS_IMGD, OPTION_V3_FLOW_UNITS_AFD, OPTION_V3_FLOW_UNITS_LPS, OPTION_V3_FLOW_UNITS_LPM, OPTION_V3_FLOW_UNITS_MLD, OPTION_V3_FLOW_UNITS_CMH, OPTION_V3_FLOW_UNITS_CMD
|
||||||
from .s23_options_util import OPTION_V3_PRESSURE_UNITS_PSI, OPTION_V3_PRESSURE_UNITS_KPA, OPTION_V3_PRESSURE_UNITS_M
|
from .s23_options_util import OPTION_V3_PRESSURE_UNITS_PSI, OPTION_V3_PRESSURE_UNITS_KPA, OPTION_V3_PRESSURE_UNITS_M
|
||||||
@@ -110,7 +110,7 @@ from .s23_options_util import OPTION_V3_LEAKAGE_MODEL_NONE, OPTION_V3_LEAKAGE_MO
|
|||||||
from .s23_options_util import OPTION_V3_QUALITY_MODEL_NONE, OPTION_V3_QUALITY_MODEL_CHEMICAL, OPTION_V3_QUALITY_MODEL_AGE, OPTION_V3_QUALITY_MODEL_TRACE
|
from .s23_options_util import OPTION_V3_QUALITY_MODEL_NONE, OPTION_V3_QUALITY_MODEL_CHEMICAL, OPTION_V3_QUALITY_MODEL_AGE, OPTION_V3_QUALITY_MODEL_TRACE
|
||||||
from .s23_options_util import OPTION_V3_QUALITY_UNITS_HRS, OPTION_V3_QUALITY_UNITS_PCNT, OPTION_V3_QUALITY_UNITS_MGL, OPTION_V3_QUALITY_UNITS_UGL
|
from .s23_options_util import OPTION_V3_QUALITY_UNITS_HRS, OPTION_V3_QUALITY_UNITS_PCNT, OPTION_V3_QUALITY_UNITS_MGL, OPTION_V3_QUALITY_UNITS_UGL
|
||||||
from .s23_options_util import get_option_v3_schema, get_option_v3
|
from .s23_options_util import get_option_v3_schema, get_option_v3
|
||||||
from .s23_options_v3 import set_option_v3
|
from .api_batch import set_option_v3_ex
|
||||||
|
|
||||||
from .s24_coordinates import get_node_coord
|
from .s24_coordinates import get_node_coord
|
||||||
|
|
||||||
@@ -122,14 +122,14 @@ 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 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_devices, get_scada_device, set_scada_device, add_scada_device, delete_scada_device
|
||||||
from .del_cmd import clean_scada_device
|
from .api_batch 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
|
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
|
||||||
from .del_cmd import clean_scada_device_data
|
from .api_batch 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_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 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_elements, get_scada_element, set_scada_element, add_scada_element, delete_scada_element
|
||||||
from .del_cmd import clean_scada_element
|
from .api_batch import clean_scada_element
|
||||||
|
|
||||||
from .s37_virtual_district import calculate_virtual_district
|
from .s37_virtual_district import calculate_virtual_district
|
||||||
@@ -1,8 +1,5 @@
|
|||||||
from .del_cmd_raw import *
|
|
||||||
from .batch_cmds import execute_batch_command
|
from .batch_cmds import execute_batch_command
|
||||||
from .s29_scada_device import clean_scada_device_cs
|
from .api_cs import *
|
||||||
from .s30_scada_device_data import clean_scada_device_data_cs
|
|
||||||
from .s31_scada_element import clean_scada_element_cs
|
|
||||||
|
|
||||||
|
|
||||||
def delete_junction_cascade(name: str, cs: ChangeSet) -> ChangeSet:
|
def delete_junction_cascade(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
@@ -53,6 +50,14 @@ def delete_curve_cascade(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
return execute_batch_command(name, cs)
|
return execute_batch_command(name, cs)
|
||||||
|
|
||||||
|
|
||||||
|
def set_option_ex(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
|
return execute_batch_command(name, set_option_cs(cs))
|
||||||
|
|
||||||
|
|
||||||
|
def set_option_v3_ex(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
|
return execute_batch_command(name, set_option_v3_cs(cs))
|
||||||
|
|
||||||
|
|
||||||
def clean_scada_device(name: str) -> ChangeSet:
|
def clean_scada_device(name: str) -> ChangeSet:
|
||||||
return execute_batch_command(name, clean_scada_device_cs(name))
|
return execute_batch_command(name, clean_scada_device_cs(name))
|
||||||
|
|
||||||
@@ -18,8 +18,10 @@ from .s20_mixing import delete_mixing_by_tank
|
|||||||
from .s25_vertices import delete_vertex_by_link
|
from .s25_vertices import delete_vertex_by_link
|
||||||
from .s26_labels import unset_label_by_node
|
from .s26_labels import unset_label_by_node
|
||||||
|
|
||||||
|
from .s23_options_util import generate_v2, generate_v3
|
||||||
|
|
||||||
def delete_junction_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|
||||||
|
def delete_junction_cascade_batch_cs(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
result = ChangeSet()
|
result = ChangeSet()
|
||||||
|
|
||||||
id = cs.operations[0]['id']
|
id = cs.operations[0]['id']
|
||||||
@@ -31,11 +33,11 @@ def delete_junction_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
|
|
||||||
for link in links:
|
for link in links:
|
||||||
if is_pipe(name, link):
|
if is_pipe(name, link):
|
||||||
result.merge(delete_pipe_cascade_batch_cmd(name, ChangeSet(g_delete_prefix | {'type': 'pipe', 'id': link})))
|
result.merge(delete_pipe_cascade_batch_cs(name, ChangeSet(g_delete_prefix | {'type': 'pipe', 'id': link})))
|
||||||
if is_pump(name, link):
|
if is_pump(name, link):
|
||||||
result.merge(delete_pump_cascade_batch_cmd(name, ChangeSet(g_delete_prefix | {'type': 'pump', 'id': link})))
|
result.merge(delete_pump_cascade_batch_cs(name, ChangeSet(g_delete_prefix | {'type': 'pump', 'id': link})))
|
||||||
if is_valve(name, link):
|
if is_valve(name, link):
|
||||||
result.merge(delete_valve_cascade_batch_cmd(name, ChangeSet(g_delete_prefix | {'type': 'valve', 'id': link})))
|
result.merge(delete_valve_cascade_batch_cs(name, ChangeSet(g_delete_prefix | {'type': 'valve', 'id': link})))
|
||||||
|
|
||||||
result.merge(delete_tag_by_node(name, id))
|
result.merge(delete_tag_by_node(name, id))
|
||||||
result.merge(delete_demand_by_junction(name, id))
|
result.merge(delete_demand_by_junction(name, id))
|
||||||
@@ -48,7 +50,7 @@ def delete_junction_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def delete_reservoir_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
def delete_reservoir_cascade_batch_cs(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
result = ChangeSet()
|
result = ChangeSet()
|
||||||
|
|
||||||
id = cs.operations[0]['id']
|
id = cs.operations[0]['id']
|
||||||
@@ -60,11 +62,11 @@ def delete_reservoir_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
|
|
||||||
for link in links:
|
for link in links:
|
||||||
if is_pipe(name, link):
|
if is_pipe(name, link):
|
||||||
result.merge(delete_pipe_cascade_batch_cmd(name, ChangeSet(g_delete_prefix | {'type': 'pipe', 'id': link})))
|
result.merge(delete_pipe_cascade_batch_cs(name, ChangeSet(g_delete_prefix | {'type': 'pipe', 'id': link})))
|
||||||
if is_pump(name, link):
|
if is_pump(name, link):
|
||||||
result.merge(delete_pump_cascade_batch_cmd(name, ChangeSet(g_delete_prefix | {'type': 'pump', 'id': link})))
|
result.merge(delete_pump_cascade_batch_cs(name, ChangeSet(g_delete_prefix | {'type': 'pump', 'id': link})))
|
||||||
if is_valve(name, link):
|
if is_valve(name, link):
|
||||||
result.merge(delete_valve_cascade_batch_cmd(name, ChangeSet(g_delete_prefix | {'type': 'valve', 'id': link})))
|
result.merge(delete_valve_cascade_batch_cs(name, ChangeSet(g_delete_prefix | {'type': 'valve', 'id': link})))
|
||||||
|
|
||||||
result.merge(delete_tag_by_node(name, id))
|
result.merge(delete_tag_by_node(name, id))
|
||||||
result.merge(delete_quality_by_node(name, id))
|
result.merge(delete_quality_by_node(name, id))
|
||||||
@@ -75,7 +77,7 @@ def delete_reservoir_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def delete_tank_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
def delete_tank_cascade_batch_cs(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
result = ChangeSet()
|
result = ChangeSet()
|
||||||
|
|
||||||
id = cs.operations[0]['id']
|
id = cs.operations[0]['id']
|
||||||
@@ -87,11 +89,11 @@ def delete_tank_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
|
|
||||||
for link in links:
|
for link in links:
|
||||||
if is_pipe(name, link):
|
if is_pipe(name, link):
|
||||||
result.merge(delete_pipe_cascade_batch_cmd(name, ChangeSet(g_delete_prefix | {'type': 'pipe', 'id': link})))
|
result.merge(delete_pipe_cascade_batch_cs(name, ChangeSet(g_delete_prefix | {'type': 'pipe', 'id': link})))
|
||||||
if is_pump(name, link):
|
if is_pump(name, link):
|
||||||
result.merge(delete_pump_cascade_batch_cmd(name, ChangeSet(g_delete_prefix | {'type': 'pump', 'id': link})))
|
result.merge(delete_pump_cascade_batch_cs(name, ChangeSet(g_delete_prefix | {'type': 'pump', 'id': link})))
|
||||||
if is_valve(name, link):
|
if is_valve(name, link):
|
||||||
result.merge(delete_valve_cascade_batch_cmd(name, ChangeSet(g_delete_prefix | {'type': 'valve', 'id': link})))
|
result.merge(delete_valve_cascade_batch_cs(name, ChangeSet(g_delete_prefix | {'type': 'valve', 'id': link})))
|
||||||
|
|
||||||
result.merge(delete_tag_by_node(name, id))
|
result.merge(delete_tag_by_node(name, id))
|
||||||
result.merge(delete_quality_by_node(name, id))
|
result.merge(delete_quality_by_node(name, id))
|
||||||
@@ -104,7 +106,7 @@ def delete_tank_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def delete_pipe_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
def delete_pipe_cascade_batch_cs(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
result = ChangeSet()
|
result = ChangeSet()
|
||||||
|
|
||||||
id = cs.operations[0]['id']
|
id = cs.operations[0]['id']
|
||||||
@@ -121,7 +123,7 @@ def delete_pipe_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def delete_pump_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
def delete_pump_cascade_batch_cs(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
result = ChangeSet()
|
result = ChangeSet()
|
||||||
|
|
||||||
id = cs.operations[0]['id']
|
id = cs.operations[0]['id']
|
||||||
@@ -138,7 +140,7 @@ def delete_pump_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def delete_valve_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
def delete_valve_cascade_batch_cs(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
result = ChangeSet()
|
result = ChangeSet()
|
||||||
|
|
||||||
id = cs.operations[0]['id']
|
id = cs.operations[0]['id']
|
||||||
@@ -155,7 +157,7 @@ def delete_valve_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def delete_pattern_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
def delete_pattern_cascade_batch_cs(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
result = ChangeSet()
|
result = ChangeSet()
|
||||||
|
|
||||||
id = cs.operations[0]['id']
|
id = cs.operations[0]['id']
|
||||||
@@ -173,7 +175,7 @@ def delete_pattern_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def delete_curve_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
def delete_curve_cascade_batch_cs(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
result = ChangeSet()
|
result = ChangeSet()
|
||||||
|
|
||||||
id = cs.operations[0]['id']
|
id = cs.operations[0]['id']
|
||||||
@@ -189,24 +191,103 @@ def delete_curve_cascade_batch_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
def del_cascade_cmd(name: str, cs: ChangeSet) -> ChangeSet:
|
def del_cascade_cs(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
type = cs.operations[0]['type']
|
type = cs.operations[0]['type']
|
||||||
|
|
||||||
if type == s2_junction:
|
if type == s2_junction:
|
||||||
return delete_junction_cascade_batch_cmd(name, cs)
|
return delete_junction_cascade_batch_cs(name, cs)
|
||||||
elif type == s3_reservoir:
|
elif type == s3_reservoir:
|
||||||
return delete_reservoir_cascade_batch_cmd(name, cs)
|
return delete_reservoir_cascade_batch_cs(name, cs)
|
||||||
elif type == s4_tank:
|
elif type == s4_tank:
|
||||||
return delete_tank_cascade_batch_cmd(name, cs)
|
return delete_tank_cascade_batch_cs(name, cs)
|
||||||
elif type == s5_pipe:
|
elif type == s5_pipe:
|
||||||
return delete_pipe_cascade_batch_cmd(name, cs)
|
return delete_pipe_cascade_batch_cs(name, cs)
|
||||||
elif type == s6_pump:
|
elif type == s6_pump:
|
||||||
return delete_pump_cascade_batch_cmd(name, cs)
|
return delete_pump_cascade_batch_cs(name, cs)
|
||||||
elif type == s7_valve:
|
elif type == s7_valve:
|
||||||
return delete_valve_cascade_batch_cmd(name, cs)
|
return delete_valve_cascade_batch_cs(name, cs)
|
||||||
elif type == s11_pattern:
|
elif type == s11_pattern:
|
||||||
return delete_pattern_cascade_batch_cmd(name, cs)
|
return delete_pattern_cascade_batch_cs(name, cs)
|
||||||
elif type == s12_curve:
|
elif type == s12_curve:
|
||||||
return delete_curve_cascade_batch_cmd(name, cs)
|
return delete_curve_cascade_batch_cs(name, cs)
|
||||||
|
|
||||||
|
return cs
|
||||||
|
|
||||||
|
|
||||||
|
def set_option_cs(cs: ChangeSet) -> ChangeSet:
|
||||||
|
cs.operations[0]['operation'] = API_UPDATE
|
||||||
|
cs.operations[0]['type'] = 'option'
|
||||||
|
new_cs = cs
|
||||||
|
new_cs.merge(generate_v3(cs))
|
||||||
|
return new_cs
|
||||||
|
|
||||||
|
|
||||||
|
def set_option_v3_cs(cs: ChangeSet) -> ChangeSet:
|
||||||
|
cs.operations[0]['operation'] = API_UPDATE
|
||||||
|
cs.operations[0]['type'] = 'option_v3'
|
||||||
|
new_cs = cs
|
||||||
|
new_cs.merge(generate_v2(cs))
|
||||||
|
return new_cs
|
||||||
|
|
||||||
|
|
||||||
|
def clean_scada_device_cs(name: str) -> ChangeSet:
|
||||||
|
cs = ChangeSet()
|
||||||
|
|
||||||
|
rows = read_all(name, 'select id from scada_device acs')
|
||||||
|
for row in rows:
|
||||||
|
cs.delete({ 'type': 'scada_device', 'id': row['id'] })
|
||||||
|
|
||||||
|
return cs
|
||||||
|
|
||||||
|
|
||||||
|
def clean_scada_device_data_cs(name: str) -> ChangeSet:
|
||||||
|
cs = ChangeSet()
|
||||||
|
|
||||||
|
rows = read_all(name, 'select distinct device_id from scada_device_data acs')
|
||||||
|
for row in rows:
|
||||||
|
cs.update({ 'type': 'scada_device_data', 'device_id': row['device_id'], 'data': [] })
|
||||||
|
|
||||||
|
return cs
|
||||||
|
|
||||||
|
|
||||||
|
def clean_scada_element_cs(name: str) -> ChangeSet:
|
||||||
|
cs = ChangeSet()
|
||||||
|
|
||||||
|
rows = read_all(name, 'select id from scada_element acs')
|
||||||
|
for row in rows:
|
||||||
|
cs.delete({ 'type': 'scada_element', 'id': row['id'] })
|
||||||
|
|
||||||
|
return cs
|
||||||
|
|
||||||
|
|
||||||
|
def extend(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
|
op = cs.operations[0]
|
||||||
|
api = op['operation']
|
||||||
|
type = op['type']
|
||||||
|
|
||||||
|
if api == API_DELETE:
|
||||||
|
if type == s2_junction:
|
||||||
|
return delete_junction_cascade_batch_cs(name, cs)
|
||||||
|
elif type == s3_reservoir:
|
||||||
|
return delete_reservoir_cascade_batch_cs(name, cs)
|
||||||
|
elif type == s4_tank:
|
||||||
|
return delete_tank_cascade_batch_cs(name, cs)
|
||||||
|
elif type == s5_pipe:
|
||||||
|
return delete_pipe_cascade_batch_cs(name, cs)
|
||||||
|
elif type == s6_pump:
|
||||||
|
return delete_pump_cascade_batch_cs(name, cs)
|
||||||
|
elif type == s7_valve:
|
||||||
|
return delete_valve_cascade_batch_cs(name, cs)
|
||||||
|
elif type == s11_pattern:
|
||||||
|
return delete_pattern_cascade_batch_cs(name, cs)
|
||||||
|
elif type == s12_curve:
|
||||||
|
return delete_curve_cascade_batch_cs(name, cs)
|
||||||
|
elif api == API_UPDATE:
|
||||||
|
if type == s23_option:
|
||||||
|
return set_option_cs(cs)
|
||||||
|
elif type == s23_option_v3:
|
||||||
|
return set_option_v3_cs(cs)
|
||||||
|
|
||||||
|
# TODO: support clean
|
||||||
|
|
||||||
return cs
|
return cs
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
from .sections import *
|
|
||||||
from .database import API_ADD, API_UPDATE, API_DELETE, ChangeSet, DbChangeSet, execute_command
|
|
||||||
from .s23_options_util import set_option_cmd, set_option_v3_cmd
|
|
||||||
from .del_cmd_raw import del_cascade_cmd
|
|
||||||
|
|
||||||
|
|
||||||
def add_cmd(name: str, cs: ChangeSet) -> DbChangeSet | None:
|
|
||||||
return None
|
|
||||||
|
|
||||||
|
|
||||||
def set_cmd(name: str, cs: ChangeSet) -> DbChangeSet | None:
|
|
||||||
type = cs.operations[0]['type']
|
|
||||||
|
|
||||||
if type == s23_option:
|
|
||||||
return set_option_cmd(name, cs)
|
|
||||||
elif type == s23_option_v3:
|
|
||||||
return set_option_v3_cmd(name, cs)
|
|
||||||
|
|
||||||
return None
|
|
||||||
|
|
||||||
|
|
||||||
def del_cmd(name: str, cs: ChangeSet) -> DbChangeSet | None:
|
|
||||||
return None
|
|
||||||
|
|
||||||
|
|
||||||
def execute_batch_command(name: str, cs: ChangeSet) -> ChangeSet:
|
|
||||||
css: list[DbChangeSet] = []
|
|
||||||
|
|
||||||
# for delete, generate cascade command
|
|
||||||
new_cs = ChangeSet()
|
|
||||||
for op in cs.operations:
|
|
||||||
if op['operation'] == API_DELETE:
|
|
||||||
new_cs.merge(del_cascade_cmd(name, ChangeSet(op)))
|
|
||||||
else:
|
|
||||||
new_cs.merge(ChangeSet(op))
|
|
||||||
|
|
||||||
try:
|
|
||||||
for op in new_cs.operations:
|
|
||||||
operation = op['operation']
|
|
||||||
|
|
||||||
r = None
|
|
||||||
|
|
||||||
if operation == API_ADD:
|
|
||||||
r = add_cmd(name, ChangeSet(op))
|
|
||||||
elif operation == API_UPDATE:
|
|
||||||
r = set_cmd(name, ChangeSet(op))
|
|
||||||
elif operation == API_DELETE:
|
|
||||||
r = del_cmd(name, ChangeSet(op))
|
|
||||||
|
|
||||||
if r == None:
|
|
||||||
print(f'ERROR: Build [{op}] returns None')
|
|
||||||
return ChangeSet()
|
|
||||||
|
|
||||||
css.append(r)
|
|
||||||
|
|
||||||
except:
|
|
||||||
return ChangeSet()
|
|
||||||
|
|
||||||
try:
|
|
||||||
return execute_command(name, DbChangeSet.from_list(css))
|
|
||||||
except:
|
|
||||||
return ChangeSet()
|
|
||||||
@@ -22,18 +22,14 @@ from .s18_sources import set_source, add_source, delete_source
|
|||||||
from .s19_reactions import set_reaction, set_pipe_reaction, set_tank_reaction
|
from .s19_reactions import set_reaction, set_pipe_reaction, set_tank_reaction
|
||||||
from .s20_mixing import set_mixing, add_mixing, delete_mixing
|
from .s20_mixing import set_mixing, add_mixing, delete_mixing
|
||||||
from .s21_times import set_time
|
from .s21_times import set_time
|
||||||
#from .s22_report import *
|
from .s23_options_util import set_option, set_option_v3
|
||||||
from .s23_options import set_option
|
|
||||||
from .s23_options_v3 import set_option_v3
|
|
||||||
#from .s24_coordinates import *
|
|
||||||
from .s25_vertices import set_vertex, add_vertex, delete_vertex
|
from .s25_vertices import set_vertex, add_vertex, delete_vertex
|
||||||
from .s26_labels import set_label, add_label, delete_label
|
from .s26_labels import set_label, add_label, delete_label
|
||||||
from .s27_backdrop import set_backdrop
|
from .s27_backdrop import set_backdrop
|
||||||
# from .s28_end import *
|
|
||||||
from .s29_scada_device import set_scada_device, add_scada_device, delete_scada_device
|
from .s29_scada_device import set_scada_device, add_scada_device, delete_scada_device
|
||||||
from .s30_scada_device_data import set_scada_device_data, add_scada_device_data, delete_scada_device_data
|
from .s30_scada_device_data import set_scada_device_data, add_scada_device_data, delete_scada_device_data
|
||||||
from .s31_scada_element import set_scada_element, add_scada_element, delete_scada_element
|
from .s31_scada_element import set_scada_element, add_scada_element, delete_scada_element
|
||||||
from .del_cmd_raw import del_cascade_cmd
|
from .api_cs import extend
|
||||||
|
|
||||||
|
|
||||||
def execute_add_command(name: str, cs: ChangeSet) -> ChangeSet:
|
def execute_add_command(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
@@ -272,7 +268,7 @@ def execute_batch_commands(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
new_cs = ChangeSet()
|
new_cs = ChangeSet()
|
||||||
for op in cs.operations:
|
for op in cs.operations:
|
||||||
if op['operation'] == API_DELETE:
|
if op['operation'] == API_DELETE:
|
||||||
new_cs.merge(del_cascade_cmd(name, ChangeSet(op)))
|
new_cs.merge(extend(name, ChangeSet(op)))
|
||||||
else:
|
else:
|
||||||
new_cs.merge(ChangeSet(op))
|
new_cs.merge(ChangeSet(op))
|
||||||
|
|
||||||
@@ -304,7 +300,7 @@ def execute_batch_command(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
new_cs = ChangeSet()
|
new_cs = ChangeSet()
|
||||||
for op in cs.operations:
|
for op in cs.operations:
|
||||||
if op['operation'] == API_DELETE:
|
if op['operation'] == API_DELETE:
|
||||||
new_cs.merge(del_cascade_cmd(name, ChangeSet(op)))
|
new_cs.merge(extend(name, ChangeSet(op)))
|
||||||
else:
|
else:
|
||||||
new_cs.merge(ChangeSet(op))
|
new_cs.merge(ChangeSet(op))
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,5 @@
|
|||||||
from .database import *
|
from .database import *
|
||||||
from .s23_options_util import get_option_schema, generate_v3
|
from .s23_options_util import get_option_schema, generate_v3
|
||||||
from .batch_cmd import execute_batch_command
|
|
||||||
|
|
||||||
|
|
||||||
def set_option(name: str, cs: ChangeSet) -> ChangeSet:
|
|
||||||
cs.operations[0]['operation'] = API_UPDATE
|
|
||||||
cs.operations[0]['type'] = 'option'
|
|
||||||
new_cs = cs
|
|
||||||
new_cs.merge(generate_v3(cs))
|
|
||||||
return execute_batch_command(name, new_cs)
|
|
||||||
|
|
||||||
|
|
||||||
def _inp_in_option(section: list[str]) -> ChangeSet:
|
def _inp_in_option(section: list[str]) -> ChangeSet:
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ def get_option(name: str) -> dict[str, Any]:
|
|||||||
return d
|
return d
|
||||||
|
|
||||||
|
|
||||||
def set_option_cmd(name: str, cs: ChangeSet) -> DbChangeSet:
|
def _set_option(name: str, cs: ChangeSet) -> DbChangeSet:
|
||||||
raw_old = get_option(name)
|
raw_old = get_option(name)
|
||||||
|
|
||||||
old = {}
|
old = {}
|
||||||
@@ -140,9 +140,8 @@ def set_option_cmd(name: str, cs: ChangeSet) -> DbChangeSet:
|
|||||||
return DbChangeSet(redo_sql, undo_sql, [redo_cs], [undo_cs])
|
return DbChangeSet(redo_sql, undo_sql, [redo_cs], [undo_cs])
|
||||||
|
|
||||||
|
|
||||||
def set_option_only(name: str, cs: ChangeSet) -> ChangeSet:
|
def set_option(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
v2_cmd = set_option_cmd(name, cs)
|
return execute_command(name, _set_option(name, cs))
|
||||||
return execute_command(name, v2_cmd)
|
|
||||||
|
|
||||||
|
|
||||||
OPTION_V3_FLOW_UNITS_CFS = OPTION_UNITS_CFS
|
OPTION_V3_FLOW_UNITS_CFS = OPTION_UNITS_CFS
|
||||||
@@ -231,7 +230,7 @@ def get_option_v3(name: str) -> dict[str, Any]:
|
|||||||
return d
|
return d
|
||||||
|
|
||||||
|
|
||||||
def set_option_v3_cmd(name: str, cs: ChangeSet) -> DbChangeSet:
|
def _set_option_v3(name: str, cs: ChangeSet) -> DbChangeSet:
|
||||||
raw_old = get_option_v3(name)
|
raw_old = get_option_v3(name)
|
||||||
|
|
||||||
old = {}
|
old = {}
|
||||||
@@ -265,9 +264,8 @@ def set_option_v3_cmd(name: str, cs: ChangeSet) -> DbChangeSet:
|
|||||||
return DbChangeSet(redo_sql, undo_sql, [redo_cs], [undo_cs])
|
return DbChangeSet(redo_sql, undo_sql, [redo_cs], [undo_cs])
|
||||||
|
|
||||||
|
|
||||||
def set_option_v3_only(name: str, cs: ChangeSet) -> ChangeSet:
|
def set_option_v3(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
v3_cmd = set_option_v3_cmd(name, cs)
|
return execute_command(name, _set_option_v3(name, cs))
|
||||||
return execute_command(name, v3_cmd)
|
|
||||||
|
|
||||||
|
|
||||||
_key_map_23 = {
|
_key_map_23 = {
|
||||||
|
|||||||
@@ -1,14 +1,5 @@
|
|||||||
from .database import *
|
from .database import *
|
||||||
from .s23_options_util import get_option_schema, get_option_v3_schema, generate_v2, generate_v3
|
from .s23_options_util import get_option_schema, get_option_v3_schema, generate_v2, generate_v3
|
||||||
from .batch_cmd import execute_batch_command
|
|
||||||
|
|
||||||
|
|
||||||
def set_option_v3(name: str, cs: ChangeSet) -> ChangeSet:
|
|
||||||
cs.operations[0]['operation'] = API_UPDATE
|
|
||||||
cs.operations[0]['type'] = 'option_v3'
|
|
||||||
new_cs = cs
|
|
||||||
new_cs.merge(generate_v2(cs))
|
|
||||||
return execute_batch_command(name, new_cs)
|
|
||||||
|
|
||||||
|
|
||||||
def _parse_v2(v2_lines: list[str]) -> dict[str, str]:
|
def _parse_v2(v2_lines: list[str]) -> dict[str, str]:
|
||||||
|
|||||||
@@ -116,13 +116,3 @@ def delete_scada_device(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
if get_scada_device(name, cs.operations[0]['id']) == {}:
|
if get_scada_device(name, cs.operations[0]['id']) == {}:
|
||||||
return ChangeSet()
|
return ChangeSet()
|
||||||
return execute_command(name, _delete_scada_device(name, cs))
|
return execute_command(name, _delete_scada_device(name, cs))
|
||||||
|
|
||||||
|
|
||||||
def clean_scada_device_cs(name: str) -> ChangeSet:
|
|
||||||
cs = ChangeSet()
|
|
||||||
|
|
||||||
rows = read_all(name, 'select id from scada_device acs')
|
|
||||||
for row in rows:
|
|
||||||
cs.delete({ 'type': 'scada_device', 'id': row['id'] })
|
|
||||||
|
|
||||||
return cs
|
|
||||||
|
|||||||
@@ -88,13 +88,3 @@ def delete_scada_device_data(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
if row == None:
|
if row == None:
|
||||||
return ChangeSet()
|
return ChangeSet()
|
||||||
return execute_command(name, _delete_scada_device_data(name, cs))
|
return execute_command(name, _delete_scada_device_data(name, cs))
|
||||||
|
|
||||||
|
|
||||||
def clean_scada_device_data_cs(name: str) -> ChangeSet:
|
|
||||||
cs = ChangeSet()
|
|
||||||
|
|
||||||
rows = read_all(name, 'select distinct device_id from scada_device_data acs')
|
|
||||||
for row in rows:
|
|
||||||
cs.update({ 'type': 'scada_device_data', 'device_id': row['device_id'], 'data': [] })
|
|
||||||
|
|
||||||
return cs
|
|
||||||
|
|||||||
@@ -178,13 +178,3 @@ def delete_scada_element(name: str, cs: ChangeSet) -> ChangeSet:
|
|||||||
if get_scada_element(name, cs.operations[0]['id']) == {}:
|
if get_scada_element(name, cs.operations[0]['id']) == {}:
|
||||||
return ChangeSet()
|
return ChangeSet()
|
||||||
return execute_command(name, _delete_scada_element(name, cs))
|
return execute_command(name, _delete_scada_element(name, cs))
|
||||||
|
|
||||||
|
|
||||||
def clean_scada_element_cs(name: str) -> ChangeSet:
|
|
||||||
cs = ChangeSet()
|
|
||||||
|
|
||||||
rows = read_all(name, 'select id from scada_element acs')
|
|
||||||
for row in rows:
|
|
||||||
cs.delete({ 'type': 'scada_element', 'id': row['id'] })
|
|
||||||
|
|
||||||
return cs
|
|
||||||
|
|||||||
@@ -772,7 +772,7 @@ def get_option(name: str) -> dict[str, Any]:
|
|||||||
return api.get_option(name)
|
return api.get_option(name)
|
||||||
|
|
||||||
def set_option(name: str, cs: ChangeSet) -> ChangeSet:
|
def set_option(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
return api.set_option(name, cs)
|
return api.set_option_ex(name, cs)
|
||||||
|
|
||||||
|
|
||||||
############################################################
|
############################################################
|
||||||
@@ -786,7 +786,7 @@ def get_option_v3(name: str) -> dict[str, Any]:
|
|||||||
return api.get_option_v3(name)
|
return api.get_option_v3(name)
|
||||||
|
|
||||||
def set_option_v3(name: str, cs: ChangeSet) -> ChangeSet:
|
def set_option_v3(name: str, cs: ChangeSet) -> ChangeSet:
|
||||||
return api.set_option_v3(name, cs)
|
return api.set_option_v3_ex(name, cs)
|
||||||
|
|
||||||
|
|
||||||
############################################################
|
############################################################
|
||||||
|
|||||||
Reference in New Issue
Block a user