Error code standardization

This commit is contained in:
skiffer-git
2023-01-30 15:26:39 +08:00
parent d9eb55d9df
commit ec23d22d6d
5 changed files with 176 additions and 68 deletions
+70 -32
View File
@@ -1,52 +1,90 @@
package controller
import (
"Open_IM/pkg/common/db/cache"
"Open_IM/pkg/common/db/relation"
"context"
"errors"
"gorm.io/gorm"
)
type BlackModel struct {
db *relation.Black
cache *cache.GroupCache
type BlackInterface interface {
Create(ctx context.Context, blacks []*relation.Black) (err error)
Delete(ctx context.Context, blacks []*relation.Black) (err error)
UpdateByMap(ctx context.Context, ownerUserID, blockUserID string, args map[string]interface{}) (err error)
Update(ctx context.Context, blacks []*relation.Black) (err error)
Find(ctx context.Context, blacks []*relation.Black) (blackList []*relation.Black, err error)
Take(ctx context.Context, ownerUserID, blockUserID string) (black *relation.Black, err error)
FindByOwnerUserID(ctx context.Context, ownerUserID string) (blackList []*relation.Black, err error)
}
func (b *BlackModel) Create(ctx context.Context, blacks []*relation.Black) (err error) {
return b.db.Create(ctx, blacks)
type BlackController struct {
database BlackDatabaseInterface
}
func (b *BlackModel) Delete(ctx context.Context, blacks []*relation.Black) (err error) {
return b.db.Delete(ctx, blacks)
func NewBlackController(db *gorm.DB) *BlackController {
return &BlackController{database: NewBlackDatabase(db)}
}
func (f *BlackController) Create(ctx context.Context, blacks []*relation.Black) (err error) {
return f.database.Create(ctx, blacks)
}
func (f *BlackController) Delete(ctx context.Context, blacks []*relation.Black) (err error) {
return f.database.Delete(ctx, blacks)
}
func (f *BlackController) UpdateByMap(ctx context.Context, ownerUserID, blockUserID string, args map[string]interface{}) (err error) {
return f.database.UpdateByMap(ctx, ownerUserID, blockUserID, args)
}
func (f *BlackController) Update(ctx context.Context, blacks []*relation.Black) (err error) {
return f.database.Update(ctx, blacks)
}
func (f *BlackController) Find(ctx context.Context, blacks []*relation.Black) (blackList []*relation.Black, err error) {
return f.database.Find(ctx, blacks)
}
func (f *BlackController) Take(ctx context.Context, ownerUserID, blockUserID string) (black *relation.Black, err error) {
return f.database.Take(ctx, ownerUserID, blockUserID)
}
func (f *BlackController) FindByOwnerUserID(ctx context.Context, ownerUserID string) (blackList []*relation.Black, err error) {
return f.database.FindByOwnerUserID(ctx, ownerUserID)
}
func (b *BlackModel) UpdateByMap(ctx context.Context, ownerUserID, blockUserID string, args map[string]interface{}) (err error) {
return b.db.UpdateByMap(ctx, ownerUserID, blockUserID, args)
type BlackDatabaseInterface interface {
Create(ctx context.Context, blacks []*relation.Black) (err error)
Delete(ctx context.Context, blacks []*relation.Black) (err error)
UpdateByMap(ctx context.Context, ownerUserID, blockUserID string, args map[string]interface{}) (err error)
Update(ctx context.Context, blacks []*relation.Black) (err error)
Find(ctx context.Context, blacks []*relation.Black) (blackList []*relation.Black, err error)
Take(ctx context.Context, ownerUserID, blockUserID string) (black *relation.Black, err error)
FindByOwnerUserID(ctx context.Context, ownerUserID string) (blackList []*relation.Black, err error)
}
func (b *BlackModel) Update(ctx context.Context, blacks []*relation.Black) (err error) {
return b.db.Update(ctx, blacks)
type BlackDatabase struct {
sqlDB *relation.Black
}
func (b *BlackModel) Find(ctx context.Context, blacks []*relation.Black) (blackList []*relation.Black, err error) {
return b.db.Find(ctx, blacks)
}
func (b *BlackModel) Take(ctx context.Context, ownerUserID, blockUserID string) (black *relation.Black, err error) {
return b.db.Take(ctx, ownerUserID, blockUserID)
}
func (b *BlackModel) FindByOwnerUserID(ctx context.Context, ownerUserID string) (blackList []*relation.Black, err error) {
return b.db.FindByOwnerUserID(ctx, ownerUserID)
}
func (b *BlackModel) IsExist(ctx context.Context, ownerUserID, blockUserID string) (bool, error) {
if _, err := b.Take(ctx, ownerUserID, blockUserID); err == nil {
return true, nil
} else if errors.Is(err, gorm.ErrRecordNotFound) {
return false, nil
} else {
return false, err
func NewBlackDatabase(db *gorm.DB) *BlackDatabase {
sqlDB := relation.NewBlack(db)
database := &BlackDatabase{
sqlDB: sqlDB,
}
return database
}
func (f *BlackDatabase) Create(ctx context.Context, blacks []*relation.Black) (err error) {
return f.sqlDB.Create(ctx, blacks)
}
func (f *BlackDatabase) Delete(ctx context.Context, blacks []*relation.Black) (err error) {
return f.sqlDB.Delete(ctx, blacks)
}
func (f *BlackDatabase) UpdateByMap(ctx context.Context, ownerUserID, blockUserID string, args map[string]interface{}) (err error) {
return f.sqlDB.UpdateByMap(ctx, ownerUserID, blockUserID, args)
}
func (f *BlackDatabase) Update(ctx context.Context, blacks []*relation.Black) (err error) {
return f.sqlDB.Update(ctx, blacks)
}
func (f *BlackDatabase) Find(ctx context.Context, blacks []*relation.Black) (blackList []*relation.Black, err error) {
return f.sqlDB.Find(ctx, blacks)
}
func (f *BlackDatabase) Take(ctx context.Context, ownerUserID, blockUserID string) (black *relation.Black, err error) {
return f.sqlDB.Take(ctx, ownerUserID, blockUserID)
}
func (f *BlackDatabase) FindByOwnerUserID(ctx context.Context, ownerUserID string) (blackList []*relation.Black, err error) {
return f.sqlDB.FindByOwnerUserID(ctx, ownerUserID)
}