Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Requires Testing] Add label to reach point #219

Closed
wants to merge 99 commits into from
Closed
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
d11e026
add _label to reach_point
cymed Mar 23, 2023
fc6cead
change QGEP to TEKSI Wastewater
cymed Mar 23, 2023
12d9bd5
fix typo
cymed May 12, 2023
f3be071
Create delta_1.6.1_update_rp_label.sql
cymed May 12, 2023
1ad97e1
Delete delta_1.6.1_update_rp_label.sql
cymed May 12, 2023
5c7f2ff
move delta
cymed May 12, 2023
371eda7
split label function into two
cymed May 22, 2023
75c9db0
Update CURRENT_VERSION.txt to 1.6.1
cymed Aug 23, 2023
123efa8
change % to *%% for sqlalchemy
cymed Aug 25, 2023
7e7fe7b
Alter Table reach_point add _label
cymed Aug 25, 2023
1055ead
Merge branch 'QGEP:master' into add_label_to_rp
cymed Sep 8, 2023
f7704c7
remove "alter function ... to postgres"
cymed Sep 8, 2023
5229bd2
Update 06_symbology_functions.sql
cymed Sep 8, 2023
298086b
Update delta_1.6.1_update_rp_label.sql
cymed Oct 3, 2023
1c70975
Update 06_symbology_functions.sql
cymed Oct 3, 2023
fcb4b99
fix structure part update bug
cymed Oct 3, 2023
e2747ca
add line break to output label
cymed Oct 3, 2023
ddc59b7
Include Arrays of ws_status and ch_function_hierarchic
cymed Oct 3, 2023
a44aba2
add default values
cymed Oct 3, 2023
52487af
Update 06_symbology_functions.sql to match delta
cymed Oct 3, 2023
14c3e4d
Fix typo
cymed Oct 3, 2023
9fc1648
fix same typo in delta_1.6.1_update_rp_label.sql
cymed Oct 3, 2023
1b10705
Add Language in 06_symbology_functions.sql
cymed Oct 3, 2023
50106a9
alter % to %% for sqlalachemy
cymed Oct 3, 2023
67a1ee9
Typo in delta_1.6.1_update_rp_label.sql
cymed Oct 3, 2023
b3c0e97
Add linebreak befor output in 06_symbology_functions.sql
cymed Oct 3, 2023
15132e4
Add Comment Alterations to delta_1.6.1_update_rp_label.sql
cymed Oct 3, 2023
1b20a5f
Fix differences
cymed Oct 3, 2023
dee202f
Finding differences
cymed Oct 3, 2023
43a49ba
Update delta_1.6.1_update_rp_label.sql
cymed Oct 3, 2023
6d211a3
Update 06_symbology_functions.sql
cymed Oct 3, 2023
ad14c1a
Merge pull request #4 from cymed/cymed-rp_fix_differences
cymed Oct 3, 2023
2b8e86c
harmonization of delta and symbology_function
cymed Oct 3, 2023
4e00123
throw after reach change too
cymed Oct 3, 2023
9b2ce52
Update 06_symbology_functions.sql
cymed Oct 3, 2023
9f5ff1d
Set rp._label = NULL if reach is no longer operative/pwwf
cymed Oct 3, 2023
1f8d184
Update 06_symbology_functions.sql to equal previous commit
cymed Oct 3, 2023
bbf120e
Alter input order in 06_symbology_functions.sql
cymed Oct 3, 2023
bed2e66
Alter input order in delta_1.6.1_update_rp_label.sql
cymed Oct 3, 2023
36d7575
Introduce CurveToLine for azimuth
cymed Oct 4, 2023
6fcf285
Update 06_symbology_functions.sql for azimuth
cymed Oct 4, 2023
f6aa82b
Re-paste on_cover_change
cymed Oct 4, 2023
d971a2d
Update 05_data_model_extensions.sql
cymed Oct 4, 2023
77684d4
Update 05_data_model_extensions.sql
cymed Oct 4, 2023
66eb298
include new logic in delta
cymed Oct 4, 2023
8f2c1b3
Update 06_symbology_functions.sql
cymed Oct 4, 2023
73b4fe0
Merge pull request #5 from cymed/add_label_config_for_rp
cymed Oct 4, 2023
8aacd8f
on_wastewaternode_change
cymed Oct 4, 2023
1f1f40b
Update delta_1.6.1_update_rp_label.sql
cymed Oct 4, 2023
3103c7c
Merge pull request #6 from cymed/add_label_config_for_rp
cymed Oct 4, 2023
5ef9eed
update wastewater_structure_label in the end
cymed Oct 4, 2023
1585b84
Update 06_symbology_functions.sql
cymed Oct 4, 2023
4c2201c
Update delta_1.6.1_update_rp_label.sql
cymed Oct 4, 2023
19e4a5c
Merge pull request #7 from cymed/add_label_config_for_rp
cymed Oct 4, 2023
7c58322
prevent recursion on wastewaternode_change
cymed Oct 4, 2023
fbd2256
prevent recursion in delta
cymed Oct 4, 2023
423856c
Merge pull request #8 from cymed/add_label_config_for_rp
cymed Oct 4, 2023
0cb0223
difference check
cymed Oct 4, 2023
62d7ac6
include ws_status in test_triggers.py
cymed Oct 5, 2023
f30feeb
include ws_status in test_label.py
cymed Oct 5, 2023
3381cd8
test_triggers.py: Alter expected output for bottom_label
cymed Oct 5, 2023
cf00d9b
typo fix in test_triggers.py
cymed Oct 5, 2023
ccc95b8
rename on_wasterwaternode_change to on_wastewater_node_change in delta
cymed Oct 6, 2023
5109196
rename on_wasterwaternode_change to on_wastewater_node_change in symb…
cymed Oct 6, 2023
86af17d
fix trigger logic with new trigger name on_wastewater_node_change
cymed Oct 6, 2023
95c8da7
Adding semicolon
cymed Oct 6, 2023
467dd26
drop function on_wasterwaternode_change()
cymed Oct 6, 2023
afe067b
Update 05_data_model_extensions.sql
cymed Oct 10, 2023
c6fe4d7
alter labeling functions in delta
cymed Oct 10, 2023
ef01c4a
alter label update functions in 06_symbology_functions.sql
cymed Oct 10, 2023
b0592ab
Update vw_qgep_reach.py to include rp labels
cymed Oct 10, 2023
2f75255
Update vw_qgep_wastewater_structure.py
cymed Oct 10, 2023
632a29a
drop labels in base tables
cymed Oct 10, 2023
9945579
drop unnecessary columns in delta
cymed Oct 10, 2023
fe1f740
no need to drop reach_point._label
cymed Oct 10, 2023
e1e9a6d
Save labels separately
cymed Oct 10, 2023
4af5694
comment table labels
cymed Oct 10, 2023
8e4e262
Add Create Table in delta_1.6.1_update_rp_label.sql
cymed Oct 10, 2023
a4ab7d2
Update 05_data_model_extensions.sql add semicolon
cymed Oct 10, 2023
c3695ea
Update delta_1.6.1_update_rp_label.sql add semicolon
cymed Oct 10, 2023
f9a2fdd
do not skip *_label in vw_qgep_wastewater_structure.py
cymed Oct 10, 2023
d8abc4c
alter skip_columns
cymed Oct 10, 2023
260e53d
another skip_columns
cymed Oct 10, 2023
19c34ed
skips in vw_qgep_reach.py
cymed Oct 10, 2023
505bbc2
fix ws function in 06
cymed Oct 10, 2023
d160b80
fix ws in delta
cymed Oct 10, 2023
9e3fde2
alter on_ws_change in 06_symbology_functions.sql
cymed Oct 10, 2023
8f5b025
on_ws_change in delta_1.6.1_update_rp_label.sql
cymed Oct 10, 2023
c3150b9
Update 06_symbology_functions.sql
cymed Oct 13, 2023
10b4079
Update delta_1.6.1_update_rp_label.sql
cymed Oct 13, 2023
181e835
Prioritise main wastewater node for reach point label
cymed Oct 13, 2023
1848bc9
Update delta_1.6.1_update_rp_label.sql
cymed Oct 13, 2023
b52256f
Update delta_1.6.1_update_rp_label.sql
cymed Oct 13, 2023
2a26abb
Update delta_1.6.1_update_rp_label.sql
cymed Oct 13, 2023
d59190d
Update delta_1.6.1_update_rp_label.sql
cymed Oct 13, 2023
565eca6
Alter field prefixes
cymed Oct 19, 2023
e28876d
alter prefixes in views
cymed Oct 19, 2023
171545a
change it everywhere
cymed Oct 19, 2023
84c7d61
fix typo
cymed Oct 19, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 30 additions & 22 deletions 05_data_model_extensions.sql
Original file line number Diff line number Diff line change
@@ -8,31 +8,15 @@

ALTER TABLE qgep_od.wastewater_structure ADD COLUMN _usage_current integer;
COMMENT ON COLUMN qgep_od.wastewater_structure._usage_current IS 'not part of the VSA-DSS data model
added solely for QGEP
added solely for TEKSI wastewater
has to be updated by triggers';
ALTER TABLE qgep_od.wastewater_structure ADD COLUMN _function_hierarchic integer;
COMMENT ON COLUMN qgep_od.wastewater_structure._function_hierarchic IS 'not part of the VSA-DSS data model
added solely for QGEP
added solely for TEKSI wastewater
has to be updated by triggers';
ALTER TABLE qgep_od.manhole ADD COLUMN _orientation numeric;
COMMENT ON COLUMN qgep_od.manhole._orientation IS 'not part of the VSA-DSS data model
added solely for QGEP';
ALTER TABLE qgep_od.wastewater_structure ADD COLUMN _label text;
COMMENT ON COLUMN qgep_od.wastewater_structure._label IS 'not part of the VSA-DSS data model
added solely for QGEP';
ALTER TABLE qgep_od.wastewater_structure ADD COLUMN _cover_label text;
COMMENT ON COLUMN qgep_od.wastewater_structure._cover_label IS 'stores the cover altitude to be used for labelling, not part of the VSA-DSS data model
added solely for QGEP';
ALTER TABLE qgep_od.wastewater_structure ADD COLUMN _input_label text;
COMMENT ON COLUMN qgep_od.wastewater_structure._input_label IS 'stores the list of input altitudes to be used for labelling, not part of the VSA-DSS data model
added solely for QGEP';
ALTER TABLE qgep_od.wastewater_structure ADD COLUMN _output_label text;
COMMENT ON COLUMN qgep_od.wastewater_structure._output_label IS 'stores the list of output altitudes to be used for labelling, not part of the VSA-DSS data model
added solely for QGEP';
ALTER TABLE qgep_od.wastewater_structure ADD COLUMN _bottom_label text;
COMMENT ON COLUMN qgep_od.wastewater_structure._bottom_label IS 'stores the bottom altitude to be used for labelling, not part of the VSA-DSS data model
added solely for QGEP';

added solely for TEKSI wastewater';

-- this column is an extension to the VSA data model and puts the _function_hierarchic in order
ALTER TABLE qgep_vl.channel_function_hierarchic ADD COLUMN order_fct_hierarchic smallint;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://github.com/teksi/Home/wiki/TEKSI-Developer-Guide#custom-fields
Does this also need an underscore _order_fct_hierarchic ?

Copy link
Contributor Author

@cymed cymed Oct 15, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Imho no. It is not dependent of another table.
In the logic of #219 (comment) it would be x_order_fct_hierarchic

@@ -51,6 +35,15 @@ UPDATE qgep_vl.channel_function_hierarchic SET order_fct_hierarchic=12 WHERE cod
UPDATE qgep_vl.channel_function_hierarchic SET order_fct_hierarchic=11 WHERE code=5074;
UPDATE qgep_vl.channel_function_hierarchic SET order_fct_hierarchic=14 WHERE code=5075;

-- this column is an extension to the VSA data model and defines whether connected channels are included in inflow/outflow labeling based on function_hierarchic
ALTER TABLE qgep_vl.channel_function_hierarchic ADD COLUMN cfg_include_in_ws_labels boolean DEFAULT FALSE;
UPDATE qgep_vl.channel_function_hierarchic SET cfg_include_in_ws_labels=TRUE WHERE code=ANY('{5062,5064,5066,5068,5069,5070,5071,5072,5074}');


-- this column is an extension to the VSA data model and defines whether connected channels are included in inflow/outflow labeling based on function_hierarchic
ALTER TABLE qgep_vl.wastewater_structure_status ADD COLUMN cfg_include_in_ws_labels boolean DEFAULT FALSE;
UPDATE qgep_vl.wastewater_structure_status SET cfg_include_in_ws_labels=TRUE WHERE code=ANY('{8493,6530,6533}');

-- this column is an extension to the VSA data model and puts the _usage_current in order
ALTER TABLE qgep_vl.channel_usage_current ADD COLUMN order_usage_current smallint;
UPDATE qgep_vl.channel_usage_current SET order_usage_current=5 WHERE code = 4514;
@@ -72,17 +65,32 @@ UPDATE qgep_vl.channel_usage_current SET order_usage_current=9 WHERE code = 5322
-- TABLE wastewater_node
ALTER TABLE qgep_od.wastewater_node ADD COLUMN _usage_current integer;
COMMENT ON COLUMN qgep_od.wastewater_node._usage_current IS 'not part of the VSA-DSS data model
added solely for QGEP
added solely for TEKSI wastewater
has to be updated by triggers';
ALTER TABLE qgep_od.wastewater_node ADD COLUMN _function_hierarchic integer;
COMMENT ON COLUMN qgep_od.wastewater_node._function_hierarchic IS 'not part of the VSA-DSS data model
added solely for QGEP
added solely for TEKSI wastewater
has to be updated by triggers';
ALTER TABLE qgep_od.wastewater_node ADD COLUMN _status integer;
COMMENT ON COLUMN qgep_od.wastewater_node._status IS 'not part of the VSA-DSS data model
added solely for QGEP
added solely for TEKSI wastewater
has to be updated by triggers';

-- label extensions
CREATE TABLE IF NOT EXISTS qgep_od.x_labels
(
obj_id character varying(16) COLLATE pg_catalog."default" NOT NULL,
x_label text COLLATE pg_catalog."default",
x_cover_label text COLLATE pg_catalog."default",
x_input_label text COLLATE pg_catalog."default",
x_output_label text COLLATE pg_catalog."default",
x_bottom_label text COLLATE pg_catalog."default",
CONSTRAINT pkey_qgep_od_labels_obj_id PRIMARY KEY (obj_id)
);

COMMENT ON TABLE qgep_od.x_labels IS 'stores all labels. not part of the VSA-DSS data model
added solely for TEKSI wastewater
has to be updated by triggers';

-- Modifications applied for link with SWMM
-------------------------------------------
299 changes: 242 additions & 57 deletions 06_symbology_functions.sql

Large diffs are not rendered by default.

635 changes: 635 additions & 0 deletions delta/delta_1.6.1_update_rp_label.sql

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion system/CURRENT_VERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.6.0
1.6.1
1 change: 1 addition & 0 deletions test/test_label.py
Original file line number Diff line number Diff line change
@@ -58,6 +58,7 @@ def insert_reaches(self, reaches, manholes):
'coefficient_of_friction': 10,
'ws_identifier': reach['mh_id'],
'ch_function_hierarchic': 5062,
'ws_status': 8493,
'rp_from_level': reach.get('rp_from_level', 1020.0),
'rp_to_level': reach.get('rp_to_level', 1000.0),
'ch_usage_current': 4514,
5 changes: 4 additions & 1 deletion test/test_triggers.py
Original file line number Diff line number Diff line change
@@ -100,7 +100,7 @@ def check_values(expected_values_for_field):
expected = {
'_label': 'A',
'_cover_label': '\nC=100.00',
'_bottom_label': '',
'_bottom_label': '\nB=?',
'_input_label': '',
'_output_label': '',
}
@@ -129,6 +129,7 @@ def check_values(expected_values_for_field):
'identifier': 'R1',
'progression_geometry': self.execute('ST_ForceCurve(ST_SetSrid(ST_MakeLine(ST_MakePoint(3000001, 1500001, 100), ST_MakePoint(3000000, 1500000, 100)), 2056))'),
'ch_function_hierarchic': 5062,
'ws_status': 8493,
'rp_to_fk_wastewater_networkelement': strct_row['wn_obj_id'],
'rp_to_level': 95
}
@@ -143,6 +144,7 @@ def check_values(expected_values_for_field):
'identifier': 'R2',
'progression_geometry': self.execute('ST_ForceCurve(ST_SetSrid(ST_MakeLine(ST_MakePoint(3000000, 1500000, 92), ST_MakePoint(3000000, 1500001, 90)), 2056))'),
'ch_function_hierarchic': 5062,
'ws_status': 8493,
'rp_from_fk_wastewater_networkelement': strct_row['wn_obj_id'],
'rp_from_level': 92
}
@@ -157,6 +159,7 @@ def check_values(expected_values_for_field):
'identifier': 'R3',
'progression_geometry': self.execute('ST_ForceCurve(ST_SetSrid(ST_MakeLine(ST_MakePoint(3000000, 1500000, 93), ST_MakePoint(3000001, 1500000, 90)), 2056))'),
'ch_function_hierarchic': 5062,
'ws_status': 8493,
'rp_from_fk_wastewater_networkelement': strct_row['wn_obj_id'],
'rp_from_level': 93
}
12 changes: 8 additions & 4 deletions view/vw_qgep_reach.py
Original file line number Diff line number Diff line change
@@ -52,15 +52,19 @@ def vw_qgep_reach(pg_service: str = None,
, {ch_cols}
, {ws_cols}
, {rp_from_cols}
, rp_from_label.x_label as rp_from_label
, {rp_to_cols}
, rp_to_label.x_label as rp_to_label
FROM qgep_od.reach re
LEFT JOIN qgep_od.wastewater_networkelement ne ON ne.obj_id = re.obj_id
LEFT JOIN qgep_od.reach_point rp_from ON rp_from.obj_id = re.fk_reach_point_from
LEFT JOIN qgep_od.reach_point rp_to ON rp_to.obj_id = re.fk_reach_point_to
LEFT JOIN qgep_od.wastewater_structure ws ON ne.fk_wastewater_structure = ws.obj_id
LEFT JOIN qgep_od.channel ch ON ch.obj_id = ws.obj_id
LEFT JOIN qgep_od.pipe_profile pp ON re.fk_pipe_profile = pp.obj_id
{extra_joins};
{extra_joins}
LEFT JOIN qgep_od.x_labels rp_from_label ON rp_from_label.obj_id = rp_from.obj_id
LEFT JOIN qgep_od.x_labels rp_to_label ON rp_to_label.obj_id = rp_to.obj_id;
""".format(extra_cols='\n , '.join([select_columns(pg_cur=cursor,
table_schema=table_parts(table_def['table'])[0],
table_name=table_parts(table_def['table'])[1],
@@ -102,7 +106,7 @@ def vw_qgep_reach(pg_service: str = None,
indent=4,
skip_columns=['detail_geometry_geometry', 'status', 'fk_owner',
'fk_dataowner', 'fk_provider', '_usage_current',
'_function_hierarchic', '_label', '_depth', 'fk_main_cover']),
'_function_hierarchic','_depth', 'fk_main_cover']),
rp_from_cols=select_columns(pg_cur=cursor,
table_schema='qgep_od',
table_name='reach_point',
@@ -184,7 +188,7 @@ def vw_qgep_reach(pg_service: str = None,
remove_pkey=False,
indent=2,
skip_columns=['detail_geometry_geometry', 'fk_dataowner', 'fk_provider',
'_usage_current', '_function_hierarchic', '_label', '_depth', 'fk_main_cover']),
'_usage_current', '_function_hierarchic', '_depth', 'fk_main_cover']),
ch=insert_command(pg_cur=cursor,
table_schema='qgep_od',
table_name='channel',
@@ -283,7 +287,7 @@ def vw_qgep_reach(pg_service: str = None,
'fk_provider': 'fk_provider',
'last_modification': 'last_modification'},
skip_columns=['detail_geometry_geometry', '_usage_current', '_function_hierarchic',
'_label', '_depth', 'fk_main_cover']),
'_depth', 'fk_main_cover']),
ne=update_command(pg_cur=cursor,
table_schema='qgep_od',
table_name='wastewater_networkelement',
17 changes: 9 additions & 8 deletions view/vw_qgep_wastewater_structure.py
Original file line number Diff line number Diff line change
@@ -70,11 +70,11 @@ def vw_qgep_wastewater_structure(srid: int,
, {wn_cols}
, {ne_cols}
, ws._label
, ws._cover_label
, ws._bottom_label
, ws._input_label
, ws._output_label
, labl.x_label as _label
, labl.x_cover_label as _cover_label
, labl.x_bottom_label as _bottom_label
, labl.x_input_label as _input_label
, labl.x_output_label as _output_label
, ws._usage_current AS _channel_usage_current
, ws._function_hierarchic AS _channel_function_hierarchic
@@ -88,6 +88,7 @@ def vw_qgep_wastewater_structure(srid: int,
LEFT JOIN qgep_od.wastewater_networkelement ne ON ne.obj_id = ws.fk_main_wastewater_node
LEFT JOIN qgep_od.wastewater_node wn ON wn.obj_id = ws.fk_main_wastewater_node
LEFT JOIN qgep_od.channel ch ON ch.obj_id = ws.obj_id
LEFT JOIN qgep_od.x_labels labl ON labl.obj_id = ws.obj_id
{extra_joins}
WHERE ch.obj_id IS NULL;
@@ -109,7 +110,7 @@ def vw_qgep_wastewater_structure(srid: int,
table_alias='ws',
remove_pkey=False,
indent=4,
skip_columns=['identifier', 'fk_owner', 'status', '_label', '_cover_label', '_bottom_label', '_input_label', '_output_label', '_usage_current',
skip_columns=['identifier', 'fk_owner', 'status', '_usage_current',
'_function_hierarchic', 'fk_main_cover', 'fk_main_wastewater_node', 'detail_geometry_geometry']),
main_co_cols=select_columns(pg_cur=cursor,
table_schema='qgep_od',
@@ -240,7 +241,7 @@ def vw_qgep_wastewater_structure(srid: int,
table_alias='ws',
remove_pkey=False,
indent=2,
skip_columns=['_label', '_cover_label', '_bottom_label', '_input_label', '_output_label', '_usage_current', '_function_hierarchic',
skip_columns=['_usage_current', '_function_hierarchic',
'fk_main_cover', 'fk_main_wastewater_node', 'detail_geometry_geometry']),
insert_ma=insert_command(pg_cur=cursor,
table_schema='qgep_od',
@@ -460,7 +461,7 @@ def vw_qgep_wastewater_structure(srid: int,
remove_pkey=False,
indent=6,
skip_columns=['detail_geometry_geometry', 'last_modification',
'_usage_current', '_function_hierarchic', '_label', '_cover_label', '_bottom_label', '_input_label', '_output_label',
'_usage_current', '_function_hierarchic',
'fk_main_cover', 'fk_main_wastewater_node', '_depth'],
update_values={}),
update_ma=update_command(pg_cur=cursor,