nidus-sync/db/dbinfo/publicreport.notify_phone_water_old.bob.go
Eli Ribble 1e071d5ce5
Overhaul publicreport storage layer, create unified tables
This is a huge change. I was getting really sick of the split between
nuisance/water tables when more than half of the data they store is
common. I finally bit off the big work of switching it all.

This creates a single unified table, publicreport.report and copies the
existing report data into it. It also ports existing data from the
original tables into the new table.

Along with all of this I also overhauled the system for handling
asynchronous work to use a LISTEN/NOTIFY connection from the database
and a single cache table to avoid ever losing work.
2026-03-18 15:36:20 +00:00

152 lines
3.8 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 dbinfo
import "github.com/aarondl/opt/null"
var PublicreportNotifyPhoneWaterOlds = Table[
publicreportNotifyPhoneWaterOldColumns,
publicreportNotifyPhoneWaterOldIndexes,
publicreportNotifyPhoneWaterOldForeignKeys,
publicreportNotifyPhoneWaterOldUniques,
publicreportNotifyPhoneWaterOldChecks,
]{
Schema: "publicreport",
Name: "notify_phone_water_old",
Columns: publicreportNotifyPhoneWaterOldColumns{
Created: column{
Name: "created",
DBType: "timestamp without time zone",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
Deleted: column{
Name: "deleted",
DBType: "timestamp without time zone",
Default: "NULL",
Comment: "",
Nullable: true,
Generated: false,
AutoIncr: false,
},
PhoneE164: column{
Name: "phone_e164",
DBType: "text",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
WaterID: column{
Name: "water_id",
DBType: "integer",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
},
Indexes: publicreportNotifyPhoneWaterOldIndexes{
NotifyPhonePoolPkey: index{
Type: "btree",
Name: "notify_phone_pool_pkey",
Columns: []indexColumn{
{
Name: "water_id",
Desc: null.FromCond(false, true),
IsExpression: false,
},
{
Name: "phone_e164",
Desc: null.FromCond(false, true),
IsExpression: false,
},
},
Unique: true,
Comment: "",
NullsFirst: []bool{false, false},
NullsDistinct: false,
Where: "",
Include: []string{},
},
},
PrimaryKey: &constraint{
Name: "notify_phone_pool_pkey",
Columns: []string{"water_id", "phone_e164"},
Comment: "",
},
ForeignKeys: publicreportNotifyPhoneWaterOldForeignKeys{
PublicreportNotifyPhoneWaterOldNotifyPhonePoolPhoneE164Fkey: foreignKey{
constraint: constraint{
Name: "publicreport.notify_phone_water_old.notify_phone_pool_phone_e164_fkey",
Columns: []string{"phone_e164"},
Comment: "",
},
ForeignTable: "comms.phone",
ForeignColumns: []string{"e164"},
},
PublicreportNotifyPhoneWaterOldNotifyPhonePoolPoolIDFkey: foreignKey{
constraint: constraint{
Name: "publicreport.notify_phone_water_old.notify_phone_pool_pool_id_fkey",
Columns: []string{"water_id"},
Comment: "",
},
ForeignTable: "publicreport.water_old",
ForeignColumns: []string{"id"},
},
},
Comment: "",
}
type publicreportNotifyPhoneWaterOldColumns struct {
Created column
Deleted column
PhoneE164 column
WaterID column
}
func (c publicreportNotifyPhoneWaterOldColumns) AsSlice() []column {
return []column{
c.Created, c.Deleted, c.PhoneE164, c.WaterID,
}
}
type publicreportNotifyPhoneWaterOldIndexes struct {
NotifyPhonePoolPkey index
}
func (i publicreportNotifyPhoneWaterOldIndexes) AsSlice() []index {
return []index{
i.NotifyPhonePoolPkey,
}
}
type publicreportNotifyPhoneWaterOldForeignKeys struct {
PublicreportNotifyPhoneWaterOldNotifyPhonePoolPhoneE164Fkey foreignKey
PublicreportNotifyPhoneWaterOldNotifyPhonePoolPoolIDFkey foreignKey
}
func (f publicreportNotifyPhoneWaterOldForeignKeys) AsSlice() []foreignKey {
return []foreignKey{
f.PublicreportNotifyPhoneWaterOldNotifyPhonePoolPhoneE164Fkey, f.PublicreportNotifyPhoneWaterOldNotifyPhonePoolPoolIDFkey,
}
}
type publicreportNotifyPhoneWaterOldUniques struct{}
func (u publicreportNotifyPhoneWaterOldUniques) AsSlice() []constraint {
return []constraint{}
}
type publicreportNotifyPhoneWaterOldChecks struct{}
func (c publicreportNotifyPhoneWaterOldChecks) AsSlice() []check {
return []check{}
}