添加模型tokens使用量返回
This commit is contained in:
parent
b471b32405
commit
eb4c0f9404
20
dao/model.go
20
dao/model.go
|
|
@ -31,6 +31,11 @@ type ModelToken struct {
|
||||||
Token uint `gorm:"column:token"` //模型使用token
|
Token uint `gorm:"column:token"` //模型使用token
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ModelResponse struct {
|
||||||
|
Model
|
||||||
|
Token uint `json:"token"`
|
||||||
|
}
|
||||||
|
|
||||||
// 创建模型
|
// 创建模型
|
||||||
func CreateModel(userID uint, modelType, url, parameter, description string) (error, uint) {
|
func CreateModel(userID uint, modelType, url, parameter, description string) (error, uint) {
|
||||||
model := Model{UserID: userID, Type: modelType, Url: url, Parameter: parameter, Description: description}
|
model := Model{UserID: userID, Type: modelType, Url: url, Parameter: parameter, Description: description}
|
||||||
|
|
@ -211,3 +216,18 @@ func FindModelTotalTokensBySessionID(userID int) []ModelTokensSession {
|
||||||
}
|
}
|
||||||
return modelTokens
|
return modelTokens
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ModelTokensModel struct {
|
||||||
|
ModelID uint `gorm:"column:model_id"`
|
||||||
|
Token uint `gorm:"column:token"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func FindModelTotalTokensByModelID(userID int) []ModelTokensModel {
|
||||||
|
var modelTokens []ModelTokensModel
|
||||||
|
if proto.Config.SERVER_SQL_LOG {
|
||||||
|
DB.Debug().Table("model_tokens").Select("model_id, count(*) as token").Where("user_id = ?", userID).Group("model_id").Scan(&modelTokens)
|
||||||
|
} else {
|
||||||
|
DB.Table("model_tokens").Select("model_id, count(*) as token").Where("user_id = ?", userID).Group("model_id").Scan(&modelTokens)
|
||||||
|
}
|
||||||
|
return modelTokens
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -19,13 +19,39 @@ func CreateModel(userID uint, modelType, url, parameter, description string) (er
|
||||||
}
|
}
|
||||||
|
|
||||||
// 根据id查找模型
|
// 根据id查找模型
|
||||||
func FindModelByID(id, userID int) []dao.Model {
|
func FindModelByID(id, userID int) []dao.ModelResponse {
|
||||||
return dao.FindModelByID(id, userID)
|
models := dao.FindModelByID(id, userID)
|
||||||
|
modelTokens := dao.FindModelTotalTokensByModelID(id)
|
||||||
|
var res []dao.ModelResponse
|
||||||
|
mt := make(map[uint]uint)
|
||||||
|
for _, v := range modelTokens {
|
||||||
|
mt[v.ModelID] = v.Token
|
||||||
|
}
|
||||||
|
for _, v := range models {
|
||||||
|
var model dao.ModelResponse
|
||||||
|
model.Model = v
|
||||||
|
model.Token = mt[v.ID]
|
||||||
|
res = append(res, model)
|
||||||
|
}
|
||||||
|
return res
|
||||||
}
|
}
|
||||||
|
|
||||||
// 根据用户id查找模型
|
// 根据用户id查找模型
|
||||||
func FindModelByUserID(userID int) []dao.Model {
|
func FindModelByUserID(userID int) []dao.ModelResponse {
|
||||||
return dao.FindModelByUserID(userID)
|
models := dao.FindModelByUserID(userID)
|
||||||
|
modelTokens := dao.FindModelTotalTokensByModelID(userID)
|
||||||
|
var res []dao.ModelResponse
|
||||||
|
mt := make(map[uint]uint)
|
||||||
|
for _, v := range modelTokens {
|
||||||
|
mt[v.ModelID] = v.Token
|
||||||
|
}
|
||||||
|
for _, v := range models {
|
||||||
|
var model dao.ModelResponse
|
||||||
|
model.Model = v
|
||||||
|
model.Token = mt[v.ID]
|
||||||
|
res = append(res, model)
|
||||||
|
}
|
||||||
|
return res
|
||||||
}
|
}
|
||||||
|
|
||||||
// 根据id删除模型
|
// 根据id删除模型
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue