fix: 索引名称长度

This commit is contained in:
CaIon 2024-01-07 22:07:17 +08:00
parent bba6174745
commit 2a995a5da2

View File

@ -3,6 +3,7 @@ package model
import (
"fmt"
"one-api/common"
"sync"
"time"
)
@ -10,9 +11,9 @@ import (
type QuotaData struct {
Id int `json:"id"`
UserID int `json:"user_id" gorm:"index"`
Username string `json:"username" gorm:"index:index_quota_data_model_user_name,priority:2;default:''"`
ModelName string `json:"model_name" gorm:"index;index:index_quota_data_model_user_name,priority:1;default:''"`
CreatedAt int64 `json:"created_at" gorm:"bigint;index:index_quota_data_created_at,priority:2"`
Username string `json:"username" gorm:"index:idx_qdt_model_user_name,priority:2;default:''"`
ModelName string `json:"model_name" gorm:"index;index:idx_qdt_model_user_name,priority:1;default:''"`
CreatedAt int64 `json:"created_at" gorm:"bigint;index:idx_qdt_created_at,priority:2"`
Count int `json:"count" gorm:"default:0"`
Quota int `json:"quota" gorm:"default:0"`
}
@ -34,6 +35,7 @@ func UpdateQuotaData() {
}
var CacheQuotaData = make(map[string]*QuotaData)
var CacheQuotaDataLock = sync.Mutex{}
func LogQuotaDataCache(userId int, username string, modelName string, quota int, createdAt int64) {
// 只精确到小时
@ -57,10 +59,15 @@ func LogQuotaDataCache(userId int, username string, modelName string, quota int,
}
func LogQuotaData(userId int, username string, modelName string, quota int, createdAt int64) {
CacheQuotaDataLock.Lock()
defer CacheQuotaDataLock.Unlock()
LogQuotaDataCache(userId, username, modelName, quota, createdAt)
}
func SaveQuotaDataCache() {
CacheQuotaDataLock.Lock()
defer CacheQuotaDataLock.Unlock()
size := len(CacheQuotaData)
// 如果缓存中有数据,就保存到数据库中
// 1. 先查询数据库中是否有数据
// 2. 如果有数据,就更新数据
@ -78,6 +85,7 @@ func SaveQuotaDataCache() {
}
}
CacheQuotaData = make(map[string]*QuotaData)
common.SysLog(fmt.Sprintf("保存数据看板数据成功,共保存%d条数据", size))
}
func GetQuotaDataByUsername(username string, startTime int64, endTime int64) (quotaData []*QuotaData, err error) {