66 lines
1.8 KiB
Go
66 lines
1.8 KiB
Go
package blazing
|
||
|
||
import (
|
||
_ "blazing/modules/config/controller"
|
||
_ "blazing/modules/config/service"
|
||
|
||
"blazing/cool"
|
||
configModel "blazing/modules/config/model"
|
||
|
||
"github.com/gogf/gf/v2/encoding/gjson"
|
||
"github.com/gogf/gf/v2/frame/g"
|
||
"github.com/gogf/gf/v2/os/gfile"
|
||
"github.com/gogf/gf/v2/os/gctx"
|
||
)
|
||
|
||
func init() {
|
||
var (
|
||
ctx = gctx.GetInitCtx()
|
||
)
|
||
cool.Logger.Debug(ctx, "module config init start ...")
|
||
|
||
// 首次初始化 SPT 默认数据(不依赖 XML)。
|
||
sptModel := configModel.NewSptConfig()
|
||
count, err := g.DB("default").Model(sptModel.TableName()).Count()
|
||
if err != nil {
|
||
cool.Logger.Warning(ctx, "count config_spt failed:", err)
|
||
} else if count == 0 {
|
||
initPath := "modules/config/resource/initjson/config_spt.json"
|
||
content := gfile.GetBytes(initPath)
|
||
if len(content) == 0 {
|
||
cool.Logger.Warning(ctx, "config_spt init file is empty:", initPath)
|
||
} else {
|
||
jsonData, jErr := gjson.LoadContent(content)
|
||
if jErr != nil {
|
||
cool.Logger.Warning(ctx, "load config_spt init json failed:", jErr)
|
||
} else {
|
||
_, err = g.DB("default").Model(sptModel.TableName()).Data(jsonData.Var()).Insert()
|
||
}
|
||
}
|
||
if err != nil {
|
||
cool.Logger.Warning(ctx, "insert default config_spt failed:", err)
|
||
}
|
||
}
|
||
|
||
menuCount, err := g.DB("default").Model("base_sys_menu").Where("router", "/config/spt").Count()
|
||
if err != nil {
|
||
cool.Logger.Warning(ctx, "count SPT menu failed:", err)
|
||
} else if menuCount == 0 {
|
||
_, err = g.DB("default").Model("base_sys_menu").Data(g.Map{
|
||
"parentId": 2,
|
||
"name": "SPT配置",
|
||
"router": "/config/spt",
|
||
"viewPath": "config/views/spt.vue",
|
||
"icon": "icon-menu",
|
||
"ordernum": 70,
|
||
"keepAlive": true,
|
||
"isShow": true,
|
||
"type": 1,
|
||
}).Insert()
|
||
if err != nil {
|
||
cool.Logger.Warning(ctx, "insert SPT menu failed:", err)
|
||
}
|
||
}
|
||
cool.Logger.Debug(ctx, "module config init finished ...")
|
||
}
|