finish world initialization, set up init on startup and on shutdown, move all models to main directory

This commit is contained in:
lbenedar
2026-04-24 18:04:35 +03:00
parent 07025afefc
commit fd65631be1
125 changed files with 1534 additions and 2802 deletions

View File

@@ -0,0 +1,67 @@
package json
import "gitea.local.lab/Lbenedar/foundry_helper_service/internal/foundry/models/db"
type Folder struct {
Name string `json:"name"`
Sorting string `json:"sorting"`
Color string `json:"color,omitempty"`
Packs []string `json:"packs"`
Folders []*Folder `json:"folders,omitempty"`
}
func (f *Folder) ToDB(dest **db.Folder) bool {
if dest == nil {
return false
}
folder := &db.Folder{
Name: f.Name,
Sorting: f.Sorting,
Color: f.Color,
}
folder.Packs = make([]string, len(f.Packs))
copy(folder.Packs, f.Packs)
CopySliceToDB(&folder.Folders, f.Folders)
*dest = folder
return true
}
type WorldFolder struct {
Name string `json:"name"`
Type string `json:"type"`
ID string `json:"_id"`
Folder string `json:"folder"`
Sorting string `json:"sorting"`
Sort int `json:"sort"`
Stats Stats `json:"_stats,omitempty"`
Description string `json:"description"`
Color string `json:"color"`
// Flags any `json:"flags,omitempty"`
}
func (w *WorldFolder) ToDB(dest **db.WorldFolder) bool {
if dest == nil {
return false
}
worldFolder := &db.WorldFolder{
Name: w.Name,
Type: w.Type,
ID: w.ID,
Folder: w.Folder,
Sorting: w.Sorting,
Sort: w.Sort,
Description: w.Description,
Color: w.Color,
}
w.Stats.ToDB(&worldFolder.Stats)
*dest = worldFolder
return true
}