This is an intermediate step between shifting from the old fs_* prefixed table names to an entire fieldseeker schema. At this point we have both, and we aren't doing much with the new schema but compiling.
194 lines
13 KiB
Go
194 lines
13 KiB
Go
// Code generated by BobGen psql v0.42.0. DO NOT EDIT.
|
|
// This file is meant to be re-generated in place and/or deleted at any time.
|
|
|
|
package models
|
|
|
|
import (
|
|
"hash/maphash"
|
|
|
|
"github.com/stephenafamo/bob"
|
|
"github.com/stephenafamo/bob/clause"
|
|
"github.com/stephenafamo/bob/dialect/psql/dialect"
|
|
)
|
|
|
|
var (
|
|
SelectJoins = getJoins[*dialect.SelectQuery]()
|
|
UpdateJoins = getJoins[*dialect.UpdateQuery]()
|
|
DeleteJoins = getJoins[*dialect.DeleteQuery]()
|
|
)
|
|
|
|
type joinSet[Q interface{ aliasedAs(string) Q }] struct {
|
|
InnerJoin Q
|
|
LeftJoin Q
|
|
RightJoin Q
|
|
}
|
|
|
|
func (j joinSet[Q]) AliasedAs(alias string) joinSet[Q] {
|
|
return joinSet[Q]{
|
|
InnerJoin: j.InnerJoin.aliasedAs(alias),
|
|
LeftJoin: j.LeftJoin.aliasedAs(alias),
|
|
RightJoin: j.RightJoin.aliasedAs(alias),
|
|
}
|
|
}
|
|
|
|
type joins[Q dialect.Joinable] struct {
|
|
FieldseekerRodentlocations joinSet[fieldseekerRodentlocationJoins[Q]]
|
|
FieldseekerSyncs joinSet[fieldseekerSyncJoins[Q]]
|
|
FSContainerrelates joinSet[fsContainerrelateJoins[Q]]
|
|
FSFieldscoutinglogs joinSet[fsFieldscoutinglogJoins[Q]]
|
|
FSHabitatrelates joinSet[fsHabitatrelateJoins[Q]]
|
|
FSInspectionsamples joinSet[fsInspectionsampleJoins[Q]]
|
|
FSInspectionsampledetails joinSet[fsInspectionsampledetailJoins[Q]]
|
|
FSLinelocations joinSet[fsLinelocationJoins[Q]]
|
|
FSLocationtrackings joinSet[fsLocationtrackingJoins[Q]]
|
|
FSMosquitoinspections joinSet[fsMosquitoinspectionJoins[Q]]
|
|
FSPointlocations joinSet[fsPointlocationJoins[Q]]
|
|
FSPolygonlocations joinSet[fsPolygonlocationJoins[Q]]
|
|
FSPools joinSet[fsPoolJoins[Q]]
|
|
FSPooldetails joinSet[fsPooldetailJoins[Q]]
|
|
FSProposedtreatmentareas joinSet[fsProposedtreatmentareaJoins[Q]]
|
|
FSQamosquitoinspections joinSet[fsQamosquitoinspectionJoins[Q]]
|
|
FSRodentlocations joinSet[fsRodentlocationJoins[Q]]
|
|
FSSamplecollections joinSet[fsSamplecollectionJoins[Q]]
|
|
FSSamplelocations joinSet[fsSamplelocationJoins[Q]]
|
|
FSServicerequests joinSet[fsServicerequestJoins[Q]]
|
|
FSSpeciesabundances joinSet[fsSpeciesabundanceJoins[Q]]
|
|
FSStormdrains joinSet[fsStormdrainJoins[Q]]
|
|
FSTimecards joinSet[fsTimecardJoins[Q]]
|
|
FSTrapdata joinSet[fsTrapdatumJoins[Q]]
|
|
FSTraplocations joinSet[fsTraplocationJoins[Q]]
|
|
FSTreatments joinSet[fsTreatmentJoins[Q]]
|
|
FSTreatmentareas joinSet[fsTreatmentareaJoins[Q]]
|
|
FSZones joinSet[fsZoneJoins[Q]]
|
|
FSZones2s joinSet[fsZones2Joins[Q]]
|
|
H3Aggregations joinSet[h3AggregationJoins[Q]]
|
|
HistoryContainerrelates joinSet[historyContainerrelateJoins[Q]]
|
|
HistoryFieldscoutinglogs joinSet[historyFieldscoutinglogJoins[Q]]
|
|
HistoryHabitatrelates joinSet[historyHabitatrelateJoins[Q]]
|
|
HistoryInspectionsamples joinSet[historyInspectionsampleJoins[Q]]
|
|
HistoryInspectionsampledetails joinSet[historyInspectionsampledetailJoins[Q]]
|
|
HistoryLinelocations joinSet[historyLinelocationJoins[Q]]
|
|
HistoryLocationtrackings joinSet[historyLocationtrackingJoins[Q]]
|
|
HistoryMosquitoinspections joinSet[historyMosquitoinspectionJoins[Q]]
|
|
HistoryPointlocations joinSet[historyPointlocationJoins[Q]]
|
|
HistoryPolygonlocations joinSet[historyPolygonlocationJoins[Q]]
|
|
HistoryPools joinSet[historyPoolJoins[Q]]
|
|
HistoryPooldetails joinSet[historyPooldetailJoins[Q]]
|
|
HistoryProposedtreatmentareas joinSet[historyProposedtreatmentareaJoins[Q]]
|
|
HistoryQamosquitoinspections joinSet[historyQamosquitoinspectionJoins[Q]]
|
|
HistoryRodentlocations joinSet[historyRodentlocationJoins[Q]]
|
|
HistorySamplecollections joinSet[historySamplecollectionJoins[Q]]
|
|
HistorySamplelocations joinSet[historySamplelocationJoins[Q]]
|
|
HistoryServicerequests joinSet[historyServicerequestJoins[Q]]
|
|
HistorySpeciesabundances joinSet[historySpeciesabundanceJoins[Q]]
|
|
HistoryStormdrains joinSet[historyStormdrainJoins[Q]]
|
|
HistoryTimecards joinSet[historyTimecardJoins[Q]]
|
|
HistoryTrapdata joinSet[historyTrapdatumJoins[Q]]
|
|
HistoryTraplocations joinSet[historyTraplocationJoins[Q]]
|
|
HistoryTreatments joinSet[historyTreatmentJoins[Q]]
|
|
HistoryTreatmentareas joinSet[historyTreatmentareaJoins[Q]]
|
|
HistoryZones joinSet[historyZoneJoins[Q]]
|
|
HistoryZones2s joinSet[historyZones2Joins[Q]]
|
|
Notifications joinSet[notificationJoins[Q]]
|
|
OauthTokens joinSet[oauthTokenJoins[Q]]
|
|
Organizations joinSet[organizationJoins[Q]]
|
|
Users joinSet[userJoins[Q]]
|
|
}
|
|
|
|
func buildJoinSet[Q interface{ aliasedAs(string) Q }, C any, F func(C, string) Q](c C, f F) joinSet[Q] {
|
|
return joinSet[Q]{
|
|
InnerJoin: f(c, clause.InnerJoin),
|
|
LeftJoin: f(c, clause.LeftJoin),
|
|
RightJoin: f(c, clause.RightJoin),
|
|
}
|
|
}
|
|
|
|
func getJoins[Q dialect.Joinable]() joins[Q] {
|
|
return joins[Q]{
|
|
FieldseekerRodentlocations: buildJoinSet[fieldseekerRodentlocationJoins[Q]](FieldseekerRodentlocations.Columns, buildFieldseekerRodentlocationJoins),
|
|
FieldseekerSyncs: buildJoinSet[fieldseekerSyncJoins[Q]](FieldseekerSyncs.Columns, buildFieldseekerSyncJoins),
|
|
FSContainerrelates: buildJoinSet[fsContainerrelateJoins[Q]](FSContainerrelates.Columns, buildFSContainerrelateJoins),
|
|
FSFieldscoutinglogs: buildJoinSet[fsFieldscoutinglogJoins[Q]](FSFieldscoutinglogs.Columns, buildFSFieldscoutinglogJoins),
|
|
FSHabitatrelates: buildJoinSet[fsHabitatrelateJoins[Q]](FSHabitatrelates.Columns, buildFSHabitatrelateJoins),
|
|
FSInspectionsamples: buildJoinSet[fsInspectionsampleJoins[Q]](FSInspectionsamples.Columns, buildFSInspectionsampleJoins),
|
|
FSInspectionsampledetails: buildJoinSet[fsInspectionsampledetailJoins[Q]](FSInspectionsampledetails.Columns, buildFSInspectionsampledetailJoins),
|
|
FSLinelocations: buildJoinSet[fsLinelocationJoins[Q]](FSLinelocations.Columns, buildFSLinelocationJoins),
|
|
FSLocationtrackings: buildJoinSet[fsLocationtrackingJoins[Q]](FSLocationtrackings.Columns, buildFSLocationtrackingJoins),
|
|
FSMosquitoinspections: buildJoinSet[fsMosquitoinspectionJoins[Q]](FSMosquitoinspections.Columns, buildFSMosquitoinspectionJoins),
|
|
FSPointlocations: buildJoinSet[fsPointlocationJoins[Q]](FSPointlocations.Columns, buildFSPointlocationJoins),
|
|
FSPolygonlocations: buildJoinSet[fsPolygonlocationJoins[Q]](FSPolygonlocations.Columns, buildFSPolygonlocationJoins),
|
|
FSPools: buildJoinSet[fsPoolJoins[Q]](FSPools.Columns, buildFSPoolJoins),
|
|
FSPooldetails: buildJoinSet[fsPooldetailJoins[Q]](FSPooldetails.Columns, buildFSPooldetailJoins),
|
|
FSProposedtreatmentareas: buildJoinSet[fsProposedtreatmentareaJoins[Q]](FSProposedtreatmentareas.Columns, buildFSProposedtreatmentareaJoins),
|
|
FSQamosquitoinspections: buildJoinSet[fsQamosquitoinspectionJoins[Q]](FSQamosquitoinspections.Columns, buildFSQamosquitoinspectionJoins),
|
|
FSRodentlocations: buildJoinSet[fsRodentlocationJoins[Q]](FSRodentlocations.Columns, buildFSRodentlocationJoins),
|
|
FSSamplecollections: buildJoinSet[fsSamplecollectionJoins[Q]](FSSamplecollections.Columns, buildFSSamplecollectionJoins),
|
|
FSSamplelocations: buildJoinSet[fsSamplelocationJoins[Q]](FSSamplelocations.Columns, buildFSSamplelocationJoins),
|
|
FSServicerequests: buildJoinSet[fsServicerequestJoins[Q]](FSServicerequests.Columns, buildFSServicerequestJoins),
|
|
FSSpeciesabundances: buildJoinSet[fsSpeciesabundanceJoins[Q]](FSSpeciesabundances.Columns, buildFSSpeciesabundanceJoins),
|
|
FSStormdrains: buildJoinSet[fsStormdrainJoins[Q]](FSStormdrains.Columns, buildFSStormdrainJoins),
|
|
FSTimecards: buildJoinSet[fsTimecardJoins[Q]](FSTimecards.Columns, buildFSTimecardJoins),
|
|
FSTrapdata: buildJoinSet[fsTrapdatumJoins[Q]](FSTrapdata.Columns, buildFSTrapdatumJoins),
|
|
FSTraplocations: buildJoinSet[fsTraplocationJoins[Q]](FSTraplocations.Columns, buildFSTraplocationJoins),
|
|
FSTreatments: buildJoinSet[fsTreatmentJoins[Q]](FSTreatments.Columns, buildFSTreatmentJoins),
|
|
FSTreatmentareas: buildJoinSet[fsTreatmentareaJoins[Q]](FSTreatmentareas.Columns, buildFSTreatmentareaJoins),
|
|
FSZones: buildJoinSet[fsZoneJoins[Q]](FSZones.Columns, buildFSZoneJoins),
|
|
FSZones2s: buildJoinSet[fsZones2Joins[Q]](FSZones2s.Columns, buildFSZones2Joins),
|
|
H3Aggregations: buildJoinSet[h3AggregationJoins[Q]](H3Aggregations.Columns, buildH3AggregationJoins),
|
|
HistoryContainerrelates: buildJoinSet[historyContainerrelateJoins[Q]](HistoryContainerrelates.Columns, buildHistoryContainerrelateJoins),
|
|
HistoryFieldscoutinglogs: buildJoinSet[historyFieldscoutinglogJoins[Q]](HistoryFieldscoutinglogs.Columns, buildHistoryFieldscoutinglogJoins),
|
|
HistoryHabitatrelates: buildJoinSet[historyHabitatrelateJoins[Q]](HistoryHabitatrelates.Columns, buildHistoryHabitatrelateJoins),
|
|
HistoryInspectionsamples: buildJoinSet[historyInspectionsampleJoins[Q]](HistoryInspectionsamples.Columns, buildHistoryInspectionsampleJoins),
|
|
HistoryInspectionsampledetails: buildJoinSet[historyInspectionsampledetailJoins[Q]](HistoryInspectionsampledetails.Columns, buildHistoryInspectionsampledetailJoins),
|
|
HistoryLinelocations: buildJoinSet[historyLinelocationJoins[Q]](HistoryLinelocations.Columns, buildHistoryLinelocationJoins),
|
|
HistoryLocationtrackings: buildJoinSet[historyLocationtrackingJoins[Q]](HistoryLocationtrackings.Columns, buildHistoryLocationtrackingJoins),
|
|
HistoryMosquitoinspections: buildJoinSet[historyMosquitoinspectionJoins[Q]](HistoryMosquitoinspections.Columns, buildHistoryMosquitoinspectionJoins),
|
|
HistoryPointlocations: buildJoinSet[historyPointlocationJoins[Q]](HistoryPointlocations.Columns, buildHistoryPointlocationJoins),
|
|
HistoryPolygonlocations: buildJoinSet[historyPolygonlocationJoins[Q]](HistoryPolygonlocations.Columns, buildHistoryPolygonlocationJoins),
|
|
HistoryPools: buildJoinSet[historyPoolJoins[Q]](HistoryPools.Columns, buildHistoryPoolJoins),
|
|
HistoryPooldetails: buildJoinSet[historyPooldetailJoins[Q]](HistoryPooldetails.Columns, buildHistoryPooldetailJoins),
|
|
HistoryProposedtreatmentareas: buildJoinSet[historyProposedtreatmentareaJoins[Q]](HistoryProposedtreatmentareas.Columns, buildHistoryProposedtreatmentareaJoins),
|
|
HistoryQamosquitoinspections: buildJoinSet[historyQamosquitoinspectionJoins[Q]](HistoryQamosquitoinspections.Columns, buildHistoryQamosquitoinspectionJoins),
|
|
HistoryRodentlocations: buildJoinSet[historyRodentlocationJoins[Q]](HistoryRodentlocations.Columns, buildHistoryRodentlocationJoins),
|
|
HistorySamplecollections: buildJoinSet[historySamplecollectionJoins[Q]](HistorySamplecollections.Columns, buildHistorySamplecollectionJoins),
|
|
HistorySamplelocations: buildJoinSet[historySamplelocationJoins[Q]](HistorySamplelocations.Columns, buildHistorySamplelocationJoins),
|
|
HistoryServicerequests: buildJoinSet[historyServicerequestJoins[Q]](HistoryServicerequests.Columns, buildHistoryServicerequestJoins),
|
|
HistorySpeciesabundances: buildJoinSet[historySpeciesabundanceJoins[Q]](HistorySpeciesabundances.Columns, buildHistorySpeciesabundanceJoins),
|
|
HistoryStormdrains: buildJoinSet[historyStormdrainJoins[Q]](HistoryStormdrains.Columns, buildHistoryStormdrainJoins),
|
|
HistoryTimecards: buildJoinSet[historyTimecardJoins[Q]](HistoryTimecards.Columns, buildHistoryTimecardJoins),
|
|
HistoryTrapdata: buildJoinSet[historyTrapdatumJoins[Q]](HistoryTrapdata.Columns, buildHistoryTrapdatumJoins),
|
|
HistoryTraplocations: buildJoinSet[historyTraplocationJoins[Q]](HistoryTraplocations.Columns, buildHistoryTraplocationJoins),
|
|
HistoryTreatments: buildJoinSet[historyTreatmentJoins[Q]](HistoryTreatments.Columns, buildHistoryTreatmentJoins),
|
|
HistoryTreatmentareas: buildJoinSet[historyTreatmentareaJoins[Q]](HistoryTreatmentareas.Columns, buildHistoryTreatmentareaJoins),
|
|
HistoryZones: buildJoinSet[historyZoneJoins[Q]](HistoryZones.Columns, buildHistoryZoneJoins),
|
|
HistoryZones2s: buildJoinSet[historyZones2Joins[Q]](HistoryZones2s.Columns, buildHistoryZones2Joins),
|
|
Notifications: buildJoinSet[notificationJoins[Q]](Notifications.Columns, buildNotificationJoins),
|
|
OauthTokens: buildJoinSet[oauthTokenJoins[Q]](OauthTokens.Columns, buildOauthTokenJoins),
|
|
Organizations: buildJoinSet[organizationJoins[Q]](Organizations.Columns, buildOrganizationJoins),
|
|
Users: buildJoinSet[userJoins[Q]](Users.Columns, buildUserJoins),
|
|
}
|
|
}
|
|
|
|
type modAs[Q any, C interface{ AliasedAs(string) C }] struct {
|
|
c C
|
|
f func(C) bob.Mod[Q]
|
|
}
|
|
|
|
func (m modAs[Q, C]) Apply(q Q) {
|
|
m.f(m.c).Apply(q)
|
|
}
|
|
|
|
func (m modAs[Q, C]) AliasedAs(alias string) bob.Mod[Q] {
|
|
m.c = m.c.AliasedAs(alias)
|
|
return m
|
|
}
|
|
|
|
func randInt() int64 {
|
|
out := int64(new(maphash.Hash).Sum64())
|
|
|
|
if out < 0 {
|
|
return -out % 10000
|
|
}
|
|
|
|
return out % 10000
|
|
}
|