Extract EXIF data from images

This required a schema change and actually dumps all existing photo data
from the public reports page. That's probably fine since it's not
deployed to any customers so all data is currently test data.
This commit is contained in:
Eli Ribble 2026-01-16 14:52:11 +00:00
parent b95a3275ff
commit 079d20c086
No known key found for this signature in database
43 changed files with 7208 additions and 3094 deletions

View file

@ -0,0 +1,162 @@
// Code generated by BobGen psql v0.42.1. 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 PublicreportImages = Table[
publicreportImageColumns,
publicreportImageIndexes,
publicreportImageForeignKeys,
publicreportImageUniques,
publicreportImageChecks,
]{
Schema: "publicreport",
Name: "image",
Columns: publicreportImageColumns{
ID: column{
Name: "id",
DBType: "integer",
Default: "nextval('publicreport.image_id_seq'::regclass)",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
ContentType: column{
Name: "content_type",
DBType: "text",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
Created: column{
Name: "created",
DBType: "timestamp without time zone",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
ResolutionX: column{
Name: "resolution_x",
DBType: "integer",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
ResolutionY: column{
Name: "resolution_y",
DBType: "integer",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
StorageUUID: column{
Name: "storage_uuid",
DBType: "uuid",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
StorageSize: column{
Name: "storage_size",
DBType: "bigint",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
UploadedFilename: column{
Name: "uploaded_filename",
DBType: "text",
Default: "",
Comment: "",
Nullable: false,
Generated: false,
AutoIncr: false,
},
},
Indexes: publicreportImageIndexes{
ImagePkey: index{
Type: "btree",
Name: "image_pkey",
Columns: []indexColumn{
{
Name: "id",
Desc: null.FromCond(false, true),
IsExpression: false,
},
},
Unique: true,
Comment: "",
NullsFirst: []bool{false},
NullsDistinct: false,
Where: "",
Include: []string{},
},
},
PrimaryKey: &constraint{
Name: "image_pkey",
Columns: []string{"id"},
Comment: "",
},
Comment: "",
}
type publicreportImageColumns struct {
ID column
ContentType column
Created column
ResolutionX column
ResolutionY column
StorageUUID column
StorageSize column
UploadedFilename column
}
func (c publicreportImageColumns) AsSlice() []column {
return []column{
c.ID, c.ContentType, c.Created, c.ResolutionX, c.ResolutionY, c.StorageUUID, c.StorageSize, c.UploadedFilename,
}
}
type publicreportImageIndexes struct {
ImagePkey index
}
func (i publicreportImageIndexes) AsSlice() []index {
return []index{
i.ImagePkey,
}
}
type publicreportImageForeignKeys struct{}
func (f publicreportImageForeignKeys) AsSlice() []foreignKey {
return []foreignKey{}
}
type publicreportImageUniques struct{}
func (u publicreportImageUniques) AsSlice() []constraint {
return []constraint{}
}
type publicreportImageChecks struct{}
func (c publicreportImageChecks) AsSlice() []check {
return []check{}
}