# HG changeset patch # User Markus Kottlaender # Date 1559145911 -7200 # Node ID 4e4c0d2b8654ec6028a7e60dffeb74f9839551b5 # Parent 804df080c8267d92c4e7c25247577e1c2bc5139e# Parent e98ea184538e00e022e14e2c373e85fa3400ed16 merged default into waterlevel-in-crossprofile branch diff -r 804df080c826 -r 4e4c0d2b8654 pkg/controllers/stretches.go --- a/pkg/controllers/stretches.go Wed May 29 18:04:07 2019 +0200 +++ b/pkg/controllers/stretches.go Wed May 29 18:05:11 2019 +0200 @@ -418,7 +418,7 @@ return } - from, ok := parseFormTime(rw, req, "form", time.Now().AddDate(-1, 0, 0)) + from, ok := parseFormTime(rw, req, "from", time.Now().AddDate(-1, 0, 0)) if !ok { return } diff -r 804df080c826 -r 4e4c0d2b8654 pkg/imports/bn.go --- a/pkg/imports/bn.go Wed May 29 18:04:07 2019 +0200 +++ b/pkg/imports/bn.go Wed May 29 18:05:11 2019 +0200 @@ -20,6 +20,7 @@ "errors" "regexp" "strconv" + "strings" "time" "gemma.intevation.de/gemma/pkg/soap/ifbn" @@ -268,10 +269,12 @@ rb, lb := splitRBLB(bn.Rb_lb) var revisitingTime *int - if bn.Revisiting_time != nil { + if bn.Revisiting_time != nil && + len(strings.TrimSpace(*bn.Revisiting_time)) > 0 { i, err := strconv.Atoi(*bn.Revisiting_time) if err != nil { - feedback.Warn("Cannot convert '%s' to number of months", + feedback.Warn( + "Cannot convert given revisiting time '%s' to number of months", *bn.Revisiting_time) } else { revisitingTime = &i diff -r 804df080c826 -r 4e4c0d2b8654 pkg/imports/sr.go --- a/pkg/imports/sr.go Wed May 29 18:04:07 2019 +0200 +++ b/pkg/imports/sr.go Wed May 29 18:05:11 2019 +0200 @@ -164,7 +164,8 @@ selectGaugeLDCSQL = ` SELECT - grwl.value + grwl.value, + grwl.depth_reference FROM waterway.gauges_reference_water_levels grwl JOIN waterway.bottlenecks bns ON grwl.location = bns.gauge_location @@ -208,7 +209,11 @@ if m.DepthReference == "ZPG" { feedback.Info("Found ZPG as reference system -> translating Z values to LDC") var ldc float64 - err := conn.QueryRowContext(ctx, selectGaugeLDCSQL, m.Bottleneck).Scan(&ldc) + var depthReference string + err := conn.QueryRowContext(ctx, selectGaugeLDCSQL, m.Bottleneck).Scan( + &ldc, + &depthReference, + ) switch { case err == sql.ErrNoRows: return nil, errors.New("Cannot load LDC value") @@ -218,7 +223,7 @@ xform = func(v octree.Vertex) octree.Vertex { return octree.Vertex{X: v.X, Y: v.Y, Z: ldc - v.Z} } - m.DepthReference = "LDC" + m.DepthReference = depthReference } if err := m.Validate(ctx, conn); err != nil { diff -r 804df080c826 -r 4e4c0d2b8654 pkg/imports/wg.go --- a/pkg/imports/wg.go Wed May 29 18:04:07 2019 +0200 +++ b/pkg/imports/wg.go Wed May 29 18:05:11 2019 +0200 @@ -235,10 +235,10 @@ gauges = append(gauges, isrs) feedback.Info("Processing %s", code) - // We need a valid time range to identify gauge versions in DB + // We need a valid, non-empty time range to identify gauge versions if dr.Enddate != nil && dr.Startdate != nil && - time.Time(*dr.Enddate).Before(time.Time(*dr.Startdate)) { - feedback.Warn("End date before start date") + !time.Time(*dr.Enddate).After(time.Time(*dr.Startdate)) { + feedback.Warn("End date not after start date") unchanged++ continue } diff -r 804df080c826 -r 4e4c0d2b8654 schema/gemma.sql --- a/schema/gemma.sql Wed May 29 18:04:07 2019 +0200 +++ b/schema/gemma.sql Wed May 29 18:05:11 2019 +0200 @@ -280,7 +280,7 @@ geom geography(POINT, 4326) NOT NULL, applicability_from_km int8, applicability_to_km int8, - validity tstzrange, + validity tstzrange NOT NULL, zero_point double precision NOT NULL, geodref varchar, date_info timestamp with time zone NOT NULL,