feat: 配额优化

This commit is contained in:
2026-02-25 21:30:24 +08:00
parent 2e93211697
commit 79a5c1f3ed
29 changed files with 1225 additions and 489 deletions

View File

@@ -0,0 +1,61 @@
/**
* AI模型配置 API 服务
* 用于获取模型积分消耗配置
*/
import http from './http'
const BASE_URL = '/webApi/api/tik/ai-model-config'
/**
* 模型配置 API 服务
*/
export const ModelConfigService = {
/**
* 获取所有启用的模型配置列表(按平台分组)
* @returns {Promise<Object>} 按平台分组的模型配置
* 格式: { platform: [{ modelCode, modelName, consumePoints }] }
*/
async getEnabledModelConfigList() {
const { data } = await http.get(`${BASE_URL}/list-enabled`)
return data || {}
},
/**
* 根据模型代码获取积分消耗
* @param {Object} configMap - 配置映射(从 getEnabledModelConfigList 获取)
* @param {string} modelCode - 模型代码
* @returns {number|null} 积分消耗,未找到返回 null
*/
getConsumePoints(configMap, modelCode) {
if (!configMap || !modelCode) return null
for (const platform of Object.values(configMap)) {
const model = platform?.find(m => m.modelCode === modelCode)
if (model) {
return model.consumePoints
}
}
return null
},
/**
* 根据模型代码获取模型名称
* @param {Object} configMap - 配置映射
* @param {string} modelCode - 模型代码
* @returns {string|null} 模型名称,未找到返回 null
*/
getModelName(configMap, modelCode) {
if (!configMap || !modelCode) return null
for (const platform of Object.values(configMap)) {
const model = platform?.find(m => m.modelCode === modelCode)
if (model) {
return model.modelName
}
}
return null
}
}
export default ModelConfigService