feat(approval): 员工端审批中心入口与业务完成确认单页面 (#19)

This commit is contained in:
2026-10-30 20:20:34 +08:00
parent ae8bcb1e57
commit 370091ed6e
9 changed files with 1794 additions and 2 deletions
+63
View File
@@ -0,0 +1,63 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type {
ApprovalCompletionForm,
ApprovalInstance,
ApprovalItem,
ApprovalMineParam
} from '../model';
import { THINK_API_URL } from '@/config/setting';
/**
* 新建或保存业务完成确认单草稿,返回实例id
*/
export async function saveCompletion(data: ApprovalCompletionForm) {
const res = await request.post<ApiResult<number>>(
THINK_API_URL + '/approval/instance/completion',
data
);
if (res.data.code === 0) {
return res.data.data as number;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 提交或重提
*/
export async function submitInstance(id: number) {
const res = await request.post<ApiResult<ApprovalInstance>>(
THINK_API_URL + '/approval/instance/' + id + '/submit'
);
if (res.data.code === 0) {
return res.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 单据详情
*/
export async function getInstance(id: number) {
const res = await request.get<ApiResult<ApprovalInstance>>(
THINK_API_URL + '/approval/instance/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 我发起的
*/
export async function pageMine(params: ApprovalMineParam) {
const res = await request.get<ApiResult<PageResult<ApprovalItem>>>(
THINK_API_URL + '/approval/mine/page',
{ params }
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}