fix: err not fount type

pull/242/head v0.7.3
zijiren233 1 year ago
parent 16569ead44
commit dcde91aff3

@ -46,7 +46,7 @@ func BilibiliSharedMpdCacheInitFunc(ctx context.Context, movie *model.Movie, arg
var cookies []*http.Cookie
vendorInfo, err := args.Get(ctx)
if err != nil {
if !errors.Is(err, db.ErrNotFound("vendor")) {
if !errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
return nil, err
}
} else {
@ -173,7 +173,7 @@ func BilibiliNoSharedMovieCacheInitFunc(ctx context.Context, movie *model.Movie,
var cookies []*http.Cookie
vendorInfo, err := args[0].Get(ctx)
if err != nil {
if !errors.Is(err, db.ErrNotFound("vendor")) {
if !errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
return "", err
}
} else {
@ -250,7 +250,7 @@ func BilibiliSubtitleCacheInitFunc(ctx context.Context, movie *model.Movie, args
var cookies []*http.Cookie
vendorInfo, err := args.Get(ctx)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
return nil, nil
}
} else {

@ -45,7 +45,7 @@ func EmbyAuthorizationCacheWithUserIDInitFunc(userID, serverID string) (*EmbyUse
return nil, err
}
if v.ApiKey == "" || v.Host == "" {
return nil, db.ErrNotFound("vendor")
return nil, db.ErrNotFound(db.ErrVendorNotFound)
}
return &EmbyUserCacheData{
Host: v.Host,

@ -5,6 +5,10 @@ import (
"gorm.io/gorm"
)
const (
ErrRoomMemberNotFound = "room or member"
)
type CreateRoomMemberRelationConfig func(r *model.RoomMember)
func WithRoomMemberStatus(status model.RoomMemberStatus) CreateRoomMemberRelationConfig {
@ -51,7 +55,7 @@ func FirstOrCreateRoomMemberRelation(roomID, userID string, conf ...CreateRoomMe
func GetRoomMember(roomID, userID string) (*model.RoomMember, error) {
roomMemberRelation := &model.RoomMember{}
err := db.Where("room_id = ? AND user_id = ?", roomID, userID).First(roomMemberRelation).Error
return roomMemberRelation, HandleNotFound(err, "room or member")
return roomMemberRelation, HandleNotFound(err, ErrRoomMemberNotFound)
}
func RoomApprovePendingMember(roomID, userID string) error {
@ -59,19 +63,19 @@ func RoomApprovePendingMember(roomID, userID string) error {
Where("room_id = ? AND user_id = ? AND status = ?", roomID, userID, model.RoomMemberStatusPending).
Update("status", model.RoomMemberStatusActive)
return HandleUpdateResult(result, "room member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func RoomBanMember(roomID, userID string) error {
result := db.Model(&model.RoomMember{}).
Where("room_id = ? AND user_id = ?", roomID, userID).
Update("status", model.RoomMemberStatusBanned)
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func RoomUnbanMember(roomID, userID string) error {
result := db.Model(&model.RoomMember{}).Where("room_id = ? AND user_id = ?", roomID, userID).Update("status", model.RoomMemberStatusActive)
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func DeleteRoomMember(roomID, userID string) error {
@ -84,22 +88,22 @@ func DeleteRoomMember(roomID, userID string) error {
Where("room_id = ? AND user_id = ?", roomID, userID).
Delete(&model.RoomMember{})
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func SetMemberPermissions(roomID string, userID string, permission model.RoomMemberPermission) error {
result := db.Model(&model.RoomMember{}).Where("room_id = ? AND user_id = ?", roomID, userID).Update("permissions", permission)
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func AddMemberPermissions(roomID string, userID string, permission model.RoomMemberPermission) error {
result := db.Model(&model.RoomMember{}).Where("room_id = ? AND user_id = ?", roomID, userID).Update("permissions", db.Raw("permissions | ?", permission))
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func RemoveMemberPermissions(roomID string, userID string, permission model.RoomMemberPermission) error {
result := db.Model(&model.RoomMember{}).Where("room_id = ? AND user_id = ?", roomID, userID).Update("permissions", db.Raw("permissions & ?", ^permission))
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
// func GetAllRoomMembersRelationCount(roomID string, scopes ...func(*gorm.DB) *gorm.DB) (int64, error) {
@ -110,17 +114,17 @@ func RemoveMemberPermissions(roomID string, userID string, permission model.Room
func RoomSetAdminPermissions(roomID, userID string, permissions model.RoomAdminPermission) error {
result := db.Model(&model.RoomMember{}).Where("room_id = ? AND user_id = ?", roomID, userID).Update("admin_permissions", permissions)
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func RoomAddAdminPermissions(roomID, userID string, permissions model.RoomAdminPermission) error {
result := db.Model(&model.RoomMember{}).Where("room_id = ? AND user_id = ?", roomID, userID).Update("admin_permissions", db.Raw("admin_permissions | ?", permissions))
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func RoomRemoveAdminPermissions(roomID, userID string, permissions model.RoomAdminPermission) error {
result := db.Model(&model.RoomMember{}).Where("room_id = ? AND user_id = ?", roomID, userID).Update("admin_permissions", db.Raw("admin_permissions & ?", ^permissions))
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func RoomSetAdmin(roomID, userID string, permissions model.RoomAdminPermission) error {
@ -129,7 +133,7 @@ func RoomSetAdmin(roomID, userID string, permissions model.RoomAdminPermission)
"permissions": model.AllPermissions,
"admin_permissions": permissions,
})
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func RoomSetMember(roomID, userID string, permissions model.RoomMemberPermission) error {
@ -138,7 +142,7 @@ func RoomSetMember(roomID, userID string, permissions model.RoomMemberPermission
"permissions": permissions,
"admin_permissions": model.NoAdminPermission,
})
return HandleUpdateResult(result, "room or member")
return HandleUpdateResult(result, ErrRoomMemberNotFound)
}
func GetRoomMembers(roomID string, scopes ...func(*gorm.DB) *gorm.DB) ([]*model.RoomMember, error) {

@ -6,6 +6,10 @@ import (
"gorm.io/gorm/clause"
)
const (
ErrRoomOrMovieNotFound = "room or movie"
)
func CreateMovie(movie *model.Movie) error {
return db.Create(movie).Error
}
@ -38,22 +42,22 @@ func GetMoviesCountByRoomID(roomID string, scopes ...func(*gorm.DB) *gorm.DB) (i
func GetMovieByID(roomID, id string, scopes ...func(*gorm.DB) *gorm.DB) (*model.Movie, error) {
var movie model.Movie
err := db.Where("room_id = ? AND id = ?", roomID, id).Scopes(scopes...).First(&movie).Error
return &movie, HandleNotFound(err, "room or movie")
return &movie, HandleNotFound(err, ErrRoomOrMovieNotFound)
}
func DeleteMovieByID(roomID, id string) error {
err := db.Unscoped().Where("room_id = ? AND id = ?", roomID, id).Delete(&model.Movie{}).Error
return HandleNotFound(err, "room")
result := db.Unscoped().Where("room_id = ? AND id = ?", roomID, id).Delete(&model.Movie{})
return HandleUpdateResult(result, ErrRoomOrMovieNotFound)
}
func DeleteMoviesByID(roomID string, ids []string) error {
err := db.Unscoped().Where("room_id = ? AND id IN ?", roomID, ids).Delete(&model.Movie{}).Error
return HandleNotFound(err, "room")
result := db.Unscoped().Where("room_id = ? AND id IN ?", roomID, ids).Delete(&model.Movie{})
return HandleUpdateResult(result, ErrRoomOrMovieNotFound)
}
func DeleteMoviesByRoomID(roomID string, scopes ...func(*gorm.DB) *gorm.DB) error {
err := db.Where("room_id = ?", roomID).Scopes(scopes...).Delete(&model.Movie{}).Error
return HandleNotFound(err, "room")
result := db.Where("room_id = ?", roomID).Scopes(scopes...).Delete(&model.Movie{})
return HandleUpdateResult(result, ErrRoomOrMovieNotFound)
}
func DeleteMoviesByRoomIDAndParentID(roomID, parentID string) error {
@ -62,31 +66,31 @@ func DeleteMoviesByRoomIDAndParentID(roomID, parentID string) error {
func UpdateMovie(movie *model.Movie, columns ...clause.Column) error {
result := db.Model(movie).Clauses(clause.Returning{Columns: columns}).Where("room_id = ? AND id = ?", movie.RoomID, movie.ID).Updates(movie)
return HandleUpdateResult(result, "movie")
return HandleUpdateResult(result, ErrRoomOrMovieNotFound)
}
func SaveMovie(movie *model.Movie, columns ...clause.Column) error {
result := db.Model(movie).Clauses(clause.Returning{Columns: columns}).Where("room_id = ? AND id = ?", movie.RoomID, movie.ID).Omit("created_at").Save(movie)
return HandleUpdateResult(result, "movie")
return HandleUpdateResult(result, ErrRoomOrMovieNotFound)
}
func SwapMoviePositions(roomID, movie1ID, movie2ID string) error {
return db.Transaction(func(tx *gorm.DB) error {
var movie1, movie2 model.Movie
if err := tx.Where("room_id = ? AND id = ?", roomID, movie1ID).First(&movie1).Error; err != nil {
return HandleNotFound(err, "movie1")
return HandleNotFound(err, ErrRoomOrMovieNotFound)
}
if err := tx.Where("room_id = ? AND id = ?", roomID, movie2ID).First(&movie2).Error; err != nil {
return HandleNotFound(err, "movie2")
return HandleNotFound(err, ErrRoomOrMovieNotFound)
}
movie1.Position, movie2.Position = movie2.Position, movie1.Position
result1 := tx.Model(&movie1).Where("room_id = ? AND id = ?", roomID, movie1ID).Update("position", movie1.Position)
if err := HandleUpdateResult(result1, "movie1"); err != nil {
if err := HandleUpdateResult(result1, ErrRoomOrMovieNotFound); err != nil {
return err
}
result2 := tx.Model(&movie2).Where("room_id = ? AND id = ?", roomID, movie2ID).Update("position", movie2.Position)
return HandleUpdateResult(result2, "movie2")
return HandleUpdateResult(result2, ErrRoomOrMovieNotFound)
})
}

@ -11,6 +11,10 @@ import (
"gorm.io/gorm/clause"
)
const (
ErrRoomNotFound = "room"
)
type CreateRoomConfig func(r *model.Room)
func WithSetting(setting *model.RoomSettings) CreateRoomConfig {
@ -102,13 +106,13 @@ func GetRoomByID(id string) (*model.Room, error) {
}
var r model.Room
err := db.Where("id = ?", id).First(&r).Error
return &r, HandleNotFound(err, "room")
return &r, HandleNotFound(err, ErrRoomNotFound)
}
func CreateOrLoadRoomSettings(roomID string) (*model.RoomSettings, error) {
var rs model.RoomSettings
err := OnConflictDoNothing().Where(model.RoomSettings{ID: roomID}).Attrs(model.DefaultRoomSettings()).FirstOrCreate(&rs).Error
return &rs, HandleNotFound(err, "room")
return &rs, err
}
func SaveRoomSettings(roomID string, settings *model.RoomSettings) error {
@ -127,7 +131,7 @@ func UpdateRoomSettings(roomID string, settings map[string]interface{}) (*model.
func DeleteRoomByID(roomID string) error {
result := db.Unscoped().Select(clause.Associations).Delete(&model.Room{ID: roomID})
return HandleUpdateResult(result, "room")
return HandleUpdateResult(result, ErrRoomNotFound)
}
func SetRoomPassword(roomID, password string) error {
@ -144,7 +148,7 @@ func SetRoomPassword(roomID, password string) error {
func SetRoomHashedPassword(roomID string, hashedPassword []byte) error {
result := db.Model(&model.Room{}).Where("id = ?", roomID).Update("hashed_password", hashedPassword)
return HandleUpdateResult(result, "room")
return HandleUpdateResult(result, ErrRoomNotFound)
}
func GetAllRooms(scopes ...func(*gorm.DB) *gorm.DB) ([]*model.Room, error) {
@ -173,10 +177,10 @@ func GetAllRoomsByUserID(userID string) ([]*model.Room, error) {
func SetRoomStatus(roomID string, status model.RoomStatus) error {
result := db.Model(&model.Room{}).Where("id = ?", roomID).Update("status", status)
return HandleUpdateResult(result, "room")
return HandleUpdateResult(result, ErrRoomNotFound)
}
func SetRoomStatusByCreator(userID string, status model.RoomStatus) error {
result := db.Model(&model.Room{}).Where("creator_id = ?", userID).Update("status", status)
return HandleUpdateResult(result, "room")
return HandleUpdateResult(result, ErrRoomNotFound)
}

@ -5,6 +5,10 @@ import (
"gorm.io/gorm/clause"
)
const (
ErrSettingNotFound = "setting"
)
func GetSettingItems() ([]*model.Setting, error) {
var items []*model.Setting
return items, db.Find(&items).Error
@ -35,17 +39,17 @@ func SaveSettingItem(item *model.Setting) error {
result := db.Clauses(clause.OnConflict{
UpdateAll: true,
}).Create(item)
return HandleUpdateResult(result, "setting")
return HandleUpdateResult(result, ErrSettingNotFound)
}
func DeleteSettingItem(item *model.Setting) error {
result := db.Where("name = ?", item.Name).Delete(&model.Setting{})
return HandleUpdateResult(result, "setting")
return HandleUpdateResult(result, ErrSettingNotFound)
}
func DeleteSettingItemByName(name string) error {
result := db.Where("name = ?", name).Delete(&model.Setting{})
return HandleUpdateResult(result, "setting")
return HandleUpdateResult(result, ErrSettingNotFound)
}
func GetSettingItemValue(name string) (string, error) {
@ -67,5 +71,5 @@ func FirstOrCreateSettingItemValue(s *model.Setting) error {
func UpdateSettingItemValue(name, value string) error {
result := db.Model(&model.Setting{}).Where("name = ?", name).Update("value", value)
return HandleUpdateResult(result, "setting")
return HandleUpdateResult(result, ErrSettingNotFound)
}

@ -13,6 +13,10 @@ import (
"gorm.io/gorm/clause"
)
const (
ErrUserNotFound = "user"
)
type CreateUserConfig func(u *model.User)
func WithID(id string) CreateUserConfig {
@ -140,13 +144,13 @@ func GetUserByProvider(p provider.OAuth2Provider, puid string) (*model.User, err
err := db.Joins("JOIN user_providers ON users.id = user_providers.user_id").
Where("user_providers.provider = ? AND user_providers.provider_user_id = ?", p, puid).
First(&user).Error
return &user, HandleNotFound(err, "user")
return &user, HandleNotFound(err, ErrUserNotFound)
}
func GetUserByEmail(email string) (*model.User, error) {
var user model.User
err := db.Where("email = ?", email).First(&user).Error
return &user, HandleNotFound(err, "user")
return &user, HandleNotFound(err, ErrUserNotFound)
}
func GetProviderUserID(p provider.OAuth2Provider, puid string) (string, error) {
@ -155,7 +159,7 @@ func GetProviderUserID(p provider.OAuth2Provider, puid string) (string, error) {
Where("provider = ? AND provider_user_id = ?", p, puid).
Select("user_id").
First(&userID).Error
return userID, HandleNotFound(err, "user")
return userID, HandleNotFound(err, ErrUserNotFound)
}
func BindProvider(uid string, p provider.OAuth2Provider, puid string) error {
@ -177,7 +181,7 @@ func UnBindProvider(uid string, p provider.OAuth2Provider) error {
return Transactional(func(tx *gorm.DB) error {
var user model.User
if err := tx.Preload("UserProviders").Where("id = ?", uid).First(&user).Error; err != nil {
return HandleNotFound(err, "user")
return HandleNotFound(err, ErrUserNotFound)
}
if user.RegisteredByProvider && len(user.UserProviders) <= 1 {
return errors.New("user must have at least one provider")
@ -189,14 +193,14 @@ func UnBindProvider(uid string, p provider.OAuth2Provider) error {
func BindEmail(id string, email string) error {
result := db.Model(&model.User{}).Where("id = ?", id).Update("email", model.EmptyNullString(email))
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func UnbindEmail(uid string) error {
return Transactional(func(tx *gorm.DB) error {
var user model.User
if err := tx.Select("email", "registered_by_email").Where("id = ?", uid).First(&user).Error; err != nil {
return HandleNotFound(err, "user")
return HandleNotFound(err, ErrUserNotFound)
}
if user.RegisteredByEmail {
return errors.New("user must have one email")
@ -205,7 +209,7 @@ func UnbindEmail(uid string) error {
return nil
}
result := tx.Model(&model.User{}).Where("id = ?", uid).Update("email", model.EmptyNullString(""))
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
})
}
@ -221,7 +225,7 @@ func GetBindProviders(uid string) ([]*model.UserProvider, error) {
func GetUserByUsername(username string) (*model.User, error) {
var user model.User
err := db.Where("username = ?", username).First(&user).Error
return &user, HandleNotFound(err, "user")
return &user, HandleNotFound(err, ErrUserNotFound)
}
func GetUserByUsernameLike(username string, scopes ...func(*gorm.DB) *gorm.DB) ([]*model.User, error) {
@ -266,7 +270,7 @@ func GetUserByID(id string) (*model.User, error) {
}
var user model.User
err := db.Where("id = ?", id).First(&user).Error
return &user, HandleNotFound(err, "user")
return &user, HandleNotFound(err, ErrUserNotFound)
}
func BanUser(u *model.User) error {
@ -279,7 +283,7 @@ func BanUser(u *model.User) error {
func BanUserByID(userID string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("role", model.RoleBanned)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func UnbanUser(u *model.User) error {
@ -292,12 +296,12 @@ func UnbanUser(u *model.User) error {
func UnbanUserByID(userID string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("role", model.RoleUser)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func DeleteUserByID(userID string) error {
result := db.Unscoped().Select(clause.Associations).Delete(&model.User{ID: userID})
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func LoadAndDeleteUserByID(userID string, columns ...clause.Column) (*model.User, error) {
@ -307,12 +311,12 @@ func LoadAndDeleteUserByID(userID string, columns ...clause.Column) (*model.User
Select(clause.Associations).
Where("id = ?", userID).
Delete(&user)
return &user, HandleNotFound(result.Error, "user")
return &user, HandleUpdateResult(result, ErrUserNotFound)
}
func SaveUser(u *model.User) error {
result := db.Omit("created_at").Save(u)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func AddAdmin(u *model.User) error {
@ -342,12 +346,12 @@ func GetAdmins() ([]*model.User, error) {
func AddAdminByID(userID string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("role", model.RoleAdmin)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func RemoveAdminByID(userID string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("role", model.RoleUser)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func AddRoot(u *model.User) error {
@ -368,12 +372,12 @@ func RemoveRoot(u *model.User) error {
func AddRootByID(userID string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("role", model.RoleRoot)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func RemoveRootByID(userID string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("role", model.RoleUser)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func GetRoots() []*model.User {
@ -384,22 +388,22 @@ func GetRoots() []*model.User {
func SetAdminRoleByID(userID string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("role", model.RoleAdmin)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func SetRootRoleByID(userID string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("role", model.RoleRoot)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func SetUserRoleByID(userID string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("role", model.RoleUser)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func SetUsernameByID(userID string, username string) error {
result := db.Model(&model.User{}).Where("id = ?", userID).Update("username", username)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}
func GetUserCount(scopes ...func(*gorm.DB) *gorm.DB) (int64, error) {
@ -422,5 +426,5 @@ func GetUsers(scopes ...func(*gorm.DB) *gorm.DB) ([]*model.User, error) {
func SetUserHashedPassword(id string, hashedPassword []byte) error {
result := db.Model(&model.User{}).Where("id = ?", id).Update("hashed_password", hashedPassword)
return HandleUpdateResult(result, "user")
return HandleUpdateResult(result, ErrUserNotFound)
}

@ -7,10 +7,14 @@ import (
"gorm.io/gorm"
)
const (
ErrVendorNotFound = "vendor"
)
func GetBilibiliVendor(userID string) (*model.BilibiliVendor, error) {
var vendor model.BilibiliVendor
err := db.Where("user_id = ?", userID).First(&vendor).Error
return &vendor, HandleNotFound(err, "vendor")
return &vendor, HandleNotFound(err, ErrVendorNotFound)
}
func CreateOrSaveBilibiliVendor(vendorInfo *model.BilibiliVendor) (*model.BilibiliVendor, error) {
@ -24,14 +28,14 @@ func CreateOrSaveBilibiliVendor(vendorInfo *model.BilibiliVendor) (*model.Bilibi
return tx.Create(&vendorInfo).Error
} else {
result := tx.Omit("created_at").Save(&vendorInfo)
return HandleUpdateResult(result, "vendor")
return HandleUpdateResult(result, ErrVendorNotFound)
}
})
}
func DeleteBilibiliVendor(userID string) error {
result := db.Where("user_id = ?", userID).Delete(&model.BilibiliVendor{})
return HandleUpdateResult(result, "vendor")
return HandleUpdateResult(result, ErrVendorNotFound)
}
func GetAlistVendors(userID string, scopes ...func(*gorm.DB) *gorm.DB) ([]*model.AlistVendor, error) {
@ -49,7 +53,7 @@ func GetAlistVendorsCount(userID string, scopes ...func(*gorm.DB) *gorm.DB) (int
func GetAlistVendor(userID, serverID string) (*model.AlistVendor, error) {
var vendor model.AlistVendor
err := db.Where("user_id = ? AND server_id = ?", userID, serverID).First(&vendor).Error
return &vendor, HandleNotFound(err, "vendor")
return &vendor, HandleNotFound(err, ErrVendorNotFound)
}
func CreateOrSaveAlistVendor(vendorInfo *model.AlistVendor) (*model.AlistVendor, error) {
@ -64,14 +68,14 @@ func CreateOrSaveAlistVendor(vendorInfo *model.AlistVendor) (*model.AlistVendor,
return tx.Create(&vendorInfo).Error
} else {
result := tx.Omit("created_at").Save(&vendorInfo)
return HandleUpdateResult(result, "vendor")
return HandleUpdateResult(result, ErrVendorNotFound)
}
})
}
func DeleteAlistVendor(userID, serverID string) error {
result := db.Where("user_id = ? AND server_id = ?", userID, serverID).Delete(&model.AlistVendor{})
return HandleUpdateResult(result, "vendor")
return HandleUpdateResult(result, ErrVendorNotFound)
}
func GetEmbyVendors(userID string, scopes ...func(*gorm.DB) *gorm.DB) ([]*model.EmbyVendor, error) {
@ -89,13 +93,13 @@ func GetEmbyVendorsCount(userID string, scopes ...func(*gorm.DB) *gorm.DB) (int6
func GetEmbyVendor(userID, serverID string) (*model.EmbyVendor, error) {
var vendor model.EmbyVendor
err := db.Where("user_id = ? AND server_id = ?", userID, serverID).First(&vendor).Error
return &vendor, HandleNotFound(err, "vendor")
return &vendor, HandleNotFound(err, ErrVendorNotFound)
}
func GetEmbyFirstVendor(userID string) (*model.EmbyVendor, error) {
var vendor model.EmbyVendor
err := db.Where("user_id = ?", userID).First(&vendor).Error
return &vendor, HandleNotFound(err, "vendor")
return &vendor, HandleNotFound(err, ErrVendorNotFound)
}
func CreateOrSaveEmbyVendor(vendorInfo *model.EmbyVendor) (*model.EmbyVendor, error) {
@ -110,12 +114,12 @@ func CreateOrSaveEmbyVendor(vendorInfo *model.EmbyVendor) (*model.EmbyVendor, er
return tx.Create(&vendorInfo).Error
} else {
result := tx.Omit("created_at").Save(&vendorInfo)
return HandleUpdateResult(result, "vendor")
return HandleUpdateResult(result, ErrVendorNotFound)
}
})
}
func DeleteEmbyVendor(userID, serverID string) error {
result := db.Where("user_id = ? AND server_id = ?", userID, serverID).Delete(&model.EmbyVendor{})
return HandleUpdateResult(result, "vendor")
return HandleUpdateResult(result, ErrVendorNotFound)
}

@ -192,7 +192,7 @@ func (r *Room) LoadMemberStatus(userID string) (model.RoomMemberStatus, error) {
}
rur, err := r.LoadMember(userID)
if err != nil {
if errors.Is(err, db.ErrNotFound("room or user")) {
if errors.Is(err, db.ErrNotFound(db.ErrRoomMemberNotFound)) {
return model.RoomMemberStatusNotJoined, nil
}
return model.RoomMemberStatusNotJoined, err

@ -392,7 +392,7 @@ func LoginRoom(ctx *gin.Context) {
member, err := room.LoadOrCreateMember(user.ID)
if err != nil {
if errors.Is(err, db.ErrNotFound("")) {
if errors.Is(err, db.ErrNotFound(db.ErrRoomMemberNotFound)) {
log.Warn("login room failed: room was disabled join new user")
ctx.AbortWithStatusJSON(
http.StatusForbidden,

@ -61,7 +61,7 @@ func LoginUser(ctx *gin.Context) {
if err != nil {
log.Errorf("failed to load user: %v", err)
if errors.Is(err, db.ErrNotFound("user")) {
if errors.Is(err, db.ErrNotFound(db.ErrUserNotFound)) {
ctx.AbortWithStatusJSON(http.StatusNotFound, model.NewApiErrorResp(err))
return
}

@ -65,7 +65,7 @@ func (s *alistVendorService) ListDynamicMovie(ctx context.Context, reqUser *op.U
truePath = newPath
aucd, err := user.AlistCache().LoadOrStore(ctx, serverID)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
return nil, errors.New("alist server not found")
}
return nil, err

@ -72,7 +72,7 @@ func List(ctx *gin.Context) {
ev, err := db.GetAlistVendors(user.ID, append(socpes, db.Paginate(page, size))...)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.JSON(http.StatusBadRequest, model.NewApiErrorStringResp("alist server not found"))
return
}
@ -125,7 +125,7 @@ AlistFSListResp:
aucd, err := user.AlistCache().LoadOrStore(ctx, serverID)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.JSON(http.StatusBadRequest, model.NewApiErrorStringResp("alist server not found"))
return
}

@ -26,7 +26,7 @@ func Me(ctx *gin.Context) {
aucd, err := user.AlistCache().LoadOrStore(ctx, serverID)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.JSON(http.StatusBadRequest, model.NewApiErrorStringResp("alist server not found"))
return
}
@ -59,7 +59,7 @@ func Binds(ctx *gin.Context) {
ev, err := db.GetAlistVendors(user.ID)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.JSON(http.StatusOK, model.NewApiDataResp(&AlistMeResp{
IsLogin: false,
}))

@ -20,7 +20,7 @@ func Me(ctx *gin.Context) {
bucd, err := user.BilibiliCache().Get(ctx)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.JSON(http.StatusOK, model.NewApiDataResp(&BilibiliMeResp{
IsLogin: false,
}))

@ -54,7 +54,7 @@ func Parse(ctx *gin.Context) {
var cookies []*http.Cookie
bucd, err := user.BilibiliCache().Get(ctx)
if err != nil {
if !errors.Is(err, db.ErrNotFound("vendor")) {
if !errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.AbortWithStatusJSON(http.StatusInternalServerError, model.NewApiErrorResp(err))
return
}

@ -60,7 +60,7 @@ func (s *embyVendorService) ListDynamicMovie(ctx context.Context, reqUser *op.Us
}
aucd, err := user.EmbyCache().LoadOrStore(ctx, serverID)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
return nil, errors.New("emby server not found")
}
return nil, err

@ -73,7 +73,7 @@ func List(ctx *gin.Context) {
ev, err := db.GetEmbyVendors(user.ID, append(socpes, db.Paginate(page, size))...)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.JSON(http.StatusBadRequest, model.NewApiErrorStringResp("emby server not found"))
return
}
@ -123,7 +123,7 @@ EmbyFSListResp:
aucd, err := user.EmbyCache().LoadOrStore(ctx, serverID)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.JSON(http.StatusBadRequest, model.NewApiErrorStringResp("emby server not found"))
return
}

@ -26,7 +26,7 @@ func Me(ctx *gin.Context) {
eucd, err := user.EmbyCache().LoadOrStore(ctx, serverID)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.JSON(http.StatusBadRequest, model.NewApiErrorStringResp("emby server not found"))
return
}
@ -59,7 +59,7 @@ func Binds(ctx *gin.Context) {
ev, err := db.GetEmbyVendors(user.ID)
if err != nil {
if errors.Is(err, db.ErrNotFound("vendor")) {
if errors.Is(err, db.ErrNotFound(db.ErrVendorNotFound)) {
ctx.JSON(http.StatusOK, model.NewApiDataResp(&EmbyMeResp{
IsLogin: false,
}))

Loading…
Cancel
Save