comparison pkg/controllers/surveys.go @ 2152:8132434f4093

Surveys controller: Fixed nullable water level.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 08 Feb 2019 11:47:31 +0100
parents ed0ee54fc49e
children 8a8680e70d2e
comparison
equal deleted inserted replaced
2151:d639b721c7be 2152:8132434f4093
67 if err != nil { 67 if err != nil {
68 return 68 return
69 } 69 }
70 defer rows.Close() 70 defer rows.Close()
71 71
72 surveys := []models.Survey{} 72 surveys := []*models.Survey{}
73 73
74 // as we do not use the values here, we could simply the code here 74 // as we do not use the values here, we could simply the code here
75 // to work without an explicit mdels/surverys.go 75 // to work without an explicit mdels/surverys.go
76 // (like done in controllers/search.go) 76 // (like done in controllers/search.go)
77 for rows.Next() { 77 for rows.Next() {
78 var survey models.Survey 78 var survey models.Survey
79 var level sql.NullInt64
79 if err = rows.Scan( 80 if err = rows.Scan(
80 &survey.BottleneckID, 81 &survey.BottleneckID,
81 &survey.DateInfo, 82 &survey.DateInfo,
82 &survey.DepthReference, 83 &survey.DepthReference,
83 &survey.ReferenceGauge, 84 &survey.ReferenceGauge,
84 &survey.WaterLevelValue, 85 &level,
85 ); err != nil { 86 ); err != nil {
86 return 87 return
87 } 88 }
88 surveys = append(surveys, survey) 89 if level.Valid {
90 survey.WaterLevelValue = &level.Int64
91 }
92 surveys = append(surveys, &survey)
89 } 93 }
90 94
91 if err = rows.Err(); err != nil { 95 if err = rows.Err(); err != nil {
92 return 96 return
93 } 97 }
94 98
95 jr = JSONResult{ 99 jr = JSONResult{
96 Result: struct { 100 Result: struct {
97 Surveys []models.Survey `json:"surveys"` 101 Surveys []*models.Survey `json:"surveys"`
98 }{surveys}, 102 }{surveys},
99 } 103 }
100 return 104 return
101 } 105 }