Files
iotlcm/app/server/internal/dao/internal/gen_table.go
T

122 lines
4.2 KiB
Go

// ==========================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// ==========================================================================
package internal
import (
"context"
"github.com/gogf/gf/v2/database/gdb"
"github.com/gogf/gf/v2/frame/g"
)
// GenTableDao is the data access object for the table gen_table.
type GenTableDao struct {
table string // table is the underlying table name of the DAO.
group string // group is the database configuration group name of the current DAO.
columns GenTableColumns // columns contains all the column names of Table for convenient usage.
handlers []gdb.ModelHandler // handlers for customized model modification.
}
// GenTableColumns defines and stores column names for the table gen_table.
type GenTableColumns struct {
TableId string // 编号
DataName string // 数据源名称
TableName string // 表名称
TableComment string // 表描述
SubTableName string // 关联子表的表名
SubTableFkName string // 子表关联的外键名
ClassName string // 实体类名称
TplCategory string // 使用的模板(crud单表操作 tree树表操作)
PackageName string // 生成包路径
ModuleName string // 生成模块名
BusinessName string // 生成业务名
FunctionName string // 生成功能名
FunctionAuthor string // 生成功能作者
GenType string // 生成代码方式(0zip压缩包 1自定义路径)
GenPath string // 生成路径(不填默认项目路径)
Options string // 其它生成选项
CreatedDept string // 创建部门
CreatedBy string // 创建者
CreatedAt string // 创建时间
UpdatedBy string // 更新者
UpdatedAt string // 更新时间
Remark string // 备注
}
// genTableColumns holds the columns for the table gen_table.
var genTableColumns = GenTableColumns{
TableId: "table_id",
DataName: "data_name",
TableName: "table_name",
TableComment: "table_comment",
SubTableName: "sub_table_name",
SubTableFkName: "sub_table_fk_name",
ClassName: "class_name",
TplCategory: "tpl_category",
PackageName: "package_name",
ModuleName: "module_name",
BusinessName: "business_name",
FunctionName: "function_name",
FunctionAuthor: "function_author",
GenType: "gen_type",
GenPath: "gen_path",
Options: "options",
CreatedDept: "created_dept",
CreatedBy: "created_by",
CreatedAt: "created_at",
UpdatedBy: "updated_by",
UpdatedAt: "updated_at",
Remark: "remark",
}
// NewGenTableDao creates and returns a new DAO object for table data access.
func NewGenTableDao(handlers ...gdb.ModelHandler) *GenTableDao {
return &GenTableDao{
group: "default",
table: "gen_table",
columns: genTableColumns,
handlers: handlers,
}
}
// DB retrieves and returns the underlying raw database management object of the current DAO.
func (dao *GenTableDao) DB() gdb.DB {
return g.DB(dao.group)
}
// Table returns the table name of the current DAO.
func (dao *GenTableDao) Table() string {
return dao.table
}
// Columns returns all column names of the current DAO.
func (dao *GenTableDao) Columns() GenTableColumns {
return dao.columns
}
// Group returns the database configuration group name of the current DAO.
func (dao *GenTableDao) Group() string {
return dao.group
}
// Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation.
func (dao *GenTableDao) Ctx(ctx context.Context) *gdb.Model {
model := dao.DB().Model(dao.table)
for _, handler := range dao.handlers {
model = handler(model)
}
return model.Safe().Ctx(ctx)
}
// Transaction wraps the transaction logic using function f.
// It rolls back the transaction and returns the error if function f returns a non-nil error.
// It commits the transaction and returns nil if function f returns nil.
//
// Note: Do not commit or roll back the transaction in function f,
// as it is automatically handled by this function.
func (dao *GenTableDao) Transaction(ctx context.Context, f func(ctx context.Context, tx gdb.TX) error) (err error) {
return dao.Ctx(ctx).Transaction(ctx, f)
}