Skip to content

Commit

Permalink
fix: change right for left join to selector_municiplaity on various v…
Browse files Browse the repository at this point in the history
…iews and change fct_setselector to only check muni_id > 0 when check all
  • Loading branch information
albertbofill committed Sep 2, 2024
1 parent 323d9e6 commit cbf6ad3
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 19 deletions.
2 changes: 1 addition & 1 deletion example/user/ud/ud_99_sample_zfinal.sql
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ SET search_path = 'SCHEMA_NAME', public, pg_catalog;
INSERT INTO selector_sector SELECT sector_id, current_user from sector where sector_id > 0 ON CONFLICT (sector_id, cur_user) DO NOTHING;
DELETE FROM selector_psector;

INSERT INTO selector_municipality SELECT muni_id,current_user FROM ext_municipality ON CONFLICT (muni_id, cur_user) DO NOTHING;
INSERT INTO selector_municipality SELECT muni_id,current_user FROM ext_municipality where muni_id > 0 ON CONFLICT (muni_id, cur_user) DO NOTHING;

UPDATE cat_feature SET id = 'OVERFLOW_STORAGE' WHERE id = 'OWERFLOW_STORAGE';

Expand Down
20 changes: 10 additions & 10 deletions updates/36/36012/ud/ddlview.sql
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,7 @@ SELECT element.element_id,
JOIN element_type ON element_type.id::text = cat_element.elementtype_id::text
WHERE element.expl_id = selector_expl.expl_id AND selector_expl.cur_user = "current_user"()::text) e
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user
and (m.cur_user = current_user or e.muni_id is null);

Expand Down Expand Up @@ -240,7 +240,7 @@ SELECT
LEFT JOIN dma ON dma.dma_id = samplepoint.dma_id
WHERE samplepoint.expl_id = selector_expl.expl_id AND selector_expl.cur_user = "current_user"()::text) sm
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user
and (m.cur_user = current_user or sm.muni_id is null);

Expand Down Expand Up @@ -329,23 +329,23 @@ CREATE OR REPLACE VIEW v_edit_link AS
FROM vu_link
JOIN v_state_link USING (link_id)) l
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user and (m.cur_user = current_user or l.muni_id is null);

CREATE OR REPLACE VIEW v_edit_link_connec AS
SELECT l.* FROM (
SELECT l.*
FROM vu_link_connec l) l
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user and (m.cur_user = current_user or l.muni_id is null);

CREATE OR REPLACE VIEW v_edit_link_gully AS
SELECT l.* FROM (
SELECT l.*
FROM vu_link_connec l) l
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user and (m.cur_user = current_user or l.muni_id is null);

CREATE OR REPLACE VIEW v_edit_drainzone
Expand Down Expand Up @@ -530,7 +530,7 @@ select a.* FROM ( SELECT selector_expl.expl_id FROM selector_expl WHERE selector
JOIN v_state_arc USING (arc_id)
WHERE a.expl_id = s.expl_id OR a.expl_id2 = s.expl_id) a
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user
and (m.cur_user = current_user or a.muni_id is null);

Expand Down Expand Up @@ -737,7 +737,7 @@ FROM ( select n.* FROM ( SELECT selector_expl.expl_id FROM selector_expl WHERE s
JOIN v_state_node USING (node_id)
WHERE n.expl_id = s.expl_id OR n.expl_id2 = s.expl_id) a
join v_sector_node s using (node_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where (m.cur_user = current_user or a.muni_id is null);

CREATE OR REPLACE VIEW vu_connec AS
Expand Down Expand Up @@ -972,7 +972,7 @@ WITH s AS (
WHERE (vu_link.expl_id = s_1.expl_id OR vu_link.expl_id2 = s_1.expl_id) AND vu_link.state = 2) a ON a.feature_id::text = vu_connec.connec_id::text
WHERE vu_connec.expl_id = s.expl_id OR vu_connec.expl_id2 = s.expl_id) c
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user
and (m.cur_user = current_user or c.muni_id is null);

Expand Down Expand Up @@ -1232,7 +1232,7 @@ WITH s AS (
WHERE (vu_link.expl_id = s_1.expl_id OR vu_link.expl_id2 = s_1.expl_id) AND vu_link.state = 2) a ON a.feature_id::text = vu_gully.gully_id::text
WHERE vu_gully.expl_id = s.expl_id OR vu_gully.expl_id2 = s.expl_id) g
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user
and (m.cur_user = current_user or g.muni_id is null);

Expand Down Expand Up @@ -4419,7 +4419,7 @@ CREATE OR REPLACE VIEW v_edit_raingage AS
raingage.expl_id,
raingage.muni_id
FROM selector_expl, raingage
RIGHT JOIN selector_municipality m USING (muni_id)
LEFT JOIN selector_municipality m USING (muni_id)
WHERE raingage.expl_id = selector_expl.expl_id AND selector_expl.cur_user = "current_user"()::text
AND (m.cur_user = current_user or raingage.muni_id is null);

Expand Down
16 changes: 8 additions & 8 deletions updates/36/36012/ws/ddlview.sql
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ SELECT e.* FROM ( SELECT element.element_id,
JOIN element_type ON element_type.id::text = cat_element.elementtype_id::text
WHERE element.expl_id = selector_expl.expl_id AND selector_expl.cur_user = "current_user"()::text) e
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user
and (m.cur_user = current_user or e.muni_id is null);

Expand Down Expand Up @@ -278,7 +278,7 @@ SELECT sm.* FROM ( SELECT samplepoint.sample_id,
LEFT JOIN dma ON dma.dma_id = samplepoint.dma_id
WHERE samplepoint.expl_id = selector_expl.expl_id AND selector_expl.cur_user = "current_user"()::text) sm
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user
and (m.cur_user = current_user or sm.muni_id is null);

Expand Down Expand Up @@ -456,7 +456,7 @@ select a.* FROM ( SELECT selector_expl.expl_id FROM selector_expl WHERE selector
JOIN v_state_arc USING (arc_id)
WHERE a.expl_id = s.expl_id OR a.expl_id2 = s.expl_id) a
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user
and (m.cur_user = current_user or a.muni_id is null);

Expand Down Expand Up @@ -608,7 +608,7 @@ JOIN v_state_node USING (node_id)
WHERE n.expl_id = s.expl_id OR n.expl_id2 = s.expl_id) a
LEFT JOIN man_valve v USING (node_id)
join v_sector_node s using (node_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where (m.cur_user = current_user or a.muni_id is null);


Expand Down Expand Up @@ -826,7 +826,7 @@ CREATE OR REPLACE VIEW v_edit_link AS
FROM vu_link
JOIN v_state_link USING (link_id)) l
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user and (m.cur_user = current_user or l.muni_id is null);


Expand Down Expand Up @@ -1044,7 +1044,7 @@ SELECT vu_connec.connec_id,
WHERE (vu_link.expl_id = s_1.expl_id OR vu_link.expl_id2 = s_1.expl_id) AND vu_link.state = 2) a ON a.feature_id::text = vu_connec.connec_id::text
WHERE vu_connec.expl_id = s.expl_id OR vu_connec.expl_id2 = s.expl_id) c
join selector_sector s using (sector_id)
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where s.cur_user = current_user
and (m.cur_user = current_user or c.muni_id is null);

Expand Down Expand Up @@ -3883,7 +3883,7 @@ CREATE OR REPLACE VIEW v_edit_pond AS
pond.muni_id
FROM selector_expl, pond
LEFT JOIN dma ON pond.dma_id = dma.dma_id
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where (m.cur_user = current_user or pond.muni_id is null) and
pond.expl_id = selector_expl.expl_id AND selector_expl.cur_user = "current_user"()::text;

Expand All @@ -3899,6 +3899,6 @@ CREATE OR REPLACE VIEW v_edit_pool AS
pool.muni_id
FROM selector_expl, pool
LEFT JOIN dma ON pool.dma_id = dma.dma_id
right join selector_municipality m using (muni_id)
LEFT JOIN selector_municipality m using (muni_id)
where (m.cur_user = current_user or pool.muni_id is null)
and pool.expl_id = selector_expl.expl_id AND selector_expl.cur_user = "current_user"()::text;
5 changes: 5 additions & 0 deletions utils/fct/gw_fct_setselectors.sql
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,11 @@ BEGIN
',(CASE when v_ids is not null then concat(' WHERE id = ANY(ARRAY',v_ids,') ') end),'
ON CONFLICT (',v_columnname,', cur_user) DO NOTHING;');

ELSIF v_tabname='tab_municipality' THEN
EXECUTE concat('INSERT INTO ',v_tablename,' (',v_columnname,', cur_user) SELECT ',v_tableid,', current_user FROM ',v_table,'
',(CASE when v_ids is not null then concat(' WHERE id = ANY(ARRAY',v_ids,')') end),' WHERE active AND muni_id > 0
ON CONFLICT (',v_columnname,', cur_user) DO NOTHING;');

ELSE
EXECUTE concat('INSERT INTO ',v_tablename,' (',v_columnname,', cur_user) SELECT ',v_tableid,', current_user FROM ',v_table,'
',(CASE when v_ids is not null then concat(' WHERE id = ANY(ARRAY',v_ids,')') end),' WHERE active
Expand Down

0 comments on commit cbf6ad3

Please sign in to comment.