feat; better pgsql
This commit is contained in:
parent
061f6774ba
commit
c034cebc79
@ -22,19 +22,14 @@ var (
|
|||||||
|
|
||||||
func CacheGetTokenByKey(key string) (*Token, error) {
|
func CacheGetTokenByKey(key string) (*Token, error) {
|
||||||
var token Token
|
var token Token
|
||||||
whereItem := "`key` = ?"
|
|
||||||
if common.UsingPostgreSQL {
|
|
||||||
// Make cmd compatible with PostgreSQL
|
|
||||||
whereItem = "\"key\" = ?"
|
|
||||||
}
|
|
||||||
|
|
||||||
if !common.RedisEnabled {
|
if !common.RedisEnabled {
|
||||||
err := DB.Where(whereItem, key).First(&token).Error
|
err := DB.Where(&Token{Key: key}).First(&token).Error
|
||||||
return &token, err
|
return &token, err
|
||||||
}
|
}
|
||||||
tokenObjectString, err := common.RedisGet(fmt.Sprintf("token:%s", key))
|
tokenObjectString, err := common.RedisGet(fmt.Sprintf("token:%s", key))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
err := DB.Where(whereItem, key).First(&token).Error
|
err := DB.Where(&Token{Key: key}).First(&token).Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -52,14 +52,7 @@ func Redeem(key string, userId int) (quota int, err error) {
|
|||||||
redemption := &Redemption{}
|
redemption := &Redemption{}
|
||||||
|
|
||||||
err = DB.Transaction(func(tx *gorm.DB) error {
|
err = DB.Transaction(func(tx *gorm.DB) error {
|
||||||
whereItem := "`key` = ?"
|
err := tx.Set("gorm:query_option", "FOR UPDATE").Where(&Redemption{Key: key}).First(redemption).Error
|
||||||
|
|
||||||
if common.UsingPostgreSQL {
|
|
||||||
// Make cmd compatible with PostgreSQL
|
|
||||||
whereItem = "\"key\" = ?"
|
|
||||||
}
|
|
||||||
|
|
||||||
err := tx.Set("gorm:query_option", "FOR UPDATE").Where(whereItem, key).First(redemption).Error
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return errors.New("无效的兑换码")
|
return errors.New("无效的兑换码")
|
||||||
}
|
}
|
||||||
|
@ -293,13 +293,7 @@ func GetUserEmail(id int) (email string, err error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func GetUserGroup(id int) (group string, err error) {
|
func GetUserGroup(id int) (group string, err error) {
|
||||||
selectItem := "`group`"
|
err = DB.Model(&User{}).Where(&User{Id: id}).Select("group").Find(&group).Error
|
||||||
|
|
||||||
if common.UsingPostgreSQL {
|
|
||||||
selectItem = "\"group\""
|
|
||||||
}
|
|
||||||
|
|
||||||
err = DB.Model(&User{}).Where("id = ?", id).Select(selectItem).Find(&group).Error
|
|
||||||
return group, err
|
return group, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user