nidus-sync/db/dbinfo/fieldseeker.locationtracking.bob.go
Eli Ribble 1395e3d3ac Remove old FieldSeeker tables, use v2 generated tables.
This requires a bunch of changes since the types on these tables are
much closer to the underlying types of the Fieldseeker data we are
getting back from the API.

I now need to use proper UUID types everywhere, which means I had to
modify the bob gen config to consistently use google UUID, my UUID
library of choice.

I also had to add the organization_id to all the fieldseeker tables
since we rely on them existing for some of our compound queries.

There were some changes to the API type signatures to get things to
build. I may yet regret those.
2025-12-24 17:58:08 -07:00

262 lines
6.6 KiB
Go

// Code generated by BobGen psql v0.0.4-0.20251216163753-8e325b7c773a+dirty. DO NOT EDIT.
// This file is meant to be re-generated in place and/or deleted at any time.
package dbinfo
import "github.com/aarondl/opt/null"
var FieldseekerLocationtrackings = Table[
fieldseekerLocationtrackingColumns,
fieldseekerLocationtrackingIndexes,
fieldseekerLocationtrackingForeignKeys,
fieldseekerLocationtrackingUniques,
fieldseekerLocationtrackingChecks,
]{
Schema: "fieldseeker",
Name: "locationtracking",
Columns: fieldseekerLocationtrackingColumns{
Objectid: column{
Name: "objectid",
DBType: "bigint",
Default: "nextval('fieldseeker.locationtracking_objectid_seq'::regclass)",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
Accuracy: column{
Name: "accuracy",
DBType: "double precision",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is Accuracy",
Nullable: true,
Generated: false,
AutoIncr: false,
},
CreatedUser: column{
Name: "created_user",
DBType: "character varying",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is created_user",
Nullable: true,
Generated: false,
AutoIncr: false,
},
CreatedDate: column{
Name: "created_date",
DBType: "timestamp without time zone",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is created_date",
Nullable: true,
Generated: false,
AutoIncr: false,
},
LastEditedUser: column{
Name: "last_edited_user",
DBType: "character varying",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is last_edited_user",
Nullable: true,
Generated: false,
AutoIncr: false,
},
LastEditedDate: column{
Name: "last_edited_date",
DBType: "timestamp without time zone",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is last_edited_date",
Nullable: true,
Generated: false,
AutoIncr: false,
},
Globalid: column{
Name: "globalid",
DBType: "uuid",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is GlobalID",
Nullable: true,
Generated: false,
AutoIncr: false,
},
Fieldtech: column{
Name: "fieldtech",
DBType: "character varying",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is FIELDTECH",
Nullable: true,
Generated: false,
AutoIncr: false,
},
Creationdate: column{
Name: "creationdate",
DBType: "timestamp without time zone",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is CreationDate",
Nullable: true,
Generated: false,
AutoIncr: false,
},
Creator: column{
Name: "creator",
DBType: "character varying",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is Creator",
Nullable: true,
Generated: false,
AutoIncr: false,
},
Editdate: column{
Name: "editdate",
DBType: "timestamp without time zone",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is EditDate",
Nullable: true,
Generated: false,
AutoIncr: false,
},
Editor: column{
Name: "editor",
DBType: "character varying",
Default: "NULL",
Comment: "Original attribute from ArcGIS API is Editor",
Nullable: true,
Generated: false,
AutoIncr: false,
},
Geometry: column{
Name: "geometry",
DBType: "jsonb",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
Geospatial: column{
Name: "geospatial",
DBType: "geometry",
Default: "NULL",
Comment: "",
Nullable: true,
Generated: false,
AutoIncr: false,
},
Version: column{
Name: "version",
DBType: "integer",
Default: "1",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
OrganizationID: column{
Name: "organization_id",
DBType: "integer",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
},
Indexes: fieldseekerLocationtrackingIndexes{
LocationtrackingPkey: index{
Type: "btree",
Name: "locationtracking_pkey",
Columns: []indexColumn{
{
Name: "objectid",
Desc: null.FromCond(false, true),
IsExpression: false,
},
{
Name: "version",
Desc: null.FromCond(false, true),
IsExpression: false,
},
},
Unique: true,
Comment: "",
NullsFirst: []bool{false, false},
NullsDistinct: false,
Where: "",
Include: []string{},
},
},
PrimaryKey: &constraint{
Name: "locationtracking_pkey",
Columns: []string{"objectid", "version"},
Comment: "",
},
ForeignKeys: fieldseekerLocationtrackingForeignKeys{
FieldseekerLocationtrackingLocationtrackingOrganizationIDFkey: foreignKey{
constraint: constraint{
Name: "fieldseeker.locationtracking.locationtracking_organization_id_fkey",
Columns: []string{"organization_id"},
Comment: "",
},
ForeignTable: "organization",
ForeignColumns: []string{"id"},
},
},
Comment: "",
}
type fieldseekerLocationtrackingColumns struct {
Objectid column
Accuracy column
CreatedUser column
CreatedDate column
LastEditedUser column
LastEditedDate column
Globalid column
Fieldtech column
Creationdate column
Creator column
Editdate column
Editor column
Geometry column
Geospatial column
Version column
OrganizationID column
}
func (c fieldseekerLocationtrackingColumns) AsSlice() []column {
return []column{
c.Objectid, c.Accuracy, c.CreatedUser, c.CreatedDate, c.LastEditedUser, c.LastEditedDate, c.Globalid, c.Fieldtech, c.Creationdate, c.Creator, c.Editdate, c.Editor, c.Geometry, c.Geospatial, c.Version, c.OrganizationID,
}
}
type fieldseekerLocationtrackingIndexes struct {
LocationtrackingPkey index
}
func (i fieldseekerLocationtrackingIndexes) AsSlice() []index {
return []index{
i.LocationtrackingPkey,
}
}
type fieldseekerLocationtrackingForeignKeys struct {
FieldseekerLocationtrackingLocationtrackingOrganizationIDFkey foreignKey
}
func (f fieldseekerLocationtrackingForeignKeys) AsSlice() []foreignKey {
return []foreignKey{
f.FieldseekerLocationtrackingLocationtrackingOrganizationIDFkey,
}
}
type fieldseekerLocationtrackingUniques struct{}
func (u fieldseekerLocationtrackingUniques) AsSlice() []constraint {
return []constraint{}
}
type fieldseekerLocationtrackingChecks struct{}
func (c fieldseekerLocationtrackingChecks) AsSlice() []check {
return []check{}
}