add new models, change migration files, prepare to add all new tables from models
This commit is contained in:
79
internal/foundry/temp_models/json/game.go
Normal file
79
internal/foundry/temp_models/json/game.go
Normal file
@@ -0,0 +1,79 @@
|
||||
package json
|
||||
|
||||
import (
|
||||
"sync"
|
||||
|
||||
"gitea.local.lab/Lbenedar/foundry_helper_service/internal/foundry/temp_models/db"
|
||||
)
|
||||
|
||||
type Game struct {
|
||||
UserID string `json:"userId"`
|
||||
Release Release `json:"release"`
|
||||
World World `json:"world"`
|
||||
System System `json:"system"`
|
||||
Modules []*Module `json:"modules"`
|
||||
DemoMode bool `json:"demoMode"`
|
||||
IdleLogout bool `json:"idleLogout"`
|
||||
Addresses Addresses `json:"addresses"`
|
||||
Files Files `json:"files"`
|
||||
Options GameOptions `json:"options"`
|
||||
ActiveUsers []string `json:"activeUsers"`
|
||||
Paused bool `json:"paused"`
|
||||
PackageWarnings map[string]PackageWarningsData `json:"packageWarnings"`
|
||||
Packs []*Pack `json:"packs"`
|
||||
Messages []*Message `json:"messages,omitempty"`
|
||||
Combats []*Combat `json:"combats"`
|
||||
CardDeck []*CardDeck `json:"cards"`
|
||||
Users []*User `json:"users"`
|
||||
Macros []*Macro `json:"macros"`
|
||||
Folders []*WorldFolder `json:"folders"`
|
||||
Items []*Item `json:"items"`
|
||||
Settings []*Setting `json:"settings"`
|
||||
Journals []*Journal `json:"journal"`
|
||||
Tables []*Table `json:"tables"`
|
||||
Playlists []*Playlist `json:"playlists"`
|
||||
Scenes []*Scene `json:"scenes"`
|
||||
Actors []*Actor `json:"actors"`
|
||||
CoreUpdate CoreUpdate `json:"coreUpdate"`
|
||||
SystemUpdate SystemUpdate `json:"systemUpdate"`
|
||||
// Model Model `json:"model"`
|
||||
// Template Template `json:"template"`
|
||||
}
|
||||
|
||||
func (g *Game) ToDB(dest *db.Game) bool {
|
||||
dest.UserID = g.UserID
|
||||
dest.DemoMode = g.DemoMode
|
||||
dest.IdleLogout = g.IdleLogout
|
||||
dest.Paused = g.Paused
|
||||
PackageWarningsToDB(&dest.PackageWarnings, g.PackageWarnings)
|
||||
|
||||
g.Addresses.ToDB(&dest.Addresses)
|
||||
g.Files.ToDB(&dest.Files)
|
||||
g.Release.ToDB(&dest.Release)
|
||||
g.World.ToDB(&dest.World)
|
||||
g.System.ToDB(&dest.System)
|
||||
g.Options.ToDB(&dest.Options)
|
||||
g.CoreUpdate.ToDB(&dest.CoreUpdate)
|
||||
g.SystemUpdate.ToDB(&dest.SystemUpdate)
|
||||
copy(dest.ActiveUsers, g.ActiveUsers)
|
||||
|
||||
wg := sync.WaitGroup{}
|
||||
go CopySliceToDBParallel(&wg, &dest.Modules, g.Modules)
|
||||
go CopySliceToDBParallel(&wg, &dest.Packs, g.Packs)
|
||||
go CopySliceToDBParallel(&wg, &dest.Messages, g.Messages)
|
||||
go CopySliceToDBParallel(&wg, &dest.Combats, g.Combats)
|
||||
go CopySliceToDBParallel(&wg, &dest.CardDeck, g.CardDeck)
|
||||
go CopySliceToDBParallel(&wg, &dest.Users, g.Users)
|
||||
go CopySliceToDBParallel(&wg, &dest.Macros, g.Macros)
|
||||
go CopySliceToDBParallel(&wg, &dest.Folders, g.Folders)
|
||||
go CopySliceToDBParallel(&wg, &dest.Items, g.Items)
|
||||
go CopySliceToDBParallel(&wg, &dest.Settings, g.Settings)
|
||||
go CopySliceToDBParallel(&wg, &dest.Journals, g.Journals)
|
||||
go CopySliceToDBParallel(&wg, &dest.Tables, g.Tables)
|
||||
go CopySliceToDBParallel(&wg, &dest.Playlists, g.Playlists)
|
||||
go CopySliceToDBParallel(&wg, &dest.Actors, g.Actors)
|
||||
// go CopySliceToDBParallel(&wg, &dest.Scenes, g.Scenes)
|
||||
wg.Wait()
|
||||
|
||||
return true
|
||||
}
|
||||
Reference in New Issue
Block a user