feat: use db

This commit is contained in:
Rogee
2024-09-02 18:01:38 +08:00
parent 472fe2ffaf
commit 98cd1a0365
18 changed files with 477 additions and 136 deletions

View File

@@ -0,0 +1,22 @@
//
// Code generated by go-jet DO NOT EDIT.
//
// WARNING: Changes to this file may cause incorrect behavior
// and will be lost if the code is regenerated
//
package model
import (
"time"
)
type ChannelMessages struct {
ID int64 `sql:"primary_key"`
ChannelID int64
UUID int64
Content *string
Media string
PublishedAt time.Time
CreatedAt time.Time
}

View File

@@ -0,0 +1,23 @@
//
// Code generated by go-jet DO NOT EDIT.
//
// WARNING: Changes to this file may cause incorrect behavior
// and will be lost if the code is regenerated
//
package model
import (
"time"
)
type Channels struct {
ID int64 `sql:"primary_key"`
UUID int64
Username string
Title string
CreatedAt *time.Time
UpdatedAt *time.Time
Offset int64
MinID int64
}

View File

@@ -0,0 +1,93 @@
//
// Code generated by go-jet DO NOT EDIT.
//
// WARNING: Changes to this file may cause incorrect behavior
// and will be lost if the code is regenerated
//
package table
import (
"github.com/go-jet/jet/v2/postgres"
)
var ChannelMessages = newChannelMessagesTable("public", "channel_messages", "")
type channelMessagesTable struct {
postgres.Table
// Columns
ID postgres.ColumnInteger
ChannelID postgres.ColumnInteger
UUID postgres.ColumnInteger
Content postgres.ColumnString
Media postgres.ColumnString
PublishedAt postgres.ColumnTimestampz
CreatedAt postgres.ColumnTimestampz
AllColumns postgres.ColumnList
MutableColumns postgres.ColumnList
}
type ChannelMessagesTable struct {
channelMessagesTable
EXCLUDED channelMessagesTable
}
// AS creates new ChannelMessagesTable with assigned alias
func (a ChannelMessagesTable) AS(alias string) *ChannelMessagesTable {
return newChannelMessagesTable(a.SchemaName(), a.TableName(), alias)
}
// Schema creates new ChannelMessagesTable with assigned schema name
func (a ChannelMessagesTable) FromSchema(schemaName string) *ChannelMessagesTable {
return newChannelMessagesTable(schemaName, a.TableName(), a.Alias())
}
// WithPrefix creates new ChannelMessagesTable with assigned table prefix
func (a ChannelMessagesTable) WithPrefix(prefix string) *ChannelMessagesTable {
return newChannelMessagesTable(a.SchemaName(), prefix+a.TableName(), a.TableName())
}
// WithSuffix creates new ChannelMessagesTable with assigned table suffix
func (a ChannelMessagesTable) WithSuffix(suffix string) *ChannelMessagesTable {
return newChannelMessagesTable(a.SchemaName(), a.TableName()+suffix, a.TableName())
}
func newChannelMessagesTable(schemaName, tableName, alias string) *ChannelMessagesTable {
return &ChannelMessagesTable{
channelMessagesTable: newChannelMessagesTableImpl(schemaName, tableName, alias),
EXCLUDED: newChannelMessagesTableImpl("", "excluded", ""),
}
}
func newChannelMessagesTableImpl(schemaName, tableName, alias string) channelMessagesTable {
var (
IDColumn = postgres.IntegerColumn("id")
ChannelIDColumn = postgres.IntegerColumn("channel_id")
UUIDColumn = postgres.IntegerColumn("uuid")
ContentColumn = postgres.StringColumn("content")
MediaColumn = postgres.StringColumn("media")
PublishedAtColumn = postgres.TimestampzColumn("published_at")
CreatedAtColumn = postgres.TimestampzColumn("created_at")
allColumns = postgres.ColumnList{IDColumn, ChannelIDColumn, UUIDColumn, ContentColumn, MediaColumn, PublishedAtColumn, CreatedAtColumn}
mutableColumns = postgres.ColumnList{ChannelIDColumn, UUIDColumn, ContentColumn, MediaColumn, PublishedAtColumn, CreatedAtColumn}
)
return channelMessagesTable{
Table: postgres.NewTable(schemaName, tableName, alias, allColumns...),
//Columns
ID: IDColumn,
ChannelID: ChannelIDColumn,
UUID: UUIDColumn,
Content: ContentColumn,
Media: MediaColumn,
PublishedAt: PublishedAtColumn,
CreatedAt: CreatedAtColumn,
AllColumns: allColumns,
MutableColumns: mutableColumns,
}
}

View File

@@ -0,0 +1,96 @@
//
// Code generated by go-jet DO NOT EDIT.
//
// WARNING: Changes to this file may cause incorrect behavior
// and will be lost if the code is regenerated
//
package table
import (
"github.com/go-jet/jet/v2/postgres"
)
var Channels = newChannelsTable("public", "channels", "")
type channelsTable struct {
postgres.Table
// Columns
ID postgres.ColumnInteger
UUID postgres.ColumnInteger
Username postgres.ColumnString
Title postgres.ColumnString
CreatedAt postgres.ColumnTimestampz
UpdatedAt postgres.ColumnTimestampz
Offset postgres.ColumnInteger
MinID postgres.ColumnInteger
AllColumns postgres.ColumnList
MutableColumns postgres.ColumnList
}
type ChannelsTable struct {
channelsTable
EXCLUDED channelsTable
}
// AS creates new ChannelsTable with assigned alias
func (a ChannelsTable) AS(alias string) *ChannelsTable {
return newChannelsTable(a.SchemaName(), a.TableName(), alias)
}
// Schema creates new ChannelsTable with assigned schema name
func (a ChannelsTable) FromSchema(schemaName string) *ChannelsTable {
return newChannelsTable(schemaName, a.TableName(), a.Alias())
}
// WithPrefix creates new ChannelsTable with assigned table prefix
func (a ChannelsTable) WithPrefix(prefix string) *ChannelsTable {
return newChannelsTable(a.SchemaName(), prefix+a.TableName(), a.TableName())
}
// WithSuffix creates new ChannelsTable with assigned table suffix
func (a ChannelsTable) WithSuffix(suffix string) *ChannelsTable {
return newChannelsTable(a.SchemaName(), a.TableName()+suffix, a.TableName())
}
func newChannelsTable(schemaName, tableName, alias string) *ChannelsTable {
return &ChannelsTable{
channelsTable: newChannelsTableImpl(schemaName, tableName, alias),
EXCLUDED: newChannelsTableImpl("", "excluded", ""),
}
}
func newChannelsTableImpl(schemaName, tableName, alias string) channelsTable {
var (
IDColumn = postgres.IntegerColumn("id")
UUIDColumn = postgres.IntegerColumn("uuid")
UsernameColumn = postgres.StringColumn("username")
TitleColumn = postgres.StringColumn("title")
CreatedAtColumn = postgres.TimestampzColumn("created_at")
UpdatedAtColumn = postgres.TimestampzColumn("updated_at")
OffsetColumn = postgres.IntegerColumn("offset")
MinIDColumn = postgres.IntegerColumn("min_id")
allColumns = postgres.ColumnList{IDColumn, UUIDColumn, UsernameColumn, TitleColumn, CreatedAtColumn, UpdatedAtColumn, OffsetColumn, MinIDColumn}
mutableColumns = postgres.ColumnList{UUIDColumn, UsernameColumn, TitleColumn, CreatedAtColumn, UpdatedAtColumn, OffsetColumn, MinIDColumn}
)
return channelsTable{
Table: postgres.NewTable(schemaName, tableName, alias, allColumns...),
//Columns
ID: IDColumn,
UUID: UUIDColumn,
Username: UsernameColumn,
Title: TitleColumn,
CreatedAt: CreatedAtColumn,
UpdatedAt: UpdatedAtColumn,
Offset: OffsetColumn,
MinID: MinIDColumn,
AllColumns: allColumns,
MutableColumns: mutableColumns,
}
}

View File

@@ -0,0 +1,15 @@
//
// Code generated by go-jet DO NOT EDIT.
//
// WARNING: Changes to this file may cause incorrect behavior
// and will be lost if the code is regenerated
//
package table
// UseSchema sets a new schema name for all generated table SQL builder types. It is recommended to invoke
// this method only once at the beginning of the program.
func UseSchema(schema string) {
ChannelMessages = ChannelMessages.FromSchema(schema)
Channels = Channels.FromSchema(schema)
}