Mercurial > gemma
changeset 4035:f2d5bf42ed38
AGM import: Simplified min/max measuredate handling a little bit.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Wed, 24 Jul 2019 10:54:18 +0200 |
parents | 4f2f34f5d14d |
children | e45442db19b1 edb1d11e14cd |
files | pkg/imports/agm.go |
diffstat | 1 files changed, 7 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/pkg/imports/agm.go Tue Jul 23 16:59:43 2019 +0200 +++ b/pkg/imports/agm.go Wed Jul 24 10:54:18 2019 +0200 @@ -326,7 +326,7 @@ agmLines := []*agmLine{} ignored := 0 - mdMinMax := map[models.Isrs][2]time.Time{} + mdMinMax := map[models.Isrs]*[2]time.Time{} lines: for line := 1; ; line++ { @@ -381,15 +381,15 @@ if err != nil { return nil, fmt.Errorf("Invalid 'measure_date' line %d: %v", line, err) } - if _, hasGid := mdMinMax[*gid]; hasGid { - if md.Before(mdMinMax[*gid][0]) { - mdMinMax[*gid] = [2]time.Time{md, mdMinMax[*gid][1]} + if v := mdMinMax[*gid]; v != nil { + if md.Before(v[0]) { + v[0] = md } - if md.After(mdMinMax[*gid][1]) { - mdMinMax[*gid] = [2]time.Time{mdMinMax[*gid][0], md} + if md.After(v[1]) { + v[1] = md } } else { - mdMinMax[*gid] = [2]time.Time{md, md} + mdMinMax[*gid] = &[2]time.Time{md, md} } newSender := agm.Originator