fix: try to fix pgsql #682
This commit is contained in:
@@ -23,10 +23,6 @@ type Ability struct {
|
|||||||
func GetGroupModels(group string) []string {
|
func GetGroupModels(group string) []string {
|
||||||
var models []string
|
var models []string
|
||||||
// Find distinct models
|
// Find distinct models
|
||||||
groupCol := "`group`"
|
|
||||||
if common.UsingPostgreSQL {
|
|
||||||
groupCol = `"group"`
|
|
||||||
}
|
|
||||||
DB.Table("abilities").Where(groupCol+" = ? and enabled = ?", group, true).Distinct("model").Pluck("model", &models)
|
DB.Table("abilities").Where(groupCol+" = ? and enabled = ?", group, true).Distinct("model").Pluck("model", &models)
|
||||||
return models
|
return models
|
||||||
}
|
}
|
||||||
@@ -45,10 +41,8 @@ func GetAllEnableAbilities() []Ability {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func getPriority(group string, model string, retry int) (int, error) {
|
func getPriority(group string, model string, retry int) (int, error) {
|
||||||
groupCol := "`group`"
|
|
||||||
trueVal := "1"
|
trueVal := "1"
|
||||||
if common.UsingPostgreSQL {
|
if common.UsingPostgreSQL {
|
||||||
groupCol = `"group"`
|
|
||||||
trueVal = "true"
|
trueVal = "true"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -81,10 +75,8 @@ func getPriority(group string, model string, retry int) (int, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func getChannelQuery(group string, model string, retry int) *gorm.DB {
|
func getChannelQuery(group string, model string, retry int) *gorm.DB {
|
||||||
groupCol := "`group`"
|
|
||||||
trueVal := "1"
|
trueVal := "1"
|
||||||
if common.UsingPostgreSQL {
|
if common.UsingPostgreSQL {
|
||||||
groupCol = `"group"`
|
|
||||||
trueVal = "true"
|
trueVal = "true"
|
||||||
}
|
}
|
||||||
maxPrioritySubQuery := DB.Model(&Ability{}).Select("MAX(priority)").Where(groupCol+" = ? and model = ? and enabled = "+trueVal, group, model)
|
maxPrioritySubQuery := DB.Model(&Ability{}).Select("MAX(priority)").Where(groupCol+" = ? and model = ? and enabled = "+trueVal, group, model)
|
||||||
|
|||||||
@@ -114,15 +114,11 @@ func GetChannelsByTag(tag string, idSort bool) ([]*Channel, error) {
|
|||||||
|
|
||||||
func SearchChannels(keyword string, group string, model string, idSort bool) ([]*Channel, error) {
|
func SearchChannels(keyword string, group string, model string, idSort bool) ([]*Channel, error) {
|
||||||
var channels []*Channel
|
var channels []*Channel
|
||||||
keyCol := "`key`"
|
|
||||||
groupCol := "`group`"
|
|
||||||
modelsCol := "`models`"
|
modelsCol := "`models`"
|
||||||
|
|
||||||
// 如果是 PostgreSQL,使用双引号
|
// 如果是 PostgreSQL,使用双引号
|
||||||
if common.UsingPostgreSQL {
|
if common.UsingPostgreSQL {
|
||||||
keyCol = `"key"`
|
keyCol = `"key"`
|
||||||
groupCol = `"group"`
|
|
||||||
modelsCol = `"models"`
|
|
||||||
}
|
}
|
||||||
|
|
||||||
order := "priority desc"
|
order := "priority desc"
|
||||||
@@ -437,14 +433,10 @@ func GetPaginatedTags(offset int, limit int) ([]*string, error) {
|
|||||||
|
|
||||||
func SearchTags(keyword string, group string, model string, idSort bool) ([]*string, error) {
|
func SearchTags(keyword string, group string, model string, idSort bool) ([]*string, error) {
|
||||||
var tags []*string
|
var tags []*string
|
||||||
keyCol := "`key`"
|
|
||||||
groupCol := "`group`"
|
|
||||||
modelsCol := "`models`"
|
modelsCol := "`models`"
|
||||||
|
|
||||||
// 如果是 PostgreSQL,使用双引号
|
// 如果是 PostgreSQL,使用双引号
|
||||||
if common.UsingPostgreSQL {
|
if common.UsingPostgreSQL {
|
||||||
keyCol = `"key"`
|
|
||||||
groupCol = `"group"`
|
|
||||||
modelsCol = `"models"`
|
modelsCol = `"models"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ func formatUserLogs(logs []*Log) {
|
|||||||
func GetLogByKey(key string) (logs []*Log, err error) {
|
func GetLogByKey(key string) (logs []*Log, err error) {
|
||||||
if os.Getenv("LOG_SQL_DSN") != "" {
|
if os.Getenv("LOG_SQL_DSN") != "" {
|
||||||
var tk Token
|
var tk Token
|
||||||
if err = DB.Model(&Token{}).Where("`key`=?", strings.TrimPrefix(key, "sk-")).First(&tk).Error; err != nil {
|
if err = DB.Model(&Token{}).Where(keyCol+"=?", strings.TrimPrefix(key, "sk-")).First(&tk).Error; err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
err = LOG_DB.Model(&Log{}).Where("token_id=?", tk.Id).Find(&logs).Error
|
err = LOG_DB.Model(&Log{}).Where("token_id=?", tk.Id).Find(&logs).Error
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ func SearchUserTokens(userId int, keyword string, token string) (tokens []*Token
|
|||||||
if token != "" {
|
if token != "" {
|
||||||
token = strings.Trim(token, "sk-")
|
token = strings.Trim(token, "sk-")
|
||||||
}
|
}
|
||||||
err = DB.Where("user_id = ?", userId).Where("name LIKE ?", "%"+keyword+"%").Where("`key` LIKE ?", "%"+token+"%").Find(&tokens).Error
|
err = DB.Where("user_id = ?", userId).Where("name LIKE ?", "%"+keyword+"%").Where(keyCol+" LIKE ?", "%"+token+"%").Find(&tokens).Error
|
||||||
return tokens, err
|
return tokens, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user