From 891e631b91d8e88bb945d89a351349a0e9184ac3 Mon Sep 17 00:00:00 2001 From: withchao <993506633@qq.com> Date: Sat, 28 Jan 2023 18:01:33 +0800 Subject: [PATCH 1/4] 1 --- pkg/common/db/controller/group.go | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/pkg/common/db/controller/group.go b/pkg/common/db/controller/group.go index ae4aa3007..677a6ce88 100644 --- a/pkg/common/db/controller/group.go +++ b/pkg/common/db/controller/group.go @@ -32,31 +32,31 @@ func NewGroupController(db *gorm.DB, rdb redis.UniversalClient, mgoDB *mongo.Dat } func (g *GroupController) FindGroupsByID(ctx context.Context, groupIDs []string) (groups []*relation.Group, err error) { - return g.database.Find(ctx, groupIDs) + return g.database.FindGroupsByID(ctx, groupIDs) } func (g *GroupController) CreateGroup(ctx context.Context, groups []*relation.Group) error { - return g.database.Create(ctx, groups) + return g.database.CreateGroup(ctx, groups) } func (g *GroupController) DeleteGroupByIDs(ctx context.Context, groupIDs []string) error { - return g.database.Delete(ctx, groupIDs) + return g.database.DeleteGroupByIDs(ctx, groupIDs) } func (g *GroupController) TakeGroupByID(ctx context.Context, groupID string) (group *relation.Group, err error) { - return g.database.Take(ctx, groupID) + return g.database.TakeGroupByID(ctx, groupID) } func (g *GroupController) GetSuperGroupByID(ctx context.Context, groupID string) (superGroup *unrelation.SuperGroup, err error) { - return g.database.GetSuperGroup(ctx, groupID) + return g.database.GetSuperGroupByID(ctx, groupID) } type DataBase interface { - Find(ctx context.Context, groupIDs []string) (groups []*relation.Group, err error) - Create(ctx context.Context, groups []*relation.Group) error - Delete(ctx context.Context, groupIDs []string) error - Take(ctx context.Context, groupID string) (group *relation.Group, err error) - GetSuperGroup(ctx context.Context, groupID string) (superGroup *unrelation.SuperGroup, err error) + FindGroupsByID(ctx context.Context, groupIDs []string) (groups []*relation.Group, err error) + CreateGroup(ctx context.Context, groups []*relation.Group) error + DeleteGroupByIDs(ctx context.Context, groupIDs []string) error + TakeGroupByID(ctx context.Context, groupID string) (group *relation.Group, err error) + GetSuperGroupByID(ctx context.Context, groupID string) (superGroup *unrelation.SuperGroup, err error) } type GroupDataBase struct { @@ -80,15 +80,15 @@ func newGroupDatabase(db *gorm.DB, rdb redis.UniversalClient, mgoDB *mongo.Datab return database } -func (g *GroupDataBase) Find(ctx context.Context, groupIDs []string) (groups []*relation.Group, err error) { +func (g *GroupDataBase) FindGroupsByID(ctx context.Context, groupIDs []string) (groups []*relation.Group, err error) { return g.cache.GetGroupsInfoFromCache(ctx, groupIDs) } -func (g *GroupDataBase) Create(ctx context.Context, groups []*relation.Group) error { +func (g *GroupDataBase) CreateGroup(ctx context.Context, groups []*relation.Group) error { return g.sqlDB.Create(ctx, groups) } -func (g *GroupDataBase) Delete(ctx context.Context, groupIDs []string) error { +func (g *GroupDataBase) DeleteGroupByIDs(ctx context.Context, groupIDs []string) error { return g.sqlDB.DB.Transaction(func(tx *gorm.DB) error { if err := g.sqlDB.Delete(ctx, groupIDs, tx); err != nil { return err @@ -100,7 +100,7 @@ func (g *GroupDataBase) Delete(ctx context.Context, groupIDs []string) error { }) } -func (g *GroupDataBase) Take(ctx context.Context, groupID string) (group *relation.Group, err error) { +func (g *GroupDataBase) TakeGroupByID(ctx context.Context, groupID string) (group *relation.Group, err error) { return g.cache.GetGroupInfoFromCache(ctx, groupID) } @@ -120,6 +120,6 @@ func (g *GroupDataBase) Update(ctx context.Context, groups []*relation.Group) er }) } -func (g *GroupDataBase) GetSuperGroup(ctx context.Context, groupID string) (superGroup *unrelation.SuperGroup, err error) { +func (g *GroupDataBase) GetSuperGroupByID(ctx context.Context, groupID string) (superGroup *unrelation.SuperGroup, err error) { return g.mongoDB.GetSuperGroup(ctx, groupID) } From 601fac7a04877cd186753f23c35d72444b03cc45 Mon Sep 17 00:00:00 2001 From: withchao <993506633@qq.com> Date: Sat, 28 Jan 2023 18:46:42 +0800 Subject: [PATCH 2/4] 1 --- pkg/common/db/relation/group_model_k.go | 4 ++-- pkg/common/db/relation/init_mysql.go | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/common/db/relation/group_model_k.go b/pkg/common/db/relation/group_model_k.go index ae451addf..9e3827a7c 100644 --- a/pkg/common/db/relation/group_model_k.go +++ b/pkg/common/db/relation/group_model_k.go @@ -29,7 +29,7 @@ type Group struct { func NewGroupDB(db *gorm.DB) *Group { var group Group - group.DB = db.Model(&Group{}) + group.DB = db return &group } @@ -45,7 +45,7 @@ func (g *Group) Delete(ctx context.Context, groupIDs []string, tx ...*gorm.DB) ( defer func() { trace_log.SetCtxDebug(ctx, utils.GetFuncName(1), err, "groupIDs", groupIDs) }() - return utils.Wrap(getDBConn(g.DB, tx...).Where("group_id in (?)", groupIDs).Delete(&Group{}).Error, "") + return utils.Wrap(getDBConn(g.DB, tx).Where("group_id in (?)", groupIDs).Delete(&Group{}).Error, "") } func (g *Group) UpdateByMap(ctx context.Context, groupID string, args map[string]interface{}) (err error) { diff --git a/pkg/common/db/relation/init_mysql.go b/pkg/common/db/relation/init_mysql.go index b5439a9e6..1bc637760 100644 --- a/pkg/common/db/relation/init_mysql.go +++ b/pkg/common/db/relation/init_mysql.go @@ -87,7 +87,7 @@ func (w Writer) Printf(format string, args ...interface{}) { fmt.Printf(format, args...) } -func getDBConn(db *gorm.DB, tx ...*gorm.DB) *gorm.DB { +func getDBConn(db *gorm.DB, tx []*gorm.DB) *gorm.DB { if len(tx) > 0 { return tx[0] } From c760b520ffbe49d0b2eee884b4f8135a87039d63 Mon Sep 17 00:00:00 2001 From: withchao <993506633@qq.com> Date: Sat, 28 Jan 2023 18:47:02 +0800 Subject: [PATCH 3/4] 1 --- pkg/common/db/relation/group_model_k.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/common/db/relation/group_model_k.go b/pkg/common/db/relation/group_model_k.go index 9e3827a7c..59c38e054 100644 --- a/pkg/common/db/relation/group_model_k.go +++ b/pkg/common/db/relation/group_model_k.go @@ -59,7 +59,7 @@ func (g *Group) Update(ctx context.Context, groups []*Group, tx ...*gorm.DB) (er defer func() { trace_log.SetCtxDebug(ctx, utils.GetFuncName(1), err, "groups", groups) }() - return utils.Wrap(getDBConn(g.DB, tx...).Updates(&groups).Error, "") + return utils.Wrap(getDBConn(g.DB, tx).Updates(&groups).Error, "") } func (g *Group) Find(ctx context.Context, groupIDs []string) (groups []*Group, err error) { From 5bf8f6728e1e56bcc96126a724813d0c998c8e4c Mon Sep 17 00:00:00 2001 From: withchao <993506633@qq.com> Date: Sat, 28 Jan 2023 18:49:36 +0800 Subject: [PATCH 4/4] 1 --- pkg/common/db/relation/group_model_k.go | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/pkg/common/db/relation/group_model_k.go b/pkg/common/db/relation/group_model_k.go index 59c38e054..999874842 100644 --- a/pkg/common/db/relation/group_model_k.go +++ b/pkg/common/db/relation/group_model_k.go @@ -33,11 +33,11 @@ func NewGroupDB(db *gorm.DB) *Group { return &group } -func (g *Group) Create(ctx context.Context, groups []*Group) (err error) { +func (g *Group) Create(ctx context.Context, groups []*Group, tx ...*gorm.DB) (err error) { defer func() { trace_log.SetCtxDebug(ctx, utils.GetFuncName(1), err, "groups", groups) }() - err = utils.Wrap(g.DB.Create(&groups).Error, "") + err = utils.Wrap(getDBConn(g.DB, tx).Create(&groups).Error, "") return err } @@ -48,11 +48,11 @@ func (g *Group) Delete(ctx context.Context, groupIDs []string, tx ...*gorm.DB) ( return utils.Wrap(getDBConn(g.DB, tx).Where("group_id in (?)", groupIDs).Delete(&Group{}).Error, "") } -func (g *Group) UpdateByMap(ctx context.Context, groupID string, args map[string]interface{}) (err error) { +func (g *Group) UpdateByMap(ctx context.Context, groupID string, args map[string]interface{}, tx ...*gorm.DB) (err error) { defer func() { trace_log.SetCtxDebug(ctx, utils.GetFuncName(1), err, "groupID", groupID, "args", args) }() - return utils.Wrap(g.DB.Where("group_id = ?", groupID).Updates(args).Error, "") + return utils.Wrap(getDBConn(g.DB, tx).Where("group_id = ?", groupID).Model(g).Updates(args).Error, "") } func (g *Group) Update(ctx context.Context, groups []*Group, tx ...*gorm.DB) (err error) { @@ -62,22 +62,23 @@ func (g *Group) Update(ctx context.Context, groups []*Group, tx ...*gorm.DB) (er return utils.Wrap(getDBConn(g.DB, tx).Updates(&groups).Error, "") } -func (g *Group) Find(ctx context.Context, groupIDs []string) (groups []*Group, err error) { +func (g *Group) Find(ctx context.Context, groupIDs []string, tx ...*gorm.DB) (groups []*Group, err error) { defer func() { trace_log.SetCtxDebug(ctx, utils.GetFuncName(1), err, "groupIDs", groupIDs, "groups", groups) }() - err = utils.Wrap(g.DB.Where("group_id in (?)", groupIDs).Find(&groups).Error, "") + err = utils.Wrap(getDBConn(g.DB, tx).Where("group_id in (?)", groupIDs).Find(&groups).Error, "") return groups, err } -func (g *Group) Take(ctx context.Context, groupID string) (group *Group, err error) { +func (g *Group) Take(ctx context.Context, groupID string, tx ...*gorm.DB) (group *Group, err error) { group = &Group{} defer func() { trace_log.SetCtxDebug(ctx, utils.GetFuncName(1), err, "groupID", groupID, "group", *group) }() - err = utils.Wrap(g.DB.Where("group_id = ?", groupID).Take(group).Error, "") + err = utils.Wrap(getDBConn(g.DB, tx).Where("group_id = ?", groupID).Take(group).Error, "") return group, err } -func (g *Group) DeleteTx(ctx context.Context, groupIDs []string) error { - return nil -} + +//func (g *Group) DeleteTx(ctx context.Context, groupIDs []string) error { +// return nil +//}