fix
This commit is contained in:
parent
b509cc2bb2
commit
fd884a5380
|
|
@ -79,12 +79,21 @@ const ModelManagePage: React.FC = () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const handleDeleteModel = async (modelId: string) => {
|
const handleDeleteModel = async (modelId: string) => {
|
||||||
|
console.log('handleDeleteModel called with:', modelId)
|
||||||
const isOk = confirm('确定要删除这个模特吗?')
|
const isOk = confirm('确定要删除这个模特吗?')
|
||||||
if (!isOk) return
|
console.log('User confirmed deletion:', isOk)
|
||||||
|
if (!isOk) {
|
||||||
|
console.log('User cancelled deletion, returning early')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
console.log('Calling ModelService.deleteModel...')
|
||||||
const response = await ModelService.deleteModel(modelId)
|
const response = await ModelService.deleteModel(modelId)
|
||||||
|
console.log('Delete response:', response)
|
||||||
|
|
||||||
if (response.status) {
|
if (response.status) {
|
||||||
|
console.log('Delete successful, updating models list')
|
||||||
setModels(models.filter(model => model.id !== modelId))
|
setModels(models.filter(model => model.id !== modelId))
|
||||||
} else {
|
} else {
|
||||||
console.error('删除失败:', response.msg || '未知错误')
|
console.error('删除失败:', response.msg || '未知错误')
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,12 @@ export class ModelService {
|
||||||
if (typeof result === 'string') {
|
if (typeof result === 'string') {
|
||||||
try {
|
try {
|
||||||
const parsed = JSON.parse(result)
|
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) {
|
} catch (error) {
|
||||||
console.error('Failed to parse JSON:', error)
|
console.error('Failed to parse JSON:', error)
|
||||||
return result
|
return result
|
||||||
|
|
@ -47,7 +52,15 @@ export class ModelService {
|
||||||
static async getAllModels(): Promise<ApiResponse<Model[]>> {
|
static async getAllModels(): Promise<ApiResponse<Model[]>> {
|
||||||
try {
|
try {
|
||||||
const result = await invoke('get_all_models')
|
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) {
|
} catch (error) {
|
||||||
console.error('Failed to get all models:', error)
|
console.error('Failed to get all models:', error)
|
||||||
return {
|
return {
|
||||||
|
|
@ -79,7 +92,15 @@ export class ModelService {
|
||||||
static async createModel(request: CreateModelRequest): Promise<ApiResponse<Model>> {
|
static async createModel(request: CreateModelRequest): Promise<ApiResponse<Model>> {
|
||||||
try {
|
try {
|
||||||
const result = await invoke('create_model', { request })
|
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) {
|
} catch (error) {
|
||||||
console.error('Failed to create model:', error)
|
console.error('Failed to create model:', error)
|
||||||
return {
|
return {
|
||||||
|
|
@ -114,7 +135,15 @@ export class ModelService {
|
||||||
static async deleteModel(modelId: string): Promise<ApiResponse<boolean>> {
|
static async deleteModel(modelId: string): Promise<ApiResponse<boolean>> {
|
||||||
try {
|
try {
|
||||||
const result = await invoke('delete_model', { modelId })
|
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) {
|
} catch (error) {
|
||||||
console.error('Failed to delete model:', error)
|
console.error('Failed to delete model:', error)
|
||||||
return {
|
return {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue