# HG changeset patch # User Sascha L. Teichmann # Date 1547205023 -3600 # Node ID fcb0106ec51018b366306f6e30fabac339595469 # Parent f9ac2d4d206992437319ba810bfb1bc9fa2cbf33 Gauge measurement import: Added reference_code column. diff -r f9ac2d4d2069 -r fcb0106ec510 pkg/imports/agm.go --- a/pkg/imports/agm.go Fri Jan 11 12:01:26 2019 +0100 +++ b/pkg/imports/agm.go Fri Jan 11 12:10:23 2019 +0100 @@ -22,6 +22,7 @@ "log" "os" "path/filepath" + "strings" "gemma.intevation.de/gemma/pkg/common" ) @@ -109,8 +110,34 @@ return nil, err } + headerIndices := map[string]int{} + for i, f := range headers { log.Printf("%d: %s\n", i, f) + headerIndices[strings.ToLower(strings.TrimSpace(f))] = i + } + + for _, m := range [...]string{ + "fk_gauge_id", + "measure_date", + "from", // "sender", + "language_code", + "country_code", + "date_issue", + "reference_code", + "water_level", + "predicted", + "is_waterlevel", + "value_min", + "value_max", + "date_info", + "originator", // "source_organization", + } { + idx, found := headerIndices[m] + if !found { + log.Printf("missing column '%s'\n", m) + } + _ = idx } return nil, errors.New("Not implemented, yet!") diff -r f9ac2d4d2069 -r fcb0106ec510 pkg/imports/gm.go --- a/pkg/imports/gm.go Fri Jan 11 12:01:26 2019 +0100 +++ b/pkg/imports/gm.go Fri Jan 11 12:10:23 2019 +0100 @@ -58,6 +58,7 @@ language_code, country_code, date_issue, + reference_code, water_level, predicted, is_waterlevel, @@ -78,7 +79,8 @@ $14, $15, $16, - $17 + $17, + $18 ) RETURNING id` ) @@ -262,6 +264,13 @@ feedback.Warn("Invalid ISRS code %v", err) continue } + var referenceCode string + if wrm.Reference_code == nil { + feedback.Info("'Reference_code' not specified. Assuming 'ZPG'") + referenceCode = "ZPG" + } else { + referenceCode = *wrm.Reference_code + } for _, measure := range wrm.Measure { var unit string if measure.Unit == nil { @@ -287,6 +296,7 @@ msg.Identification.Language_code, msg.Identification.Country_code, msg.Identification.Date_issue, + referenceCode, convert(measure.Value), measure.Predicted, isWaterlevel, diff -r f9ac2d4d2069 -r fcb0106ec510 schema/gemma.sql --- a/schema/gemma.sql Fri Jan 11 12:01:26 2019 +0100 +++ b/schema/gemma.sql Fri Jan 11 12:10:23 2019 +0100 @@ -274,8 +274,7 @@ sender varchar NOT NULL, -- "from" attribute from DRC language_code varchar NOT NULL REFERENCES language_codes, date_issue timestamp with time zone NOT NULL, - -- reference_code varchar(4) NOT NULL REFERENCES depth_references, - -- XXX: Always ZPG? + reference_code varchar(4) NOT NULL REFERENCES depth_references, water_level double precision NOT NULL, predicted boolean NOT NULL, is_waterlevel boolean NOT NULL,