mirror of
https://gitee.com/ccnetcore/Yi
synced 2026-03-03 00:00:58 +08:00
101 lines
2.8 KiB
TypeScript
101 lines
2.8 KiB
TypeScript
import { del, get, post, put } from '@/utils/request';
|
|
import type {
|
|
AiAppDto,
|
|
AiAppCreateInput,
|
|
AiAppUpdateInput,
|
|
AiAppGetListInput,
|
|
AiModelDto,
|
|
AiModelCreateInput,
|
|
AiModelUpdateInput,
|
|
AiModelGetListInput,
|
|
PagedResultDto,
|
|
} from './types';
|
|
|
|
// ==================== AI应用管理 ====================
|
|
|
|
// 获取AI应用列表
|
|
export function getAppList(params?: AiAppGetListInput) {
|
|
const queryParams = new URLSearchParams();
|
|
if (params?.searchKey) {
|
|
queryParams.append('SearchKey', params.searchKey);
|
|
}
|
|
if (params?.skipCount !== undefined) {
|
|
queryParams.append('SkipCount', params.skipCount.toString());
|
|
}
|
|
if (params?.maxResultCount !== undefined) {
|
|
queryParams.append('MaxResultCount', params.maxResultCount.toString());
|
|
}
|
|
|
|
const queryString = queryParams.toString();
|
|
const url = queryString ? `/channel/app?${queryString}` : '/channel/app';
|
|
|
|
return get<PagedResultDto<AiAppDto>>(url).json();
|
|
}
|
|
|
|
// 根据ID获取AI应用
|
|
export function getAppById(id: string) {
|
|
return get<AiAppDto>(`/channel/app/${id}`).json();
|
|
}
|
|
|
|
// 创建AI应用
|
|
export function createApp(data: AiAppCreateInput) {
|
|
return post<AiAppDto>('/channel/app', data).json();
|
|
}
|
|
|
|
// 更新AI应用
|
|
export function updateApp(data: AiAppUpdateInput) {
|
|
return put<AiAppDto>('/channel/app', data).json();
|
|
}
|
|
|
|
// 删除AI应用
|
|
export function deleteApp(id: string) {
|
|
return del(`/channel/app/${id}`).json();
|
|
}
|
|
|
|
// ==================== AI模型管理 ====================
|
|
|
|
// 获取AI模型列表
|
|
export function getModelList(params?: AiModelGetListInput) {
|
|
const queryParams = new URLSearchParams();
|
|
if (params?.searchKey) {
|
|
queryParams.append('SearchKey', params.searchKey);
|
|
}
|
|
if (params?.aiAppId) {
|
|
queryParams.append('AiAppId', params.aiAppId);
|
|
}
|
|
if (params?.isPremiumOnly !== undefined) {
|
|
queryParams.append('IsPremiumOnly', params.isPremiumOnly.toString());
|
|
}
|
|
if (params?.skipCount !== undefined) {
|
|
queryParams.append('SkipCount', params.skipCount.toString());
|
|
}
|
|
if (params?.maxResultCount !== undefined) {
|
|
queryParams.append('MaxResultCount', params.maxResultCount.toString());
|
|
}
|
|
|
|
const queryString = queryParams.toString();
|
|
const url = queryString ? `/channel/model?${queryString}` : '/channel/model';
|
|
|
|
return get<PagedResultDto<AiModelDto>>(url).json();
|
|
}
|
|
|
|
// 根据ID获取AI模型
|
|
export function getModelById(id: string) {
|
|
return get<AiModelDto>(`/channel/model/${id}`).json();
|
|
}
|
|
|
|
// 创建AI模型
|
|
export function createModel(data: AiModelCreateInput) {
|
|
return post<AiModelDto>('/channel/model', data).json();
|
|
}
|
|
|
|
// 更新AI模型
|
|
export function updateModel(data: AiModelUpdateInput) {
|
|
return put<AiModelDto>('/channel/model', data).json();
|
|
}
|
|
|
|
// 删除AI模型
|
|
export function deleteModel(id: string) {
|
|
return del(`/channel/model/${id}`).json();
|
|
}
|