46 lines
2.2 KiB
Go
46 lines
2.2 KiB
Go
package model
|
|
|
|
import "time"
|
|
|
|
// GameGiftCatalog is the model-first editable, server-version-fenced gift draft.
|
|
type GameGiftCatalog struct {
|
|
ID string `json:"id" db:"id"`
|
|
ServerInstanceID string `json:"serverInstanceId" db:"server_instance_id"`
|
|
Name string `json:"name" db:"name"`
|
|
GameVersion string `json:"gameVersion" db:"game_version"`
|
|
LatestRevisionID string `json:"latestRevisionId" db:"latest_revision_id"`
|
|
CreatedBy string `json:"createdBy" db:"created_by"`
|
|
CreatedAt time.Time `json:"createdAt" db:"created_at"`
|
|
UpdatedAt time.Time `json:"updatedAt" db:"updated_at"`
|
|
}
|
|
|
|
func (GameGiftCatalog) TableName() string { return "scum_gift_catalogs" }
|
|
|
|
// GameGiftRevision is an immutable gift item snapshot.
|
|
type GameGiftRevision struct {
|
|
ID string `json:"id" db:"id"`
|
|
CatalogID string `json:"catalogId" db:"catalog_id"`
|
|
ServerInstanceID string `json:"serverInstanceId" db:"server_instance_id"`
|
|
Revision int `json:"revision" db:"revision"`
|
|
GameVersion string `json:"gameVersion" db:"game_version"`
|
|
PublishedBy string `json:"publishedBy" db:"published_by"`
|
|
PublishedAt time.Time `json:"publishedAt" db:"published_at"`
|
|
}
|
|
|
|
func (GameGiftRevision) TableName() string { return "scum_gift_revisions" }
|
|
|
|
// GameGiftGrant records a directed frozen gift lifecycle without raw game commands.
|
|
type GameGiftGrant struct {
|
|
ID string `json:"id" db:"id"`
|
|
ServerInstanceID string `json:"serverInstanceId" db:"server_instance_id"`
|
|
RevisionID string `json:"revisionId" db:"revision_id"`
|
|
GamePlayerRecordID string `json:"gamePlayerRecordId" db:"game_player_record_id"`
|
|
Status string `json:"status" db:"status"`
|
|
DeliveryCommandID string `json:"deliveryCommandId" db:"delivery_command_id"`
|
|
NotificationCommandID string `json:"notificationCommandId" db:"notification_command_id"`
|
|
CreatedAt time.Time `json:"createdAt" db:"created_at"`
|
|
UpdatedAt time.Time `json:"updatedAt" db:"updated_at"`
|
|
}
|
|
|
|
func (GameGiftGrant) TableName() string { return "scum_gift_grants" }
|