Mercurial > gemma
diff pkg/imports/sr.go @ 3659:66f2cb789905 single-beam
Merged default into single-beam branch.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Fri, 14 Jun 2019 12:02:58 +0200 |
parents | 1c3df921361d 2a079d0a71c1 |
children | 58508f50d192 |
line wrap: on
line diff
--- a/pkg/imports/sr.go Fri Jun 14 11:59:14 2019 +0200 +++ b/pkg/imports/sr.go Fri Jun 14 12:02:58 2019 +0200 @@ -114,11 +114,13 @@ insertHullSQL = ` INSERT INTO waterway.sounding_results ( bottleneck_id, + bottleneck_validity, date_info, depth_reference, area ) SELECT - (SELECT id from waterway.bottlenecks where objnam = $1), + bottleneck_id, + validity, $2::date, $3, (SELECT @@ -127,6 +129,8 @@ ELSE ST_MakeValid(ST_Transform(ST_GeomFromWKB($5, $6::integer), 4326))::geography END) +FROM waterway.bottlenecks +WHERE objnam = $1 AND validity @> CAST($2 AS timestamptz) RETURNING id, ST_X(ST_Centroid(area::geometry)), @@ -188,7 +192,9 @@ JOIN waterway.bottlenecks bns ON grwl.location = bns.gauge_location AND grwl.validity = bns.gauge_validity -WHERE bns.objnam = $1 AND grwl.depth_reference like 'LDC%' +WHERE bns.objnam = $1 + AND bns.validity @> CAST($2 AS timestamptz) + AND grwl.depth_reference like 'LDC%' ` reprojectPointsSingleBeamSQL = ` @@ -242,7 +248,11 @@ feedback.Info("Found ZPG as reference system -> translating Z values to LDC") var ldc float64 var depthReference string - err := conn.QueryRowContext(ctx, selectGaugeLDCSQL, m.Bottleneck).Scan( + err := conn.QueryRowContext(ctx, + selectGaugeLDCSQL, + m.Bottleneck, + m.Date.Time, + ).Scan( &ldc, &depthReference, ) @@ -643,7 +653,11 @@ ) xyz, boundary = nil, nil // not need from now on. feedback.Info("Calculating hull took %s.", time.Since(start)) - if err != nil { + switch { + case err == sql.ErrNoRows: + return nil, fmt.Errorf( + "No bottleneck matching given name and time available") + case err != nil: return nil, err } feedback.Info("Best suited UTM EPSG: %d", epsg)