Mercurial > gemma
comparison pkg/imports/gm.go @ 3847:d7b9d5c0ebad
gm import: Ignore (and warn for) water levels of -99999.
This value is used by some gauges to signal errors and should never be valid.
author | Sascha Wilde <wilde@intevation.de> |
---|---|
date | Mon, 08 Jul 2019 10:54:51 +0200 |
parents | 9759355d7b90 |
children | 0b65915757c8 6c5c15b2fb64 |
comparison
equal
deleted
inserted
replaced
3824:6c3e5dd2b596 | 3847:d7b9d5c0ebad |
---|---|
381 referenceCode = "ZPG" | 381 referenceCode = "ZPG" |
382 } else { | 382 } else { |
383 referenceCode = string(*wrm.Reference_code) | 383 referenceCode = string(*wrm.Reference_code) |
384 } | 384 } |
385 | 385 |
386 badValue := 0 | |
386 newM, newP := 0, 0 | 387 newM, newP := 0, 0 |
387 for _, measure := range wrm.Measure { | 388 for _, measure := range wrm.Measure { |
388 var unit string | 389 var unit string |
389 if *measure.Measure_code != nts.Measure_code_enumWAL { | 390 if *measure.Measure_code != nts.Measure_code_enumWAL { |
390 feedback.Warn("Ignored message with measure_code %s", | 391 feedback.Warn("Ignored message with measure_code %s", |
402 return nil, err | 403 return nil, err |
403 } | 404 } |
404 convert(measure.Value) | 405 convert(measure.Value) |
405 convert(measure.Value_min) | 406 convert(measure.Value_min) |
406 convert(measure.Value_max) | 407 convert(measure.Value_max) |
408 | |
409 // -99999 is used by some gauges to signal an error | |
410 if *measure.Value == -99999 { | |
411 badValue++ | |
412 continue | |
413 } | |
407 | 414 |
408 var dummy int | 415 var dummy int |
409 if measure.Predicted { | 416 if measure.Predicted { |
410 confInterval := pgtype.Numrange{ | 417 confInterval := pgtype.Numrange{ |
411 Lower: pgtype.Numeric{Status: pgtype.Null}, | 418 Lower: pgtype.Numeric{Status: pgtype.Null}, |
484 default: | 491 default: |
485 newM++ | 492 newM++ |
486 } | 493 } |
487 } | 494 } |
488 } | 495 } |
496 if badValue > 0 { | |
497 feedback.Warn("Ignored %d measurements with value -99999", | |
498 badValue) | |
499 } | |
489 feedback.Info("Inserted %d measurements for %s", | 500 feedback.Info("Inserted %d measurements for %s", |
490 newM, curr) | 501 newM, curr) |
491 feedback.Info("Inserted %d predictions for %s", | 502 feedback.Info("Inserted %d predictions for %s", |
492 newP, curr) | 503 newP, curr) |
493 gids = append(gids, curr) | 504 gids = append(gids, curr) |