This adds the ability to link a proper address in the database to the report and harmonizes the field names with the address table. It also migrates away from mapbox entirely. And I fixed the "pool" naming for the publicreports, which are supposed to be the more generic 'water'.
117 lines
3.9 KiB
Go
117 lines
3.9 KiB
Go
// Code generated by BobGen psql v0.42.5. DO NOT EDIT.
|
|
// This file is meant to be re-generated in place and/or deleted at any time.
|
|
|
|
package sql
|
|
|
|
import (
|
|
"context"
|
|
_ "embed"
|
|
"io"
|
|
"iter"
|
|
|
|
"github.com/Gleipnir-Technology/bob"
|
|
"github.com/Gleipnir-Technology/bob/clause"
|
|
"github.com/Gleipnir-Technology/bob/dialect/psql"
|
|
"github.com/Gleipnir-Technology/bob/dialect/psql/dialect"
|
|
"github.com/Gleipnir-Technology/bob/orm"
|
|
"github.com/aarondl/opt/null"
|
|
"github.com/stephenafamo/scan"
|
|
)
|
|
|
|
//go:embed publicreport_publicid_suggestion.bob.sql
|
|
var formattedQueries_publicreport_publicid_suggestion string
|
|
|
|
var publicreportPublicIDSuggestionSQL = formattedQueries_publicreport_publicid_suggestion[168:428]
|
|
|
|
type PublicreportPublicIDSuggestionQuery = orm.ModQuery[*dialect.SelectQuery, publicreportPublicIDSuggestion, PublicreportPublicIDSuggestionRow, []PublicreportPublicIDSuggestionRow, publicreportPublicIDSuggestionTransformer]
|
|
|
|
func PublicreportPublicIDSuggestion(Arg1 string) *PublicreportPublicIDSuggestionQuery {
|
|
var expressionTypArgs publicreportPublicIDSuggestion
|
|
|
|
expressionTypArgs.Arg1 = psql.Arg(Arg1)
|
|
|
|
return &PublicreportPublicIDSuggestionQuery{
|
|
Query: orm.Query[publicreportPublicIDSuggestion, PublicreportPublicIDSuggestionRow, []PublicreportPublicIDSuggestionRow, publicreportPublicIDSuggestionTransformer]{
|
|
ExecQuery: orm.ExecQuery[publicreportPublicIDSuggestion]{
|
|
BaseQuery: bob.BaseQuery[publicreportPublicIDSuggestion]{
|
|
Expression: expressionTypArgs,
|
|
Dialect: dialect.Dialect,
|
|
QueryType: bob.QueryTypeSelect,
|
|
},
|
|
},
|
|
Scanner: func(context.Context, []string) (func(*scan.Row) (any, error), func(any) (PublicreportPublicIDSuggestionRow, error)) {
|
|
return func(row *scan.Row) (any, error) {
|
|
var t PublicreportPublicIDSuggestionRow
|
|
row.ScheduleScanByIndex(0, &t.TableName)
|
|
row.ScheduleScanByIndex(1, &t.PublicID)
|
|
row.ScheduleScanByIndex(2, &t.Location)
|
|
return &t, nil
|
|
}, func(v any) (PublicreportPublicIDSuggestionRow, error) {
|
|
return *(v.(*PublicreportPublicIDSuggestionRow)), nil
|
|
}
|
|
},
|
|
},
|
|
Mod: bob.ModFunc[*dialect.SelectQuery](func(q *dialect.SelectQuery) {
|
|
q.AppendSelect(expressionTypArgs.subExpr(10, 59))
|
|
q.SetTable(expressionTypArgs.subExpr(68, 89))
|
|
q.AppendWhere(expressionTypArgs.subExpr(99, 116))
|
|
|
|
q.AppendCombine(clause.Combine{
|
|
Strategy: "UNION",
|
|
All: true,
|
|
Query: bob.BaseQuery[bob.Expression]{
|
|
Expression: expressionTypArgs.subExpr(129, 239),
|
|
QueryType: bob.QueryTypeSelect,
|
|
Dialect: dialect.Dialect,
|
|
},
|
|
})
|
|
q.CombinedOrder.AppendOrder(expressionTypArgs.subExpr(251, 260))
|
|
}),
|
|
}
|
|
}
|
|
|
|
type PublicreportPublicIDSuggestionRow = struct {
|
|
TableName string `db:"table_name"`
|
|
PublicID string `db:"public_id"`
|
|
Location null.Val[string] `db:"location"`
|
|
}
|
|
|
|
type publicreportPublicIDSuggestionTransformer = bob.SliceTransformer[PublicreportPublicIDSuggestionRow, []PublicreportPublicIDSuggestionRow]
|
|
|
|
type publicreportPublicIDSuggestion struct {
|
|
Arg1 bob.Expression
|
|
}
|
|
|
|
func (o publicreportPublicIDSuggestion) args() iter.Seq[orm.ArgWithPosition] {
|
|
return func(yield func(arg orm.ArgWithPosition) bool) {
|
|
if !yield(orm.ArgWithPosition{
|
|
Name: "arg1",
|
|
Start: 114,
|
|
Stop: 116,
|
|
Expression: o.Arg1,
|
|
}) {
|
|
return
|
|
}
|
|
|
|
if !yield(orm.ArgWithPosition{
|
|
Name: "arg1",
|
|
Start: 237,
|
|
Stop: 239,
|
|
Expression: o.Arg1,
|
|
}) {
|
|
return
|
|
}
|
|
}
|
|
}
|
|
|
|
func (o publicreportPublicIDSuggestion) raw(from, to int) string {
|
|
return publicreportPublicIDSuggestionSQL[from:to]
|
|
}
|
|
|
|
func (o publicreportPublicIDSuggestion) subExpr(from, to int) bob.Expression {
|
|
return orm.ArgsToExpression(publicreportPublicIDSuggestionSQL, from, to, o.args())
|
|
}
|
|
|
|
func (o publicreportPublicIDSuggestion) WriteSQL(ctx context.Context, w io.StringWriter, d bob.Dialect, start int) ([]any, error) {
|
|
return o.subExpr(0, len(publicreportPublicIDSuggestionSQL)).WriteSQL(ctx, w, d, start)
|
|
}
|