Skip to content

Commit df7f2bd

Browse files
committed
fix(prev commit): Clean code, enhance propagation of muni_id for links
1 parent abb300e commit df7f2bd

File tree

6 files changed

+28
-32
lines changed

6 files changed

+28
-32
lines changed

updates/36/36012/ud/trg.sql

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,12 @@ This version of Giswater is provided by Giswater Association
88
SET search_path = SCHEMA_NAME, public, pg_catalog;
99

1010
--26/07/2024
11-
CREATE TRIGGER gw_trg_ui_rpt_cat_result
12-
INSTEAD OF INSERT OR DELETE OR UPDATE
13-
ON v_ui_rpt_cat_result
14-
FOR EACH ROW EXECUTE FUNCTION gw_trg_ui_rpt_cat_result();
11+
CREATE TRIGGER gw_trg_ui_rpt_cat_result INSTEAD OF INSERT OR DELETE OR UPDATE
12+
ON v_ui_rpt_cat_result FOR EACH ROW EXECUTE FUNCTION gw_trg_ui_rpt_cat_result();
1513

1614
--05/08/2024
17-
CREATE trigger gw_trg_ui_doc_x_gully instead OF
18-
INSERT
19-
OR
20-
DELETE
21-
OR
22-
UPDATE
23-
ON
24-
v_ui_doc_x_gully FOR each row EXECUTE function gw_trg_ui_doc('doc_x_gully');
15+
CREATE trigger gw_trg_ui_doc_x_gully instead OF INSERT OR DELETE OR UPDATE
16+
ON v_ui_doc_x_gully FOR each row EXECUTE function gw_trg_ui_doc('doc_x_gully');
2517

2618
--07/08/2024
2719
CREATE TRIGGER gw_trg_edit_element INSTEAD OF INSERT OR DELETE OR UPDATE ON v_edit_element
@@ -143,3 +135,6 @@ FOR EACH ROW EXECUTE FUNCTION gw_trg_edit_inp_arc('inp_conduit');
143135

144136
CREATE TRIGGER gw_trg_edit_pol_gully INSTEAD OF INSERT OR DELETE OR UPDATE ON ve_pol_gully
145137
FOR EACH ROW EXECUTE FUNCTION gw_trg_edit_man_gully_pol();
138+
139+
CREATE TRIGGER gw_trg_edit_link INSTEAD OF INSERT OR UPDATE OR DELETE ON v_edit_link
140+
FOR EACH ROW EXECUTE PROCEDURE gw_trg_edit_link();

updates/36/36012/ws/trg.sql

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,3 +145,6 @@ FOR EACH ROW EXECUTE PROCEDURE gw_trg_edit_ve_epa('valve');
145145

146146
CREATE TRIGGER gw_trg_edit_ve_epa_inlet INSTEAD OF INSERT OR UPDATE OR DELETE ON ve_epa_inlet
147147
FOR EACH ROW EXECUTE PROCEDURE gw_trg_edit_ve_epa('inlet');
148+
149+
CREATE TRIGGER gw_trg_edit_link INSTEAD OF INSERT OR UPDATE OR DELETE ON v_edit_link
150+
FOR EACH ROW EXECUTE PROCEDURE gw_trg_edit_link();

utils/fct/gw_fct_linktonetwork.sql

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ SELECT SCHEMA_NAME.gw_fct_setlinktonetwork($${"client":{"device":4, "infoType":1
4343
SELECT SCHEMA_NAME.gw_fct_setlinktonetwork($${"client":{"device":4, "infoType":1,"lang":"ES"},"feature":
4444
{"id":"SELECT array_to_json(array_agg(connec_id::text)) FROM v_edit_connec WHERE connec_id IS NOT NULL AND state=1"},"data":{"feature_type":"CONNEC"}}$$);
4545
46-
4746
--fid: 217
4847
4948
*/
@@ -110,7 +109,6 @@ v_check_arcdnom integer;
110109
v_checkeddiam text;
111110
v_querytext text;
112111

113-
114112
BEGIN
115113

116114

@@ -448,14 +446,14 @@ BEGIN
448446

449447
IF v_projecttype = 'WS' THEN
450448
INSERT INTO link (link_id, the_geom, feature_id, feature_type, exit_type, exit_id, state, expl_id, sector_id, dma_id,
451-
presszone_id, dqa_id, minsector_id, fluid_type)
449+
presszone_id, dqa_id, minsector_id, fluid_type, muni_id)
452450
VALUES (v_link.link_id, v_link.the_geom, v_connect_id, v_feature_type, v_link.exit_type, v_link.exit_id,
453-
v_connect.state, v_arc.expl_id, v_arc.sector_id, v_dma_value, v_arc.presszone_id, v_arc.dqa_id, v_arc.minsector_id, v_fluidtype_value);
451+
v_connect.state, v_arc.expl_id, v_arc.sector_id, v_dma_value, v_arc.presszone_id, v_arc.dqa_id, v_arc.minsector_id, v_fluidtype_value, v_connect.muni_id);
454452

455453
ELSIF v_projecttype = 'UD' THEN
456-
INSERT INTO link (link_id, the_geom, feature_id, feature_type, exit_type, exit_id, state, expl_id, sector_id, dma_id, fluid_type)
454+
INSERT INTO link (link_id, the_geom, feature_id, feature_type, exit_type, exit_id, state, expl_id, sector_id, dma_id, fluid_type, muni_id)
457455
VALUES (v_link.link_id, v_link.the_geom, v_connect_id, v_feature_type, v_link.exit_type, v_link.exit_id,
458-
v_connect.state, v_arc.expl_id, v_arc.sector_id, v_dma_value, v_fluidtype_value);
456+
v_connect.state, v_arc.expl_id, v_arc.sector_id, v_dma_value, v_fluidtype_value, v_connect.muni_id);
459457
END IF;
460458
ELSE
461459
UPDATE link SET the_geom=v_link.the_geom, exit_type=v_link.exit_type, exit_id=v_link.exit_id, dma_id = v_dma_value, fluid_type = v_fluidtype_value WHERE link_id = v_link.link_id;

utils/fct/gw_fct_setselectors.sql

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -391,12 +391,12 @@ BEGIN
391391
-- expl
392392
DELETE FROM selector_expl WHERE cur_user = current_user;
393393
INSERT INTO selector_expl
394-
SELECT DISTINCT expl_id, current_user FROM node WHERE sector_id IN (SELECT sector_id FROM selector_sector WHERE cur_user = current_user);
394+
SELECT DISTINCT expl_id, current_user FROM node WHERE sector_id IN (SELECT sector_id FROM selector_sector WHERE cur_user = current_user AND sector_id > 0);
395395

396396
-- muni
397397
DELETE FROM selector_municipality WHERE cur_user = current_user;
398398
INSERT INTO selector_municipality
399-
SELECT DISTINCT muni_id, current_user FROM node WHERE sector_id IN (SELECT sector_id FROM selector_sector WHERE cur_user = current_user);
399+
SELECT DISTINCT muni_id, current_user FROM node WHERE sector_id IN (SELECT sector_id FROM selector_sector WHERE cur_user = current_user AND sector_id > 0);
400400
END IF;
401401

402402
-- inserting muni_id from selected muni

utils/ftrg/gw_trg_edit_link.sql

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -552,17 +552,17 @@ BEGIN
552552
IF v_projectype = 'WS' THEN
553553

554554
INSERT INTO link (link_id, feature_type, feature_id, expl_id, exit_id, exit_type, userdefined_geom, state, the_geom, sector_id,
555-
fluid_type, dma_id, dqa_id, presszone_id, minsector_id, connecat_id, workcat_id, workcat_id_end, builtdate, enddate, exit_elev, exit_topelev, uncertain)
555+
fluid_type, dma_id, dqa_id, presszone_id, minsector_id, connecat_id, workcat_id, workcat_id_end, builtdate, enddate, exit_elev, exit_topelev, uncertain, muni_id)
556556
VALUES (NEW.link_id, NEW.feature_type, NEW.feature_id, v_expl, NEW.exit_id, NEW.exit_type, TRUE, NEW.state, NEW.the_geom, v_sector,
557557
v_fluidtype, v_dma, v_dqa, v_presszone, v_minsector, NEW.connecat_id, NEW.workcat_id, NEW.workcat_id_end, NEW.builtdate, NEW.enddate,
558-
NEW.exit_elev, NEW.exit_topelev, NEW.uncertain);
558+
NEW.exit_elev, NEW.exit_topelev, NEW.uncertain, NEW.muni_id);
559559

560560
ELSIF v_projectype = 'UD' THEN
561561

562562
INSERT INTO link (link_id, feature_type, feature_id, expl_id, exit_id, exit_type, userdefined_geom, state, the_geom, sector_id, fluid_type, dma_id,
563-
connecat_id, workcat_id, workcat_id_end, builtdate, enddate, exit_elev, exit_topelev, uncertain)
563+
connecat_id, workcat_id, workcat_id_end, builtdate, enddate, exit_elev, exit_topelev, uncertain, muni_id)
564564
VALUES (NEW.link_id, NEW.feature_type, NEW.feature_id, v_expl, NEW.exit_id, NEW.exit_type, TRUE, NEW.state, NEW.the_geom, v_sector, v_fluidtype, v_dma,
565-
NEW.connecat_id, NEW.workcat_id, NEW.workcat_id_end, NEW.builtdate, NEW.enddate, NEW.exit_elev, NEW.exit_topelev, NEW.uncertain);
565+
NEW.connecat_id, NEW.workcat_id, NEW.workcat_id_end, NEW.builtdate, NEW.enddate, NEW.exit_elev, NEW.exit_topelev, NEW.uncertain, NEW.muni_id);
566566
END IF;
567567

568568
-- update feature
@@ -692,9 +692,9 @@ BEGIN
692692

693693
END IF;
694694

695-
-- update link state
695+
-- update link parameters
696696
UPDATE link SET state = NEW.state, the_geom = NEW.the_geom, workcat_id = NEW.workcat_id, workcat_id_end = NEW.workcat_id_end, builtdate = NEW.builtdate,
697-
enddate = NEW.enddate, exit_elev = NEW.exit_elev, exit_topelev = NEW.exit_topelev, uncertain = NEW.uncertain
697+
enddate = NEW.enddate, exit_elev = NEW.exit_elev, exit_topelev = NEW.exit_topelev, uncertain = NEW.uncertain, muni_id = NEW.muni_id
698698
WHERE link_id=NEW.link_id;
699699

700700
-- Update state_type if edit_connect_update_statetype is TRUE

utils/ftrg/gw_trg_link_data.sql

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,15 @@ BEGIN
2626
IF v_feature_type = 'LINK' THEN
2727

2828
IF v_projecttype = 'WS' THEN
29-
UPDATE link l SET epa_type = c.epa_type, is_operative = v.is_operative, expl_id2 = c.expl_id2, connecat_id = c.connecat_id, fluid_type = c.fluid_type
29+
UPDATE link l SET epa_type = c.epa_type, is_operative = v.is_operative, expl_id2 = c.expl_id2, connecat_id = c.connecat_id, fluid_type = c.fluid_type, muni_id = c.muni_id
3030
FROM connec c
3131
JOIN value_state_type v ON v.id = c.state_type WHERE l.feature_id = c.connec_id AND c.connec_id = NEW.feature_id AND l.state > 0 AND link_id = NEW.link_id;
3232
ELSE
33-
UPDATE link l SET epa_type = c.epa_type, is_operative = v.is_operative, expl_id2 = c.expl_id2, connecat_id=c.connec_arccat_id, fluid_type = c.fluid_type
33+
UPDATE link l SET epa_type = c.epa_type, is_operative = v.is_operative, expl_id2 = c.expl_id2, connecat_id=c.connec_arccat_id, fluid_type = c.fluid_type, muni_id = c.muni_id
3434
FROM gully c
3535
JOIN value_state_type v ON v.id = c.state_type WHERE l.feature_id = c.gully_id AND c.gully_id = NEW.feature_id AND l.state > 0 AND link_id = NEW.link_id;
3636

37-
UPDATE link l SET is_operative = v.is_operative, expl_id2 = c.expl_id2, connecat_id = c.connecat_id, fluid_type = c.fluid_type
37+
UPDATE link l SET is_operative = v.is_operative, expl_id2 = c.expl_id2, connecat_id = c.connecat_id, fluid_type = c.fluid_type, muni_id = c.muni_id
3838
FROM connec c
3939
JOIN value_state_type v ON v.id = c.state_type WHERE l.feature_id = c.connec_id AND c.connec_id = NEW.feature_id AND l.state > 0 AND link_id = NEW.link_id;
4040
END IF;
@@ -53,16 +53,16 @@ BEGIN
5353
IF v_feature_type = 'CONNEC' THEN
5454

5555
IF v_projecttype = 'WS' THEN
56-
UPDATE link SET epa_type = NEW.epa_type, is_operative = v.is_operative, expl_id2 = NEW.expl_id2, connecat_id = NEW.connecat_id, fluid_type = NEW.fluid_type
56+
UPDATE link SET epa_type = NEW.epa_type, is_operative = v.is_operative, expl_id2 = NEW.expl_id2, connecat_id = NEW.connecat_id, fluid_type = NEW.fluid_type, muni_id = NEW.muni_id
5757
FROM value_state_type v WHERE id = NEW.state_type AND feature_id = NEW.connec_id;
5858
ELSE
59-
UPDATE link SET is_operative = v.is_operative, expl_id2 = NEW.expl_id2, connecat_id = NEW.connecat_id, fluid_type = NEW.fluid_type
59+
UPDATE link SET is_operative = v.is_operative, expl_id2 = NEW.expl_id2, connecat_id = NEW.connecat_id, fluid_type = NEW.fluid_type,muni_id = NEW.muni_id
6060
FROM value_state_type v WHERE id = NEW.state_type AND feature_id = NEW.connec_id;
6161
END IF;
6262

6363
ELSIF v_feature_type = 'GULLY' THEN
6464

65-
UPDATE link SET epa_type = NEW.epa_type, is_operative = v.is_operative, expl_id2 = NEW.expl_id2, connecat_id = NEW.connec_arccat_id, fluid_type = NEW.fluid_type
65+
UPDATE link SET epa_type = NEW.epa_type, is_operative = v.is_operative, expl_id2 = NEW.expl_id2, connecat_id = NEW.connec_arccat_id, fluid_type = NEW.fluid_type, muni_id = NEW.muni_id
6666
FROM value_state_type v WHERE id = NEW.state_type AND feature_id = NEW.gully_id;
6767

6868
ELSIF v_feature_type = 'LINK' THEN

0 commit comments

Comments
 (0)