feat: 大量优化和bug修复

This commit is contained in:
2026-05-23 22:23:29 +08:00
parent 92b063c4c4
commit fc71e924e7
39 changed files with 1381 additions and 302 deletions
+1 -17
View File
@@ -2,12 +2,10 @@
import type {
IApiResponse,
IClearCacheResponse,
IHealthResponse,
IRecordsRequest,
IRecordsResponse,
ISearchRequest,
ISearchResponse,
IStatsResponse
ISearchResponse
} from "@/interfaces";
import BaseClientService from "@/services/base_service";
@@ -26,20 +24,6 @@ export class AnswerService {
);
}
/** 读取健康状态;无需 token */
public static getHealth() {
return BaseClientService.get<IApiResponse<IHealthResponse>>(
`${AnswerService.basePath}/health`
);
}
/** 读取运行统计(需登录) */
public static getStats() {
return BaseClientService.get<IApiResponse<IStatsResponse>>(
`${AnswerService.basePath}/stats`
);
}
/** 读取最近问答记录,供 Dashboard 表格展示 */
public static getRecords(request: IRecordsRequest) {
return BaseClientService.get<IRecordsResponse>(
+13
View File
@@ -46,4 +46,17 @@ export default class BaseClientService {
return { data };
}
/** 发起 PUT 请求 */
public static async put<T, B extends object | undefined = undefined>(
url: string,
body?: B
) {
const data = await $fetch<T>(url, {
method: "PUT",
body
});
return { data };
}
}
+1
View File
@@ -1,2 +1,3 @@
// app/services/index.ts - 前端 service 统一出口
export * from "./answer_service";
export * from "./settings_service";
+43
View File
@@ -0,0 +1,43 @@
// app/services/settings_service.ts - 用户设置和系统配置 API 封装
import type {
IApiResponse,
ISystemConfigResponse,
ISystemConfigUpdateRequest,
IUserSettingsResponse,
IUserSettingsUpdateRequest
} from "@/interfaces";
import BaseClientService from "@/services/base_service";
export class SettingsService {
private static readonly basePath = "/api";
/** 读取当前用户的自定义 API 配置 */
public static getUserSettings() {
return BaseClientService.get<IUserSettingsResponse>(
`${SettingsService.basePath}/user/settings`
);
}
/** 更新当前用户的自定义 API 配置 */
public static updateUserSettings(req: IUserSettingsUpdateRequest) {
return BaseClientService.post<IApiResponse<null>, IUserSettingsUpdateRequest>(
`${SettingsService.basePath}/user/settings`,
req
);
}
/** 读取系统配置(仅 superadmin */
public static getSystemConfig() {
return BaseClientService.get<ISystemConfigResponse>(
`${SettingsService.basePath}/admin/system-config`
);
}
/** 更新系统配置(仅 superadmin */
public static updateSystemConfig(req: ISystemConfigUpdateRequest) {
return BaseClientService.put<IApiResponse<null>, ISystemConfigUpdateRequest>(
`${SettingsService.basePath}/admin/system-config`,
req
);
}
}