Backend • model/model_meta.go – Added `EnableGroups []string` to Model struct – fillModelExtra now populates EnableGroups • model/model_groups.go – New helper `GetModelEnableGroups` (reuses Pricing cache) • model/pricing_refresh.go – Added `RefreshPricing()` to force immediate cache rebuild • controller/model_meta.go – `GetAllModelsMeta` & `SearchModelsMeta` call `model.RefreshPricing()` before querying, ensuring groups / endpoints are up-to-date Frontend • ModelsColumnDefs.js – Added `renderGroups` util and “可用分组” table column displaying color-coded tags Result Admins can now see which user groups can access each model, and any ability/group changes are reflected instantly without the previous 1-minute delay.
15 lines
392 B
Go
15 lines
392 B
Go
package model
|
||
|
||
// RefreshPricing 强制立即重新计算与定价相关的缓存。
|
||
// 该方法用于需要最新数据的内部管理 API,
|
||
// 因此会绕过默认的 1 分钟延迟刷新。
|
||
func RefreshPricing() {
|
||
updatePricingLock.Lock()
|
||
defer updatePricingLock.Unlock()
|
||
|
||
modelSupportEndpointsLock.Lock()
|
||
defer modelSupportEndpointsLock.Unlock()
|
||
|
||
updatePricing()
|
||
}
|