// 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 dbinfo

import "github.com/aarondl/opt/null"

var FieldseekerRodentlocations = Table[
	fieldseekerRodentlocationColumns,
	fieldseekerRodentlocationIndexes,
	fieldseekerRodentlocationForeignKeys,
	fieldseekerRodentlocationUniques,
	fieldseekerRodentlocationChecks,
]{
	Schema: "fieldseeker",
	Name:   "rodentlocation",
	Columns: fieldseekerRodentlocationColumns{
		Objectid: column{
			Name:      "objectid",
			DBType:    "bigint",
			Default:   "",
			Comment:   "",
			Nullable:  false,
			Generated: false,
			AutoIncr:  false,
		},
		Locationname: column{
			Name:      "locationname",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LOCATIONNAME",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Zone: column{
			Name:      "zone",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is ZONE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Zone2: column{
			Name:      "zone2",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is ZONE2",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Habitat: column{
			Name:      "habitat",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is HABITAT",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Priority: column{
			Name:      "priority",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is PRIORITY",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Usetype: column{
			Name:      "usetype",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is USETYPE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Active: column{
			Name:      "active",
			DBType:    "smallint",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is ACTIVE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Description: column{
			Name:      "description",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is DESCRIPTION",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Accessdesc: column{
			Name:      "accessdesc",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is ACCESSDESC",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Comments: column{
			Name:      "comments",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is COMMENTS",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Symbology: column{
			Name:      "symbology",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is SYMBOLOGY",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Externalid: column{
			Name:      "externalid",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is EXTERNALID",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Nextactiondatescheduled: column{
			Name:      "nextactiondatescheduled",
			DBType:    "timestamp without time zone",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is NEXTACTIONDATESCHEDULED",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Locationnumber: column{
			Name:      "locationnumber",
			DBType:    "integer",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LOCATIONNUMBER",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectdate: column{
			Name:      "lastinspectdate",
			DBType:    "timestamp without time zone",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTDATE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectspecies: column{
			Name:      "lastinspectspecies",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTSPECIES",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectaction: column{
			Name:      "lastinspectaction",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTACTION",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectconditions: column{
			Name:      "lastinspectconditions",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTCONDITIONS",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectrodentevidence: column{
			Name:      "lastinspectrodentevidence",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTRODENTEVIDENCE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Globalid: column{
			Name:      "globalid",
			DBType:    "uuid",
			Default:   "",
			Comment:   "Original attribute from ArcGIS API is GlobalID",
			Nullable:  false,
			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,
		},
		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,
		},
		Jurisdiction: column{
			Name:      "jurisdiction",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is JURISDICTION",
			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: fieldseekerRodentlocationIndexes{
		RodentlocationPkey: index{
			Type: "btree",
			Name: "rodentlocation_pkey",
			Columns: []indexColumn{
				{
					Name:         "globalid",
					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:    "rodentlocation_pkey",
		Columns: []string{"globalid", "version"},
		Comment: "",
	},
	ForeignKeys: fieldseekerRodentlocationForeignKeys{
		FieldseekerRodentlocationRodentlocationOrganizationIDFkey: foreignKey{
			constraint: constraint{
				Name:    "fieldseeker.rodentlocation.rodentlocation_organization_id_fkey",
				Columns: []string{"organization_id"},
				Comment: "",
			},
			ForeignTable:   "organization",
			ForeignColumns: []string{"id"},
		},
	},

	Comment: "",
}

type fieldseekerRodentlocationColumns struct {
	Objectid                  column
	Locationname              column
	Zone                      column
	Zone2                     column
	Habitat                   column
	Priority                  column
	Usetype                   column
	Active                    column
	Description               column
	Accessdesc                column
	Comments                  column
	Symbology                 column
	Externalid                column
	Nextactiondatescheduled   column
	Locationnumber            column
	Lastinspectdate           column
	Lastinspectspecies        column
	Lastinspectaction         column
	Lastinspectconditions     column
	Lastinspectrodentevidence column
	Globalid                  column
	CreatedUser               column
	CreatedDate               column
	LastEditedUser            column
	LastEditedDate            column
	Creationdate              column
	Creator                   column
	Editdate                  column
	Editor                    column
	Jurisdiction              column
	Geometry                  column
	Geospatial                column
	Version                   column
	OrganizationID            column
}

func (c fieldseekerRodentlocationColumns) AsSlice() []column {
	return []column{
		c.Objectid, c.Locationname, c.Zone, c.Zone2, c.Habitat, c.Priority, c.Usetype, c.Active, c.Description, c.Accessdesc, c.Comments, c.Symbology, c.Externalid, c.Nextactiondatescheduled, c.Locationnumber, c.Lastinspectdate, c.Lastinspectspecies, c.Lastinspectaction, c.Lastinspectconditions, c.Lastinspectrodentevidence, c.Globalid, c.CreatedUser, c.CreatedDate, c.LastEditedUser, c.LastEditedDate, c.Creationdate, c.Creator, c.Editdate, c.Editor, c.Jurisdiction, c.Geometry, c.Geospatial, c.Version, c.OrganizationID,
	}
}

type fieldseekerRodentlocationIndexes struct {
	RodentlocationPkey index
}

func (i fieldseekerRodentlocationIndexes) AsSlice() []index {
	return []index{
		i.RodentlocationPkey,
	}
}

type fieldseekerRodentlocationForeignKeys struct {
	FieldseekerRodentlocationRodentlocationOrganizationIDFkey foreignKey
}

func (f fieldseekerRodentlocationForeignKeys) AsSlice() []foreignKey {
	return []foreignKey{
		f.FieldseekerRodentlocationRodentlocationOrganizationIDFkey,
	}
}

type fieldseekerRodentlocationUniques struct{}

func (u fieldseekerRodentlocationUniques) AsSlice() []constraint {
	return []constraint{}
}

type fieldseekerRodentlocationChecks struct{}

func (c fieldseekerRodentlocationChecks) AsSlice() []check {
	return []check{}
}
