This commit is contained in:
Magnus Åhall 2026-08-23 10:20:02 +02:00
parent e68a66f5ce
commit 24befcce36
3 changed files with 22 additions and 10 deletions

View file

@ -285,19 +285,13 @@ func DatapointRetrieve(id int, name string) (dp Datapoint, err error) { // {{{
rows, _ := db.Query(context.Background(), query, param) rows, _ := db.Query(context.Background(), query, param)
dp, err = pgx.CollectExactlyOneRow(rows, pgx.RowToStructByNameLax[Datapoint]) dp, err = pgx.CollectExactlyOneRow(rows, pgx.RowToStructByNameLax[Datapoint])
if err != nil { if errors.Is(err, pgx.ErrNoRows) {
err = werr.Wrap(err)
return
}
if err == sql.ErrNoRows {
dp = Datapoint{ dp = Datapoint{
Name: name, Name: name,
} }
err = nil err = nil
return return
} }
if err != nil { if err != nil {
err = werr.Wrap(err).WithData(name) err = werr.Wrap(err).WithData(name)
return return
@ -315,7 +309,7 @@ func DatapointRetrieve(id int, name string) (dp Datapoint, err error) { // {{{
dp.ID, dp.ID,
) )
dp.LastDatapointValue, err = pgx.CollectExactlyOneRow(rows, pgx.RowToStructByNameLax[DatapointValue]) dp.LastDatapointValue, err = pgx.CollectExactlyOneRow(rows, pgx.RowToStructByNameLax[DatapointValue])
if err == sql.ErrNoRows { if errors.Is(err, pgx.ErrNoRows) {
err = nil err = nil
return return
} }

20
main.go
View file

@ -431,7 +431,25 @@ func pageIndex(w http.ResponseWriter, r *http.Request) { // {{{
page.Render(w, r) page.Render(w, r)
} // }}} } // }}}
func actionDashboardValues(w http.ResponseWriter, r *http.Request) { // {{{ func actionDashboardValues(w http.ResponseWriter, r *http.Request) { // {{{
values, err := DatapointsValue([]int{13, 15}) name := "start"
dashboard, err := DashboardGet(name)
if err != nil {
logger.Error("dashboard", "error", err)
httpError(w, err)
return
}
idMap := make(map[int]bool)
var ids []int
for _, w := range dashboard.Widgets {
idMap[w.DatapointID] = true
}
for id := range idMap {
ids = append(ids, id)
}
values, err := DatapointsValue(ids)
if err != nil { if err != nil {
logger.Error("dashboard", "error", err) logger.Error("dashboard", "error", err)
httpError(w, err) httpError(w, err)

View file

@ -123,7 +123,7 @@ func ProblemStart(trigger Trigger) (problemID int, err error) { // {{{
) )
var openProblems int var openProblems int
err = row.Scan(&openProblems) err = row.Scan(&openProblems)
if err != nil && err != sql.ErrNoRows { if err != nil && errors.Is(err, pgx.ErrNoRows) {
err = werr.Wrap(err).WithData(trigger.ID) err = werr.Wrap(err).WithData(trigger.ID)
return return
} }