Mercurial > gemma
view pkg/controllers/surveys.go @ 928:0a0013fbda4a geo-style
octree2contour: Merge multi linestrings in user land before sending them to database.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 08 Oct 2018 13:09:02 +0200 |
parents | a5452a001b46 |
children | a244b18cb916 |
line wrap: on
line source
package controllers import ( "database/sql" "net/http" "gemma.intevation.de/gemma/pkg/models" "github.com/gorilla/mux" ) const ( listSurveysSQL = `SELECT s.bottleneck_id, s.date_info::text FROM waterway.bottlenecks b, waterway.sounding_results s WHERE b.objnam=$1 AND s.bottleneck_id = b.bottleneck_id;` ) func listSurveys( _ interface{}, req *http.Request, db *sql.Conn, ) (jr JSONResult, err error) { bottleneckName := mux.Vars(req)["bottleneck"] var rows *sql.Rows rows, err = db.QueryContext(req.Context(), listSurveysSQL, bottleneckName) if err != nil { return } defer rows.Close() surveys := []models.Survey{} for rows.Next() { var survey models.Survey if err = rows.Scan( &survey.BottleneckId, &survey.DateInfo, ); err != nil { return } surveys = append(surveys, survey) } if err = rows.Err(); err != nil { return } jr = JSONResult{ Result: struct { Surveys []models.Survey `json:"surveys"` }{surveys}, } return }