refactor(initdb): 重构数据库初始化逻辑
- 修改 FillInitData 函数签名,增加 ismod 参数用于指示是否成功插入数据 - 在 base 模块初始化中使用 If 函数处理数据库初始化结果 - 优化 login 模块中的日志输出 - 修复 websocket 中的错误处理 - 更新 dict 和 task 模块的初始化逻辑
This commit is contained in:
@@ -17,23 +17,36 @@ import (
|
||||
"github.com/gogf/gf/v2/util/gconv"
|
||||
)
|
||||
|
||||
// trueVal: 条件为 true 时返回的值
|
||||
// falseVal: 条件为 false 时返回的值
|
||||
// 返回值类型与 trueVal、falseVal 一致(需保证两者类型相同)
|
||||
func If[T any](condition bool, trueVal, falseVal T) T {
|
||||
if condition {
|
||||
return trueVal
|
||||
}
|
||||
return falseVal
|
||||
}
|
||||
|
||||
func init() {
|
||||
var (
|
||||
ctx = gctx.GetInitCtx()
|
||||
)
|
||||
g.Log().Debug(ctx, "module base init start ...")
|
||||
var t bool
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysMenu{}, &t)
|
||||
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysUser{}, &t)
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysUserRole{}, &t)
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysRole{}, &t)
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysRoleMenu{}, &t)
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysDepartment{}, &t)
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysRoleDepartment{}, &t)
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysParam{}, &t)
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysConf{}, &t)
|
||||
if t {
|
||||
ResetAllSequences(ctx)
|
||||
}
|
||||
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysMenu{})
|
||||
//fmt.Println(err)
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysUser{})
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysUserRole{})
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysRole{})
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysRoleMenu{})
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysDepartment{})
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysRoleDepartment{})
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysParam{})
|
||||
cool.FillInitData(ctx, "base", &model.BaseSysConf{})
|
||||
ResetAllSequences(ctx)
|
||||
// g.DB("default").Exec(context.Background(), `CREATE OR REPLACE FUNCTION reset_all_sequences()
|
||||
// RETURNS void AS $$
|
||||
// DECLARE
|
||||
|
||||
Reference in New Issue
Block a user