diff 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
line wrap: on
line diff
--- a/pkg/controllers/surveys.go	Fri Feb 08 11:32:14 2019 +0100
+++ b/pkg/controllers/surveys.go	Fri Feb 08 11:47:31 2019 +0100
@@ -69,23 +69,27 @@
 	}
 	defer rows.Close()
 
-	surveys := []models.Survey{}
+	surveys := []*models.Survey{}
 
 	// as we do not use the values here, we could simply the code here
 	// to work without an explicit mdels/surverys.go
 	// (like done in controllers/search.go)
 	for rows.Next() {
 		var survey models.Survey
+		var level sql.NullInt64
 		if err = rows.Scan(
 			&survey.BottleneckID,
 			&survey.DateInfo,
 			&survey.DepthReference,
 			&survey.ReferenceGauge,
-			&survey.WaterLevelValue,
+			&level,
 		); err != nil {
 			return
 		}
-		surveys = append(surveys, survey)
+		if level.Valid {
+			survey.WaterLevelValue = &level.Int64
+		}
+		surveys = append(surveys, &survey)
 	}
 
 	if err = rows.Err(); err != nil {
@@ -94,7 +98,7 @@
 
 	jr = JSONResult{
 		Result: struct {
-			Surveys []models.Survey `json:"surveys"`
+			Surveys []*models.Survey `json:"surveys"`
 		}{surveys},
 	}
 	return