| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- package tables
-
- import (
- "time"
-
- "git.x2erp.com/qdy/go-db/sqldef"
- )
-
- func init() {
- sqldef.AddRegistration(func(r *sqldef.Registry) {
- // 配置元信息表
- tb := sqldef.NewTable("config_meta", "配置元信息表").
- ID("id", 128).NotNull().Comment("主键").End().
- String("config_name", 48).NotNull().Comment("配置名称").End().
- String("field_name", 48).NotNull().Default("''").Comment("属性名称").End().
- String("field_type", 32).NotNull().Default("'config'").Comment("字段类型:config/string/bool/int...").End().
- String("yaml_name", 128).NotNull().Default("''").Comment("YAML标签").End().
- String("field_desc", 256).NotNull().Default("''").Comment("字段描述").End().
- String("creator", 32).NotNull().Comment("创建人").End().
- DateTime("created_at").NotNull().Default("CURRENT_TIMESTAMP").Comment("创建时间").End()
-
- // 添加索引
- tb.AddIndex("idx_config_name", "config_name")
- tb.AddIndex("idx_yaml_name", "yaml_name")
- tb.AddIndex("idx_field_name", "field_name")
-
- // 注册表
- r.RegisterTable(tb.Build())
- })
- }
-
- // ConfigMeta 配置元信息表结构体
- type ConfigMeta struct {
- // 配置名称
- ConfigName string `gorm:"column:config_name;type:varchar(48);not null;primaryKey;comment:配置名称"`
- // 字段名称
- FieldName string `gorm:"column:field_name;type:varchar(48);not null;primaryKey;comment:属性名称"`
- // 字段类型
- FieldType string `gorm:"column:field_type;type:varchar(50);not null;default:'config';comment:字段类型"`
- // YAML标签
- YamlName string `gorm:"column:yaml_name;type:varchar(128);not null;default:'';comment:YAML标签"`
- // 字段描述
- FieldDesc string `gorm:"column:field_desc;type:varchar(500);not null;default:'';comment:字段描述"`
- // 创建人
- Creator string `gorm:"column:creator;type:varchar(32);not null;comment:创建人"`
- // 创建时间
- CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间"`
- }
-
- // ConfigMetaDB 数据库表结构体
- type ConfigMetaDB struct {
- ID string `db:"id"`
- ConfigName string `db:"config_name"`
- FieldName string `db:"field_name"`
- FieldType string `db:"field_type"`
- YamlName string `db:"yaml_name"`
- FieldDesc string `db:"field_desc"`
- Creator string `db:"creator"`
- CreatedAt time.Time `db:"created_at"`
- }
-
- // TableName 指定表名
- func (ConfigMeta) TableName() string {
- return "config_meta"
- }
|