// ========================================================================== // 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" ) // RoleMenuDao is the data access object for the table goframe_role_menu. type RoleMenuDao 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 RoleMenuColumns // columns contains all the column names of Table for convenient usage. handlers []gdb.ModelHandler // handlers for customized model modification. } // RoleMenuColumns defines and stores column names for the table goframe_role_menu. type RoleMenuColumns struct { Id string // 主键ID RoleId string // 角色ID MenuId string // 菜单ID CreateUser string // 创建人 CreateTime string // 创建时间 UpdateUser string // 更新人 UpdateTime string // 更新时间 DelFlag string // 删除标识:0-正常 1-已删除 } // roleMenuColumns holds the columns for the table goframe_role_menu. var roleMenuColumns = RoleMenuColumns{ Id: "id", RoleId: "role_id", MenuId: "menu_id", CreateUser: "create_user", CreateTime: "create_time", UpdateUser: "update_user", UpdateTime: "update_time", DelFlag: "del_flag", } // NewRoleMenuDao creates and returns a new DAO object for table data access. func NewRoleMenuDao(handlers ...gdb.ModelHandler) *RoleMenuDao { return &RoleMenuDao{ group: "default", table: "goframe_role_menu", columns: roleMenuColumns, handlers: handlers, } } // DB retrieves and returns the underlying raw database management object of the current DAO. func (dao *RoleMenuDao) DB() gdb.DB { return g.DB(dao.group) } // Table returns the table name of the current DAO. func (dao *RoleMenuDao) Table() string { return dao.table } // Columns returns all column names of the current DAO. func (dao *RoleMenuDao) Columns() RoleMenuColumns { return dao.columns } // Group returns the database configuration group name of the current DAO. func (dao *RoleMenuDao) 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 *RoleMenuDao) 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 *RoleMenuDao) Transaction(ctx context.Context, f func(ctx context.Context, tx gdb.TX) error) (err error) { return dao.Ctx(ctx).Transaction(ctx, f) }