feat: manually mirror opencoze's code from bytedance

Change-Id: I09a73aadda978ad9511264a756b2ce51f5761adf
This commit is contained in:
fanlv
2025-07-20 17:36:12 +08:00
commit 890153324f
14811 changed files with 1923430 additions and 0 deletions

View File

@@ -0,0 +1,119 @@
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
package query
import (
"context"
"database/sql"
"gorm.io/gorm"
"gorm.io/gen"
"gorm.io/plugin/dbresolver"
)
var (
Q = new(Query)
Space *space
SpaceUser *spaceUser
User *user
)
func SetDefault(db *gorm.DB, opts ...gen.DOOption) {
*Q = *Use(db, opts...)
Space = &Q.Space
SpaceUser = &Q.SpaceUser
User = &Q.User
}
func Use(db *gorm.DB, opts ...gen.DOOption) *Query {
return &Query{
db: db,
Space: newSpace(db, opts...),
SpaceUser: newSpaceUser(db, opts...),
User: newUser(db, opts...),
}
}
type Query struct {
db *gorm.DB
Space space
SpaceUser spaceUser
User user
}
func (q *Query) Available() bool { return q.db != nil }
func (q *Query) clone(db *gorm.DB) *Query {
return &Query{
db: db,
Space: q.Space.clone(db),
SpaceUser: q.SpaceUser.clone(db),
User: q.User.clone(db),
}
}
func (q *Query) ReadDB() *Query {
return q.ReplaceDB(q.db.Clauses(dbresolver.Read))
}
func (q *Query) WriteDB() *Query {
return q.ReplaceDB(q.db.Clauses(dbresolver.Write))
}
func (q *Query) ReplaceDB(db *gorm.DB) *Query {
return &Query{
db: db,
Space: q.Space.replaceDB(db),
SpaceUser: q.SpaceUser.replaceDB(db),
User: q.User.replaceDB(db),
}
}
type queryCtx struct {
Space ISpaceDo
SpaceUser ISpaceUserDo
User IUserDo
}
func (q *Query) WithContext(ctx context.Context) *queryCtx {
return &queryCtx{
Space: q.Space.WithContext(ctx),
SpaceUser: q.SpaceUser.WithContext(ctx),
User: q.User.WithContext(ctx),
}
}
func (q *Query) Transaction(fc func(tx *Query) error, opts ...*sql.TxOptions) error {
return q.db.Transaction(func(tx *gorm.DB) error { return fc(q.clone(tx)) }, opts...)
}
func (q *Query) Begin(opts ...*sql.TxOptions) *QueryTx {
tx := q.db.Begin(opts...)
return &QueryTx{Query: q.clone(tx), Error: tx.Error}
}
type QueryTx struct {
*Query
Error error
}
func (q *QueryTx) Commit() error {
return q.db.Commit().Error
}
func (q *QueryTx) Rollback() error {
return q.db.Rollback().Error
}
func (q *QueryTx) SavePoint(name string) error {
return q.db.SavePoint(name).Error
}
func (q *QueryTx) RollbackTo(name string) error {
return q.db.RollbackTo(name).Error
}

View File

@@ -0,0 +1,413 @@
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
package query
import (
"context"
"gorm.io/gorm"
"gorm.io/gorm/clause"
"gorm.io/gorm/schema"
"gorm.io/gen"
"gorm.io/gen/field"
"gorm.io/plugin/dbresolver"
"github.com/coze-dev/coze-studio/backend/domain/user/internal/dal/model"
)
func newSpace(db *gorm.DB, opts ...gen.DOOption) space {
_space := space{}
_space.spaceDo.UseDB(db, opts...)
_space.spaceDo.UseModel(&model.Space{})
tableName := _space.spaceDo.TableName()
_space.ALL = field.NewAsterisk(tableName)
_space.ID = field.NewInt64(tableName, "id")
_space.OwnerID = field.NewInt64(tableName, "owner_id")
_space.Name = field.NewString(tableName, "name")
_space.Description = field.NewString(tableName, "description")
_space.IconURI = field.NewString(tableName, "icon_uri")
_space.CreatorID = field.NewInt64(tableName, "creator_id")
_space.CreatedAt = field.NewInt64(tableName, "created_at")
_space.UpdatedAt = field.NewInt64(tableName, "updated_at")
_space.DeletedAt = field.NewField(tableName, "deleted_at")
_space.fillFieldMap()
return _space
}
// space Space Table
type space struct {
spaceDo
ALL field.Asterisk
ID field.Int64 // Primary Key ID, Space ID
OwnerID field.Int64 // Owner ID
Name field.String // Space Name
Description field.String // Space Description
IconURI field.String // Icon URI
CreatorID field.Int64 // Creator ID
CreatedAt field.Int64 // Creation Time (Milliseconds)
UpdatedAt field.Int64 // Update Time (Milliseconds)
DeletedAt field.Field // Deletion Time (Milliseconds)
fieldMap map[string]field.Expr
}
func (s space) Table(newTableName string) *space {
s.spaceDo.UseTable(newTableName)
return s.updateTableName(newTableName)
}
func (s space) As(alias string) *space {
s.spaceDo.DO = *(s.spaceDo.As(alias).(*gen.DO))
return s.updateTableName(alias)
}
func (s *space) updateTableName(table string) *space {
s.ALL = field.NewAsterisk(table)
s.ID = field.NewInt64(table, "id")
s.OwnerID = field.NewInt64(table, "owner_id")
s.Name = field.NewString(table, "name")
s.Description = field.NewString(table, "description")
s.IconURI = field.NewString(table, "icon_uri")
s.CreatorID = field.NewInt64(table, "creator_id")
s.CreatedAt = field.NewInt64(table, "created_at")
s.UpdatedAt = field.NewInt64(table, "updated_at")
s.DeletedAt = field.NewField(table, "deleted_at")
s.fillFieldMap()
return s
}
func (s *space) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
_f, ok := s.fieldMap[fieldName]
if !ok || _f == nil {
return nil, false
}
_oe, ok := _f.(field.OrderExpr)
return _oe, ok
}
func (s *space) fillFieldMap() {
s.fieldMap = make(map[string]field.Expr, 9)
s.fieldMap["id"] = s.ID
s.fieldMap["owner_id"] = s.OwnerID
s.fieldMap["name"] = s.Name
s.fieldMap["description"] = s.Description
s.fieldMap["icon_uri"] = s.IconURI
s.fieldMap["creator_id"] = s.CreatorID
s.fieldMap["created_at"] = s.CreatedAt
s.fieldMap["updated_at"] = s.UpdatedAt
s.fieldMap["deleted_at"] = s.DeletedAt
}
func (s space) clone(db *gorm.DB) space {
s.spaceDo.ReplaceConnPool(db.Statement.ConnPool)
return s
}
func (s space) replaceDB(db *gorm.DB) space {
s.spaceDo.ReplaceDB(db)
return s
}
type spaceDo struct{ gen.DO }
type ISpaceDo interface {
gen.SubQuery
Debug() ISpaceDo
WithContext(ctx context.Context) ISpaceDo
WithResult(fc func(tx gen.Dao)) gen.ResultInfo
ReplaceDB(db *gorm.DB)
ReadDB() ISpaceDo
WriteDB() ISpaceDo
As(alias string) gen.Dao
Session(config *gorm.Session) ISpaceDo
Columns(cols ...field.Expr) gen.Columns
Clauses(conds ...clause.Expression) ISpaceDo
Not(conds ...gen.Condition) ISpaceDo
Or(conds ...gen.Condition) ISpaceDo
Select(conds ...field.Expr) ISpaceDo
Where(conds ...gen.Condition) ISpaceDo
Order(conds ...field.Expr) ISpaceDo
Distinct(cols ...field.Expr) ISpaceDo
Omit(cols ...field.Expr) ISpaceDo
Join(table schema.Tabler, on ...field.Expr) ISpaceDo
LeftJoin(table schema.Tabler, on ...field.Expr) ISpaceDo
RightJoin(table schema.Tabler, on ...field.Expr) ISpaceDo
Group(cols ...field.Expr) ISpaceDo
Having(conds ...gen.Condition) ISpaceDo
Limit(limit int) ISpaceDo
Offset(offset int) ISpaceDo
Count() (count int64, err error)
Scopes(funcs ...func(gen.Dao) gen.Dao) ISpaceDo
Unscoped() ISpaceDo
Create(values ...*model.Space) error
CreateInBatches(values []*model.Space, batchSize int) error
Save(values ...*model.Space) error
First() (*model.Space, error)
Take() (*model.Space, error)
Last() (*model.Space, error)
Find() ([]*model.Space, error)
FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Space, err error)
FindInBatches(result *[]*model.Space, batchSize int, fc func(tx gen.Dao, batch int) error) error
Pluck(column field.Expr, dest interface{}) error
Delete(...*model.Space) (info gen.ResultInfo, err error)
Update(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
UpdateSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
Updates(value interface{}) (info gen.ResultInfo, err error)
UpdateColumn(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
UpdateColumnSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
UpdateColumns(value interface{}) (info gen.ResultInfo, err error)
UpdateFrom(q gen.SubQuery) gen.Dao
Attrs(attrs ...field.AssignExpr) ISpaceDo
Assign(attrs ...field.AssignExpr) ISpaceDo
Joins(fields ...field.RelationField) ISpaceDo
Preload(fields ...field.RelationField) ISpaceDo
FirstOrInit() (*model.Space, error)
FirstOrCreate() (*model.Space, error)
FindByPage(offset int, limit int) (result []*model.Space, count int64, err error)
ScanByPage(result interface{}, offset int, limit int) (count int64, err error)
Scan(result interface{}) (err error)
Returning(value interface{}, columns ...string) ISpaceDo
UnderlyingDB() *gorm.DB
schema.Tabler
}
func (s spaceDo) Debug() ISpaceDo {
return s.withDO(s.DO.Debug())
}
func (s spaceDo) WithContext(ctx context.Context) ISpaceDo {
return s.withDO(s.DO.WithContext(ctx))
}
func (s spaceDo) ReadDB() ISpaceDo {
return s.Clauses(dbresolver.Read)
}
func (s spaceDo) WriteDB() ISpaceDo {
return s.Clauses(dbresolver.Write)
}
func (s spaceDo) Session(config *gorm.Session) ISpaceDo {
return s.withDO(s.DO.Session(config))
}
func (s spaceDo) Clauses(conds ...clause.Expression) ISpaceDo {
return s.withDO(s.DO.Clauses(conds...))
}
func (s spaceDo) Returning(value interface{}, columns ...string) ISpaceDo {
return s.withDO(s.DO.Returning(value, columns...))
}
func (s spaceDo) Not(conds ...gen.Condition) ISpaceDo {
return s.withDO(s.DO.Not(conds...))
}
func (s spaceDo) Or(conds ...gen.Condition) ISpaceDo {
return s.withDO(s.DO.Or(conds...))
}
func (s spaceDo) Select(conds ...field.Expr) ISpaceDo {
return s.withDO(s.DO.Select(conds...))
}
func (s spaceDo) Where(conds ...gen.Condition) ISpaceDo {
return s.withDO(s.DO.Where(conds...))
}
func (s spaceDo) Order(conds ...field.Expr) ISpaceDo {
return s.withDO(s.DO.Order(conds...))
}
func (s spaceDo) Distinct(cols ...field.Expr) ISpaceDo {
return s.withDO(s.DO.Distinct(cols...))
}
func (s spaceDo) Omit(cols ...field.Expr) ISpaceDo {
return s.withDO(s.DO.Omit(cols...))
}
func (s spaceDo) Join(table schema.Tabler, on ...field.Expr) ISpaceDo {
return s.withDO(s.DO.Join(table, on...))
}
func (s spaceDo) LeftJoin(table schema.Tabler, on ...field.Expr) ISpaceDo {
return s.withDO(s.DO.LeftJoin(table, on...))
}
func (s spaceDo) RightJoin(table schema.Tabler, on ...field.Expr) ISpaceDo {
return s.withDO(s.DO.RightJoin(table, on...))
}
func (s spaceDo) Group(cols ...field.Expr) ISpaceDo {
return s.withDO(s.DO.Group(cols...))
}
func (s spaceDo) Having(conds ...gen.Condition) ISpaceDo {
return s.withDO(s.DO.Having(conds...))
}
func (s spaceDo) Limit(limit int) ISpaceDo {
return s.withDO(s.DO.Limit(limit))
}
func (s spaceDo) Offset(offset int) ISpaceDo {
return s.withDO(s.DO.Offset(offset))
}
func (s spaceDo) Scopes(funcs ...func(gen.Dao) gen.Dao) ISpaceDo {
return s.withDO(s.DO.Scopes(funcs...))
}
func (s spaceDo) Unscoped() ISpaceDo {
return s.withDO(s.DO.Unscoped())
}
func (s spaceDo) Create(values ...*model.Space) error {
if len(values) == 0 {
return nil
}
return s.DO.Create(values)
}
func (s spaceDo) CreateInBatches(values []*model.Space, batchSize int) error {
return s.DO.CreateInBatches(values, batchSize)
}
// Save : !!! underlying implementation is different with GORM
// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values)
func (s spaceDo) Save(values ...*model.Space) error {
if len(values) == 0 {
return nil
}
return s.DO.Save(values)
}
func (s spaceDo) First() (*model.Space, error) {
if result, err := s.DO.First(); err != nil {
return nil, err
} else {
return result.(*model.Space), nil
}
}
func (s spaceDo) Take() (*model.Space, error) {
if result, err := s.DO.Take(); err != nil {
return nil, err
} else {
return result.(*model.Space), nil
}
}
func (s spaceDo) Last() (*model.Space, error) {
if result, err := s.DO.Last(); err != nil {
return nil, err
} else {
return result.(*model.Space), nil
}
}
func (s spaceDo) Find() ([]*model.Space, error) {
result, err := s.DO.Find()
return result.([]*model.Space), err
}
func (s spaceDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Space, err error) {
buf := make([]*model.Space, 0, batchSize)
err = s.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error {
defer func() { results = append(results, buf...) }()
return fc(tx, batch)
})
return results, err
}
func (s spaceDo) FindInBatches(result *[]*model.Space, batchSize int, fc func(tx gen.Dao, batch int) error) error {
return s.DO.FindInBatches(result, batchSize, fc)
}
func (s spaceDo) Attrs(attrs ...field.AssignExpr) ISpaceDo {
return s.withDO(s.DO.Attrs(attrs...))
}
func (s spaceDo) Assign(attrs ...field.AssignExpr) ISpaceDo {
return s.withDO(s.DO.Assign(attrs...))
}
func (s spaceDo) Joins(fields ...field.RelationField) ISpaceDo {
for _, _f := range fields {
s = *s.withDO(s.DO.Joins(_f))
}
return &s
}
func (s spaceDo) Preload(fields ...field.RelationField) ISpaceDo {
for _, _f := range fields {
s = *s.withDO(s.DO.Preload(_f))
}
return &s
}
func (s spaceDo) FirstOrInit() (*model.Space, error) {
if result, err := s.DO.FirstOrInit(); err != nil {
return nil, err
} else {
return result.(*model.Space), nil
}
}
func (s spaceDo) FirstOrCreate() (*model.Space, error) {
if result, err := s.DO.FirstOrCreate(); err != nil {
return nil, err
} else {
return result.(*model.Space), nil
}
}
func (s spaceDo) FindByPage(offset int, limit int) (result []*model.Space, count int64, err error) {
result, err = s.Offset(offset).Limit(limit).Find()
if err != nil {
return
}
if size := len(result); 0 < limit && 0 < size && size < limit {
count = int64(size + offset)
return
}
count, err = s.Offset(-1).Limit(-1).Count()
return
}
func (s spaceDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) {
count, err = s.Count()
if err != nil {
return
}
err = s.Offset(offset).Limit(limit).Scan(result)
return
}
func (s spaceDo) Scan(result interface{}) (err error) {
return s.DO.Scan(result)
}
func (s spaceDo) Delete(models ...*model.Space) (result gen.ResultInfo, err error) {
return s.DO.Delete(models)
}
func (s *spaceDo) withDO(do gen.Dao) *spaceDo {
s.DO = *do.(*gen.DO)
return s
}

View File

@@ -0,0 +1,401 @@
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
package query
import (
"context"
"gorm.io/gorm"
"gorm.io/gorm/clause"
"gorm.io/gorm/schema"
"gorm.io/gen"
"gorm.io/gen/field"
"gorm.io/plugin/dbresolver"
"github.com/coze-dev/coze-studio/backend/domain/user/internal/dal/model"
)
func newSpaceUser(db *gorm.DB, opts ...gen.DOOption) spaceUser {
_spaceUser := spaceUser{}
_spaceUser.spaceUserDo.UseDB(db, opts...)
_spaceUser.spaceUserDo.UseModel(&model.SpaceUser{})
tableName := _spaceUser.spaceUserDo.TableName()
_spaceUser.ALL = field.NewAsterisk(tableName)
_spaceUser.ID = field.NewInt64(tableName, "id")
_spaceUser.SpaceID = field.NewInt64(tableName, "space_id")
_spaceUser.UserID = field.NewInt64(tableName, "user_id")
_spaceUser.RoleType = field.NewInt32(tableName, "role_type")
_spaceUser.CreatedAt = field.NewInt64(tableName, "created_at")
_spaceUser.UpdatedAt = field.NewInt64(tableName, "updated_at")
_spaceUser.fillFieldMap()
return _spaceUser
}
// spaceUser Space Member Table
type spaceUser struct {
spaceUserDo
ALL field.Asterisk
ID field.Int64 // Primary Key ID, Auto Increment
SpaceID field.Int64 // Space ID
UserID field.Int64 // User ID
RoleType field.Int32 // Role Type: 1.owner 2.admin 3.member
CreatedAt field.Int64 // Creation Time (Milliseconds)
UpdatedAt field.Int64 // Update Time (Milliseconds)
fieldMap map[string]field.Expr
}
func (s spaceUser) Table(newTableName string) *spaceUser {
s.spaceUserDo.UseTable(newTableName)
return s.updateTableName(newTableName)
}
func (s spaceUser) As(alias string) *spaceUser {
s.spaceUserDo.DO = *(s.spaceUserDo.As(alias).(*gen.DO))
return s.updateTableName(alias)
}
func (s *spaceUser) updateTableName(table string) *spaceUser {
s.ALL = field.NewAsterisk(table)
s.ID = field.NewInt64(table, "id")
s.SpaceID = field.NewInt64(table, "space_id")
s.UserID = field.NewInt64(table, "user_id")
s.RoleType = field.NewInt32(table, "role_type")
s.CreatedAt = field.NewInt64(table, "created_at")
s.UpdatedAt = field.NewInt64(table, "updated_at")
s.fillFieldMap()
return s
}
func (s *spaceUser) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
_f, ok := s.fieldMap[fieldName]
if !ok || _f == nil {
return nil, false
}
_oe, ok := _f.(field.OrderExpr)
return _oe, ok
}
func (s *spaceUser) fillFieldMap() {
s.fieldMap = make(map[string]field.Expr, 6)
s.fieldMap["id"] = s.ID
s.fieldMap["space_id"] = s.SpaceID
s.fieldMap["user_id"] = s.UserID
s.fieldMap["role_type"] = s.RoleType
s.fieldMap["created_at"] = s.CreatedAt
s.fieldMap["updated_at"] = s.UpdatedAt
}
func (s spaceUser) clone(db *gorm.DB) spaceUser {
s.spaceUserDo.ReplaceConnPool(db.Statement.ConnPool)
return s
}
func (s spaceUser) replaceDB(db *gorm.DB) spaceUser {
s.spaceUserDo.ReplaceDB(db)
return s
}
type spaceUserDo struct{ gen.DO }
type ISpaceUserDo interface {
gen.SubQuery
Debug() ISpaceUserDo
WithContext(ctx context.Context) ISpaceUserDo
WithResult(fc func(tx gen.Dao)) gen.ResultInfo
ReplaceDB(db *gorm.DB)
ReadDB() ISpaceUserDo
WriteDB() ISpaceUserDo
As(alias string) gen.Dao
Session(config *gorm.Session) ISpaceUserDo
Columns(cols ...field.Expr) gen.Columns
Clauses(conds ...clause.Expression) ISpaceUserDo
Not(conds ...gen.Condition) ISpaceUserDo
Or(conds ...gen.Condition) ISpaceUserDo
Select(conds ...field.Expr) ISpaceUserDo
Where(conds ...gen.Condition) ISpaceUserDo
Order(conds ...field.Expr) ISpaceUserDo
Distinct(cols ...field.Expr) ISpaceUserDo
Omit(cols ...field.Expr) ISpaceUserDo
Join(table schema.Tabler, on ...field.Expr) ISpaceUserDo
LeftJoin(table schema.Tabler, on ...field.Expr) ISpaceUserDo
RightJoin(table schema.Tabler, on ...field.Expr) ISpaceUserDo
Group(cols ...field.Expr) ISpaceUserDo
Having(conds ...gen.Condition) ISpaceUserDo
Limit(limit int) ISpaceUserDo
Offset(offset int) ISpaceUserDo
Count() (count int64, err error)
Scopes(funcs ...func(gen.Dao) gen.Dao) ISpaceUserDo
Unscoped() ISpaceUserDo
Create(values ...*model.SpaceUser) error
CreateInBatches(values []*model.SpaceUser, batchSize int) error
Save(values ...*model.SpaceUser) error
First() (*model.SpaceUser, error)
Take() (*model.SpaceUser, error)
Last() (*model.SpaceUser, error)
Find() ([]*model.SpaceUser, error)
FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.SpaceUser, err error)
FindInBatches(result *[]*model.SpaceUser, batchSize int, fc func(tx gen.Dao, batch int) error) error
Pluck(column field.Expr, dest interface{}) error
Delete(...*model.SpaceUser) (info gen.ResultInfo, err error)
Update(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
UpdateSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
Updates(value interface{}) (info gen.ResultInfo, err error)
UpdateColumn(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
UpdateColumnSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
UpdateColumns(value interface{}) (info gen.ResultInfo, err error)
UpdateFrom(q gen.SubQuery) gen.Dao
Attrs(attrs ...field.AssignExpr) ISpaceUserDo
Assign(attrs ...field.AssignExpr) ISpaceUserDo
Joins(fields ...field.RelationField) ISpaceUserDo
Preload(fields ...field.RelationField) ISpaceUserDo
FirstOrInit() (*model.SpaceUser, error)
FirstOrCreate() (*model.SpaceUser, error)
FindByPage(offset int, limit int) (result []*model.SpaceUser, count int64, err error)
ScanByPage(result interface{}, offset int, limit int) (count int64, err error)
Scan(result interface{}) (err error)
Returning(value interface{}, columns ...string) ISpaceUserDo
UnderlyingDB() *gorm.DB
schema.Tabler
}
func (s spaceUserDo) Debug() ISpaceUserDo {
return s.withDO(s.DO.Debug())
}
func (s spaceUserDo) WithContext(ctx context.Context) ISpaceUserDo {
return s.withDO(s.DO.WithContext(ctx))
}
func (s spaceUserDo) ReadDB() ISpaceUserDo {
return s.Clauses(dbresolver.Read)
}
func (s spaceUserDo) WriteDB() ISpaceUserDo {
return s.Clauses(dbresolver.Write)
}
func (s spaceUserDo) Session(config *gorm.Session) ISpaceUserDo {
return s.withDO(s.DO.Session(config))
}
func (s spaceUserDo) Clauses(conds ...clause.Expression) ISpaceUserDo {
return s.withDO(s.DO.Clauses(conds...))
}
func (s spaceUserDo) Returning(value interface{}, columns ...string) ISpaceUserDo {
return s.withDO(s.DO.Returning(value, columns...))
}
func (s spaceUserDo) Not(conds ...gen.Condition) ISpaceUserDo {
return s.withDO(s.DO.Not(conds...))
}
func (s spaceUserDo) Or(conds ...gen.Condition) ISpaceUserDo {
return s.withDO(s.DO.Or(conds...))
}
func (s spaceUserDo) Select(conds ...field.Expr) ISpaceUserDo {
return s.withDO(s.DO.Select(conds...))
}
func (s spaceUserDo) Where(conds ...gen.Condition) ISpaceUserDo {
return s.withDO(s.DO.Where(conds...))
}
func (s spaceUserDo) Order(conds ...field.Expr) ISpaceUserDo {
return s.withDO(s.DO.Order(conds...))
}
func (s spaceUserDo) Distinct(cols ...field.Expr) ISpaceUserDo {
return s.withDO(s.DO.Distinct(cols...))
}
func (s spaceUserDo) Omit(cols ...field.Expr) ISpaceUserDo {
return s.withDO(s.DO.Omit(cols...))
}
func (s spaceUserDo) Join(table schema.Tabler, on ...field.Expr) ISpaceUserDo {
return s.withDO(s.DO.Join(table, on...))
}
func (s spaceUserDo) LeftJoin(table schema.Tabler, on ...field.Expr) ISpaceUserDo {
return s.withDO(s.DO.LeftJoin(table, on...))
}
func (s spaceUserDo) RightJoin(table schema.Tabler, on ...field.Expr) ISpaceUserDo {
return s.withDO(s.DO.RightJoin(table, on...))
}
func (s spaceUserDo) Group(cols ...field.Expr) ISpaceUserDo {
return s.withDO(s.DO.Group(cols...))
}
func (s spaceUserDo) Having(conds ...gen.Condition) ISpaceUserDo {
return s.withDO(s.DO.Having(conds...))
}
func (s spaceUserDo) Limit(limit int) ISpaceUserDo {
return s.withDO(s.DO.Limit(limit))
}
func (s spaceUserDo) Offset(offset int) ISpaceUserDo {
return s.withDO(s.DO.Offset(offset))
}
func (s spaceUserDo) Scopes(funcs ...func(gen.Dao) gen.Dao) ISpaceUserDo {
return s.withDO(s.DO.Scopes(funcs...))
}
func (s spaceUserDo) Unscoped() ISpaceUserDo {
return s.withDO(s.DO.Unscoped())
}
func (s spaceUserDo) Create(values ...*model.SpaceUser) error {
if len(values) == 0 {
return nil
}
return s.DO.Create(values)
}
func (s spaceUserDo) CreateInBatches(values []*model.SpaceUser, batchSize int) error {
return s.DO.CreateInBatches(values, batchSize)
}
// Save : !!! underlying implementation is different with GORM
// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values)
func (s spaceUserDo) Save(values ...*model.SpaceUser) error {
if len(values) == 0 {
return nil
}
return s.DO.Save(values)
}
func (s spaceUserDo) First() (*model.SpaceUser, error) {
if result, err := s.DO.First(); err != nil {
return nil, err
} else {
return result.(*model.SpaceUser), nil
}
}
func (s spaceUserDo) Take() (*model.SpaceUser, error) {
if result, err := s.DO.Take(); err != nil {
return nil, err
} else {
return result.(*model.SpaceUser), nil
}
}
func (s spaceUserDo) Last() (*model.SpaceUser, error) {
if result, err := s.DO.Last(); err != nil {
return nil, err
} else {
return result.(*model.SpaceUser), nil
}
}
func (s spaceUserDo) Find() ([]*model.SpaceUser, error) {
result, err := s.DO.Find()
return result.([]*model.SpaceUser), err
}
func (s spaceUserDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.SpaceUser, err error) {
buf := make([]*model.SpaceUser, 0, batchSize)
err = s.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error {
defer func() { results = append(results, buf...) }()
return fc(tx, batch)
})
return results, err
}
func (s spaceUserDo) FindInBatches(result *[]*model.SpaceUser, batchSize int, fc func(tx gen.Dao, batch int) error) error {
return s.DO.FindInBatches(result, batchSize, fc)
}
func (s spaceUserDo) Attrs(attrs ...field.AssignExpr) ISpaceUserDo {
return s.withDO(s.DO.Attrs(attrs...))
}
func (s spaceUserDo) Assign(attrs ...field.AssignExpr) ISpaceUserDo {
return s.withDO(s.DO.Assign(attrs...))
}
func (s spaceUserDo) Joins(fields ...field.RelationField) ISpaceUserDo {
for _, _f := range fields {
s = *s.withDO(s.DO.Joins(_f))
}
return &s
}
func (s spaceUserDo) Preload(fields ...field.RelationField) ISpaceUserDo {
for _, _f := range fields {
s = *s.withDO(s.DO.Preload(_f))
}
return &s
}
func (s spaceUserDo) FirstOrInit() (*model.SpaceUser, error) {
if result, err := s.DO.FirstOrInit(); err != nil {
return nil, err
} else {
return result.(*model.SpaceUser), nil
}
}
func (s spaceUserDo) FirstOrCreate() (*model.SpaceUser, error) {
if result, err := s.DO.FirstOrCreate(); err != nil {
return nil, err
} else {
return result.(*model.SpaceUser), nil
}
}
func (s spaceUserDo) FindByPage(offset int, limit int) (result []*model.SpaceUser, count int64, err error) {
result, err = s.Offset(offset).Limit(limit).Find()
if err != nil {
return
}
if size := len(result); 0 < limit && 0 < size && size < limit {
count = int64(size + offset)
return
}
count, err = s.Offset(-1).Limit(-1).Count()
return
}
func (s spaceUserDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) {
count, err = s.Count()
if err != nil {
return
}
err = s.Offset(offset).Limit(limit).Scan(result)
return
}
func (s spaceUserDo) Scan(result interface{}) (err error) {
return s.DO.Scan(result)
}
func (s spaceUserDo) Delete(models ...*model.SpaceUser) (result gen.ResultInfo, err error) {
return s.DO.Delete(models)
}
func (s *spaceUserDo) withDO(do gen.Dao) *spaceUserDo {
s.DO = *do.(*gen.DO)
return s
}

View File

@@ -0,0 +1,429 @@
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
package query
import (
"context"
"gorm.io/gorm"
"gorm.io/gorm/clause"
"gorm.io/gorm/schema"
"gorm.io/gen"
"gorm.io/gen/field"
"gorm.io/plugin/dbresolver"
"github.com/coze-dev/coze-studio/backend/domain/user/internal/dal/model"
)
func newUser(db *gorm.DB, opts ...gen.DOOption) user {
_user := user{}
_user.userDo.UseDB(db, opts...)
_user.userDo.UseModel(&model.User{})
tableName := _user.userDo.TableName()
_user.ALL = field.NewAsterisk(tableName)
_user.ID = field.NewInt64(tableName, "id")
_user.Name = field.NewString(tableName, "name")
_user.UniqueName = field.NewString(tableName, "unique_name")
_user.Email = field.NewString(tableName, "email")
_user.Password = field.NewString(tableName, "password")
_user.Description = field.NewString(tableName, "description")
_user.IconURI = field.NewString(tableName, "icon_uri")
_user.UserVerified = field.NewBool(tableName, "user_verified")
_user.Locale = field.NewString(tableName, "locale")
_user.SessionKey = field.NewString(tableName, "session_key")
_user.CreatedAt = field.NewInt64(tableName, "created_at")
_user.UpdatedAt = field.NewInt64(tableName, "updated_at")
_user.DeletedAt = field.NewField(tableName, "deleted_at")
_user.fillFieldMap()
return _user
}
// user User Table
type user struct {
userDo
ALL field.Asterisk
ID field.Int64 // Primary Key ID
Name field.String // User Nickname
UniqueName field.String // User Unique Name
Email field.String // Email
Password field.String // Password (Encrypted)
Description field.String // User Description
IconURI field.String // Avatar URI
UserVerified field.Bool // User Verification Status
Locale field.String // Locale
SessionKey field.String // Session Key
CreatedAt field.Int64 // Creation Time (Milliseconds)
UpdatedAt field.Int64 // Update Time (Milliseconds)
DeletedAt field.Field // Deletion Time (Milliseconds)
fieldMap map[string]field.Expr
}
func (u user) Table(newTableName string) *user {
u.userDo.UseTable(newTableName)
return u.updateTableName(newTableName)
}
func (u user) As(alias string) *user {
u.userDo.DO = *(u.userDo.As(alias).(*gen.DO))
return u.updateTableName(alias)
}
func (u *user) updateTableName(table string) *user {
u.ALL = field.NewAsterisk(table)
u.ID = field.NewInt64(table, "id")
u.Name = field.NewString(table, "name")
u.UniqueName = field.NewString(table, "unique_name")
u.Email = field.NewString(table, "email")
u.Password = field.NewString(table, "password")
u.Description = field.NewString(table, "description")
u.IconURI = field.NewString(table, "icon_uri")
u.UserVerified = field.NewBool(table, "user_verified")
u.Locale = field.NewString(table, "locale")
u.SessionKey = field.NewString(table, "session_key")
u.CreatedAt = field.NewInt64(table, "created_at")
u.UpdatedAt = field.NewInt64(table, "updated_at")
u.DeletedAt = field.NewField(table, "deleted_at")
u.fillFieldMap()
return u
}
func (u *user) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
_f, ok := u.fieldMap[fieldName]
if !ok || _f == nil {
return nil, false
}
_oe, ok := _f.(field.OrderExpr)
return _oe, ok
}
func (u *user) fillFieldMap() {
u.fieldMap = make(map[string]field.Expr, 13)
u.fieldMap["id"] = u.ID
u.fieldMap["name"] = u.Name
u.fieldMap["unique_name"] = u.UniqueName
u.fieldMap["email"] = u.Email
u.fieldMap["password"] = u.Password
u.fieldMap["description"] = u.Description
u.fieldMap["icon_uri"] = u.IconURI
u.fieldMap["user_verified"] = u.UserVerified
u.fieldMap["locale"] = u.Locale
u.fieldMap["session_key"] = u.SessionKey
u.fieldMap["created_at"] = u.CreatedAt
u.fieldMap["updated_at"] = u.UpdatedAt
u.fieldMap["deleted_at"] = u.DeletedAt
}
func (u user) clone(db *gorm.DB) user {
u.userDo.ReplaceConnPool(db.Statement.ConnPool)
return u
}
func (u user) replaceDB(db *gorm.DB) user {
u.userDo.ReplaceDB(db)
return u
}
type userDo struct{ gen.DO }
type IUserDo interface {
gen.SubQuery
Debug() IUserDo
WithContext(ctx context.Context) IUserDo
WithResult(fc func(tx gen.Dao)) gen.ResultInfo
ReplaceDB(db *gorm.DB)
ReadDB() IUserDo
WriteDB() IUserDo
As(alias string) gen.Dao
Session(config *gorm.Session) IUserDo
Columns(cols ...field.Expr) gen.Columns
Clauses(conds ...clause.Expression) IUserDo
Not(conds ...gen.Condition) IUserDo
Or(conds ...gen.Condition) IUserDo
Select(conds ...field.Expr) IUserDo
Where(conds ...gen.Condition) IUserDo
Order(conds ...field.Expr) IUserDo
Distinct(cols ...field.Expr) IUserDo
Omit(cols ...field.Expr) IUserDo
Join(table schema.Tabler, on ...field.Expr) IUserDo
LeftJoin(table schema.Tabler, on ...field.Expr) IUserDo
RightJoin(table schema.Tabler, on ...field.Expr) IUserDo
Group(cols ...field.Expr) IUserDo
Having(conds ...gen.Condition) IUserDo
Limit(limit int) IUserDo
Offset(offset int) IUserDo
Count() (count int64, err error)
Scopes(funcs ...func(gen.Dao) gen.Dao) IUserDo
Unscoped() IUserDo
Create(values ...*model.User) error
CreateInBatches(values []*model.User, batchSize int) error
Save(values ...*model.User) error
First() (*model.User, error)
Take() (*model.User, error)
Last() (*model.User, error)
Find() ([]*model.User, error)
FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.User, err error)
FindInBatches(result *[]*model.User, batchSize int, fc func(tx gen.Dao, batch int) error) error
Pluck(column field.Expr, dest interface{}) error
Delete(...*model.User) (info gen.ResultInfo, err error)
Update(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
UpdateSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
Updates(value interface{}) (info gen.ResultInfo, err error)
UpdateColumn(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
UpdateColumnSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
UpdateColumns(value interface{}) (info gen.ResultInfo, err error)
UpdateFrom(q gen.SubQuery) gen.Dao
Attrs(attrs ...field.AssignExpr) IUserDo
Assign(attrs ...field.AssignExpr) IUserDo
Joins(fields ...field.RelationField) IUserDo
Preload(fields ...field.RelationField) IUserDo
FirstOrInit() (*model.User, error)
FirstOrCreate() (*model.User, error)
FindByPage(offset int, limit int) (result []*model.User, count int64, err error)
ScanByPage(result interface{}, offset int, limit int) (count int64, err error)
Scan(result interface{}) (err error)
Returning(value interface{}, columns ...string) IUserDo
UnderlyingDB() *gorm.DB
schema.Tabler
}
func (u userDo) Debug() IUserDo {
return u.withDO(u.DO.Debug())
}
func (u userDo) WithContext(ctx context.Context) IUserDo {
return u.withDO(u.DO.WithContext(ctx))
}
func (u userDo) ReadDB() IUserDo {
return u.Clauses(dbresolver.Read)
}
func (u userDo) WriteDB() IUserDo {
return u.Clauses(dbresolver.Write)
}
func (u userDo) Session(config *gorm.Session) IUserDo {
return u.withDO(u.DO.Session(config))
}
func (u userDo) Clauses(conds ...clause.Expression) IUserDo {
return u.withDO(u.DO.Clauses(conds...))
}
func (u userDo) Returning(value interface{}, columns ...string) IUserDo {
return u.withDO(u.DO.Returning(value, columns...))
}
func (u userDo) Not(conds ...gen.Condition) IUserDo {
return u.withDO(u.DO.Not(conds...))
}
func (u userDo) Or(conds ...gen.Condition) IUserDo {
return u.withDO(u.DO.Or(conds...))
}
func (u userDo) Select(conds ...field.Expr) IUserDo {
return u.withDO(u.DO.Select(conds...))
}
func (u userDo) Where(conds ...gen.Condition) IUserDo {
return u.withDO(u.DO.Where(conds...))
}
func (u userDo) Order(conds ...field.Expr) IUserDo {
return u.withDO(u.DO.Order(conds...))
}
func (u userDo) Distinct(cols ...field.Expr) IUserDo {
return u.withDO(u.DO.Distinct(cols...))
}
func (u userDo) Omit(cols ...field.Expr) IUserDo {
return u.withDO(u.DO.Omit(cols...))
}
func (u userDo) Join(table schema.Tabler, on ...field.Expr) IUserDo {
return u.withDO(u.DO.Join(table, on...))
}
func (u userDo) LeftJoin(table schema.Tabler, on ...field.Expr) IUserDo {
return u.withDO(u.DO.LeftJoin(table, on...))
}
func (u userDo) RightJoin(table schema.Tabler, on ...field.Expr) IUserDo {
return u.withDO(u.DO.RightJoin(table, on...))
}
func (u userDo) Group(cols ...field.Expr) IUserDo {
return u.withDO(u.DO.Group(cols...))
}
func (u userDo) Having(conds ...gen.Condition) IUserDo {
return u.withDO(u.DO.Having(conds...))
}
func (u userDo) Limit(limit int) IUserDo {
return u.withDO(u.DO.Limit(limit))
}
func (u userDo) Offset(offset int) IUserDo {
return u.withDO(u.DO.Offset(offset))
}
func (u userDo) Scopes(funcs ...func(gen.Dao) gen.Dao) IUserDo {
return u.withDO(u.DO.Scopes(funcs...))
}
func (u userDo) Unscoped() IUserDo {
return u.withDO(u.DO.Unscoped())
}
func (u userDo) Create(values ...*model.User) error {
if len(values) == 0 {
return nil
}
return u.DO.Create(values)
}
func (u userDo) CreateInBatches(values []*model.User, batchSize int) error {
return u.DO.CreateInBatches(values, batchSize)
}
// Save : !!! underlying implementation is different with GORM
// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values)
func (u userDo) Save(values ...*model.User) error {
if len(values) == 0 {
return nil
}
return u.DO.Save(values)
}
func (u userDo) First() (*model.User, error) {
if result, err := u.DO.First(); err != nil {
return nil, err
} else {
return result.(*model.User), nil
}
}
func (u userDo) Take() (*model.User, error) {
if result, err := u.DO.Take(); err != nil {
return nil, err
} else {
return result.(*model.User), nil
}
}
func (u userDo) Last() (*model.User, error) {
if result, err := u.DO.Last(); err != nil {
return nil, err
} else {
return result.(*model.User), nil
}
}
func (u userDo) Find() ([]*model.User, error) {
result, err := u.DO.Find()
return result.([]*model.User), err
}
func (u userDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.User, err error) {
buf := make([]*model.User, 0, batchSize)
err = u.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error {
defer func() { results = append(results, buf...) }()
return fc(tx, batch)
})
return results, err
}
func (u userDo) FindInBatches(result *[]*model.User, batchSize int, fc func(tx gen.Dao, batch int) error) error {
return u.DO.FindInBatches(result, batchSize, fc)
}
func (u userDo) Attrs(attrs ...field.AssignExpr) IUserDo {
return u.withDO(u.DO.Attrs(attrs...))
}
func (u userDo) Assign(attrs ...field.AssignExpr) IUserDo {
return u.withDO(u.DO.Assign(attrs...))
}
func (u userDo) Joins(fields ...field.RelationField) IUserDo {
for _, _f := range fields {
u = *u.withDO(u.DO.Joins(_f))
}
return &u
}
func (u userDo) Preload(fields ...field.RelationField) IUserDo {
for _, _f := range fields {
u = *u.withDO(u.DO.Preload(_f))
}
return &u
}
func (u userDo) FirstOrInit() (*model.User, error) {
if result, err := u.DO.FirstOrInit(); err != nil {
return nil, err
} else {
return result.(*model.User), nil
}
}
func (u userDo) FirstOrCreate() (*model.User, error) {
if result, err := u.DO.FirstOrCreate(); err != nil {
return nil, err
} else {
return result.(*model.User), nil
}
}
func (u userDo) FindByPage(offset int, limit int) (result []*model.User, count int64, err error) {
result, err = u.Offset(offset).Limit(limit).Find()
if err != nil {
return
}
if size := len(result); 0 < limit && 0 < size && size < limit {
count = int64(size + offset)
return
}
count, err = u.Offset(-1).Limit(-1).Count()
return
}
func (u userDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) {
count, err = u.Count()
if err != nil {
return
}
err = u.Offset(offset).Limit(limit).Scan(result)
return
}
func (u userDo) Scan(result interface{}) (err error) {
return u.DO.Scan(result)
}
func (u userDo) Delete(models ...*model.User) (result gen.ResultInfo, err error) {
return u.DO.Delete(models)
}
func (u *userDo) withDO(do gen.Dao) *userDo {
u.DO = *do.(*gen.DO)
return u
}