comparison pkg/imports/agm.go @ 1775:fcb0106ec510

Gauge measurement import: Added reference_code column.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 11 Jan 2019 12:10:23 +0100
parents 70c4dc694d61
children 164b46ebd60d
comparison
equal deleted inserted replaced
1774:f9ac2d4d2069 1775:fcb0106ec510
20 "encoding/csv" 20 "encoding/csv"
21 "errors" 21 "errors"
22 "log" 22 "log"
23 "os" 23 "os"
24 "path/filepath" 24 "path/filepath"
25 "strings"
25 26
26 "gemma.intevation.de/gemma/pkg/common" 27 "gemma.intevation.de/gemma/pkg/common"
27 ) 28 )
28 29
29 type ApprovedGaugeMeasurements struct { 30 type ApprovedGaugeMeasurements struct {
107 headers, err := r.Read() 108 headers, err := r.Read()
108 if err != nil { 109 if err != nil {
109 return nil, err 110 return nil, err
110 } 111 }
111 112
113 headerIndices := map[string]int{}
114
112 for i, f := range headers { 115 for i, f := range headers {
113 log.Printf("%d: %s\n", i, f) 116 log.Printf("%d: %s\n", i, f)
117 headerIndices[strings.ToLower(strings.TrimSpace(f))] = i
118 }
119
120 for _, m := range [...]string{
121 "fk_gauge_id",
122 "measure_date",
123 "from", // "sender",
124 "language_code",
125 "country_code",
126 "date_issue",
127 "reference_code",
128 "water_level",
129 "predicted",
130 "is_waterlevel",
131 "value_min",
132 "value_max",
133 "date_info",
134 "originator", // "source_organization",
135 } {
136 idx, found := headerIndices[m]
137 if !found {
138 log.Printf("missing column '%s'\n", m)
139 }
140 _ = idx
114 } 141 }
115 142
116 return nil, errors.New("Not implemented, yet!") 143 return nil, errors.New("Not implemented, yet!")
117 } 144 }