# HG changeset patch # User Tom Gottfried # Date 1554396377 -7200 # Node ID 78affd725ba528978e80da4fcce8a9e29daacafc # Parent 30c90673315434445e99c3bc13098204a07dd280 Fix insert statement for dismar ashore The statement missed to handle correctly the case where the intersection is empty. diff -r 30c906733154 -r 78affd725ba5 pkg/imports/dma.go --- a/pkg/imports/dma.go Thu Apr 04 18:23:49 2019 +0200 +++ b/pkg/imports/dma.go Thu Apr 04 18:46:17 2019 +0200 @@ -89,15 +89,15 @@ SELECT users.current_user_area_utm() AS a ) INSERT INTO waterway.distance_marks (geom, catdis) -SELECT ST_Transform( - CASE WHEN pg_has_role('sys_admin', 'MEMBER') - THEN new_dma - ELSE ST_Intersection((SELECT a FROM resp), - ST_Transform(new_dma, (SELECT ST_SRID(a) FROM resp))) - END, - 4326), - $3 - FROM ST_GeomFromWKB($1, $2::integer) AS new_dma (new_dma) +SELECT ST_Transform(new_dma, 4326), $3 + FROM (SELECT + CASE WHEN pg_has_role('sys_admin', 'MEMBER') + THEN dma + ELSE ST_Intersection((SELECT a FROM resp), + ST_Transform(dma, (SELECT ST_SRID(a) FROM resp))) + END AS new_dma + FROM ST_GeomFromWKB($1, $2::integer) AS dma (dma)) AS new_dma + WHERE NOT ST_IsEmpty(new_dma) RETURNING id ` )