Files
novalon-manage-system/novalon-manage-web/src/api/config.ts
T
张翔 01ddf0a5f6 feat(react19-migration): 阶段2 - 核心框架层迁移
- T2.1: request.ts 确认无 Vue 依赖,无需修改
- T2.5: errorHandler.ts ElMessage → antd message
- T2.7: 新增 API (menu/config/dict/file/notice/loginLog) + 类型定义 (menu/permission/user)
- 清理旧 Vue 测试文件、views、stores、router、directives
- 修复 tsconfig: 添加 module:ESNext + types:vite/client

验证: npx tsc --noEmit 无类型错误
2026-05-06 19:43:39 +08:00

61 lines
1.3 KiB
TypeScript

import request from '@/utils/request'
import type { PageResponse } from './user.api'
export interface ConfigItem {
id: number
configName: string
configKey: string
configValue: string
configType: string
remark: string
createdAt: string
updatedAt: string
}
export interface CreateConfigRequest {
configName: string
configKey: string
configValue: string
configType?: string
remark?: string
}
export interface UpdateConfigRequest {
configName?: string
configKey?: string
configValue?: string
configType?: string
remark?: string
}
export interface ConfigPageRequest {
page: number
size: number
configName?: string
configKey?: string
configType?: string
}
export const configApi = {
getAll: () =>
request.get<ConfigItem[]>('/sys/config'),
getPage: (params: ConfigPageRequest) =>
request.get<PageResponse<ConfigItem>>('/sys/config/page', { params }),
getById: (id: number) =>
request.get<ConfigItem>(`/sys/config/${id}`),
getByKey: (configKey: string) =>
request.get<ConfigItem>(`/sys/config/key/${configKey}`),
create: (data: CreateConfigRequest) =>
request.post<ConfigItem>('/sys/config', data),
update: (id: number, data: UpdateConfigRequest) =>
request.put<ConfigItem>(`/sys/config/${id}`, data),
delete: (id: number) =>
request.delete<void>(`/sys/config/${id}`),
}