This commit is contained in:
root 2025-07-11 10:41:12 +08:00
parent b509cc2bb2
commit fd884a5380
2 changed files with 43 additions and 5 deletions

View File

@ -79,12 +79,21 @@ const ModelManagePage: React.FC = () => {
}
const handleDeleteModel = async (modelId: string) => {
console.log('handleDeleteModel called with:', modelId)
const isOk = confirm('确定要删除这个模特吗?')
if (!isOk) return
console.log('User confirmed deletion:', isOk)
if (!isOk) {
console.log('User cancelled deletion, returning early')
return
}
try {
console.log('Calling ModelService.deleteModel...')
const response = await ModelService.deleteModel(modelId)
console.log('Delete response:', response)
if (response.status) {
console.log('Delete successful, updating models list')
setModels(models.filter(model => model.id !== modelId))
} else {
console.error('删除失败:', response.msg || '未知错误')

View File

@ -33,7 +33,12 @@ export class ModelService {
if (typeof result === 'string') {
try {
const parsed = JSON.parse(result)
return parsed.result || parsed
// 如果是JSON-RPC响应提取result字段
if (parsed.jsonrpc && 'result' in parsed) {
return parsed.result
}
// 如果是普通JSON响应直接返回
return parsed
} catch (error) {
console.error('Failed to parse JSON:', error)
return result
@ -47,7 +52,15 @@ export class ModelService {
static async getAllModels(): Promise<ApiResponse<Model[]>> {
try {
const result = await invoke('get_all_models')
return { status: true, msg: 'ok', data: this.tryJsonParse(result) } as ApiResponse<Model[]>
const parsed = this.tryJsonParse(result)
// 检查后端返回的实际状态
if (parsed && typeof parsed === 'object' && 'status' in parsed) {
return parsed as ApiResponse<Model[]>
}
// 如果没有状态信息,假设成功并包装数据
return { status: true, msg: 'ok', data: parsed } as ApiResponse<Model[]>
} catch (error) {
console.error('Failed to get all models:', error)
return {
@ -79,7 +92,15 @@ export class ModelService {
static async createModel(request: CreateModelRequest): Promise<ApiResponse<Model>> {
try {
const result = await invoke('create_model', { request })
return { status: true, msg: 'ok', data: this.tryJsonParse(result) } as ApiResponse<Model>
const parsed = this.tryJsonParse(result)
// 检查后端返回的实际状态
if (parsed && typeof parsed === 'object' && 'status' in parsed) {
return parsed as ApiResponse<Model>
}
// 如果没有状态信息,假设成功
return { status: true, msg: 'ok', data: parsed } as ApiResponse<Model>
} catch (error) {
console.error('Failed to create model:', error)
return {
@ -114,7 +135,15 @@ export class ModelService {
static async deleteModel(modelId: string): Promise<ApiResponse<boolean>> {
try {
const result = await invoke('delete_model', { modelId })
return { status: true, msg: 'ok', data: this.tryJsonParse(result) } as ApiResponse<boolean>
const parsed = this.tryJsonParse(result)
// 检查后端返回的实际状态
if (parsed && typeof parsed === 'object' && 'status' in parsed) {
return parsed as ApiResponse<boolean>
}
// 如果没有状态信息,假设成功
return { status: true, msg: 'ok', data: parsed } as ApiResponse<boolean>
} catch (error) {
console.error('Failed to delete model:', error)
return {