Files
aiops/frontend/src/api/system/approval.ts
T
Logan.Li d19a03d427 refactor(frontend): services/api 迁至 src/api,http 迁至 utils/request
对齐 Vue 后台惯例:
- src/api/          域 API(原 services/api)
- src/utils/request.ts  HTTP 封装(原 services/http.ts)
- src/utils/export.ts  客户端导出工具
- src/utils/index.ts   工具统一出口

全局导入改为 @/api 与 @/utils/request,tsc + build 通过。
2026-06-26 00:09:07 +08:00

28 lines
1.8 KiB
TypeScript

// 审批流程 API // Logan.Li
import { http } from '@/utils/request';
export const approvalWorkflowApi = {
list: async (params?: { category?: string }) => http.get('/approval-workflows', params),
get: async (id: number | string) => http.get(`/approval-workflows/${id}`),
create: async (data: Record<string, unknown>) => http.post('/approval-workflows', data),
update: async (id: number | string, data: Record<string, unknown>) => http.put(`/approval-workflows/${id}`, data),
delete: async (id: number | string) => http.delete(`/approval-workflows/${id}`),
setDefault: async (id: number | string) => http.put(`/approval-workflows/${id}/default`),
getSteps: async (id: number | string) => http.get(`/approval-workflows/${id}/steps`),
};
export const approvalApi = {
getTemplates: async (params?: { type?: string; category?: string }) => http.get('/approvals/templates', params),
getTemplate: async (id: number | string) => http.get(`/approvals/templates/${id}`),
createTemplate: async (data: Record<string, unknown>) => http.post('/approvals/templates', data),
updateTemplate: async (id: number | string, data: Record<string, unknown>) => http.put(`/approvals/templates/${id}`, data),
deleteTemplate: async (id: number | string) => http.delete(`/approvals/templates/${id}`),
getProcesses: async (params?: { page?: number; page_size?: number; status?: string; category?: string }) =>
http.get('/approvals/processes', params),
createProcess: async (data: Record<string, unknown>) => http.post('/approvals/processes', data),
approveProcess: async (id: number | string, comment?: string) =>
http.post(`/approvals/processes/${id}/approve`, { comment }),
rejectProcess: async (id: number | string, comment?: string) =>
http.post(`/approvals/processes/${id}/reject`, { comment }),
};