feat: 大量优化和bug修复
This commit is contained in:
@@ -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>(
|
||||
|
||||
@@ -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,2 +1,3 @@
|
||||
// app/services/index.ts - 前端 service 统一出口
|
||||
export * from "./answer_service";
|
||||
export * from "./settings_service";
|
||||
|
||||
@@ -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
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user