108 lines
2.7 KiB
TypeScript
108 lines
2.7 KiB
TypeScript
import request from '@/utils/request';
|
|
import type { ApiResult, PageResult } from '@/api';
|
|
import type {
|
|
ApprovalCompletionForm,
|
|
ApprovalCoordinationForm,
|
|
ApprovalInstance,
|
|
ApprovalItem,
|
|
ApprovalMineParam,
|
|
ApprovalTaskListParam
|
|
} 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));
|
|
}
|
|
|
|
/**
|
|
* 新建或保存内部协调单草稿,返回实例id
|
|
*/
|
|
export async function saveCoordination(data: ApprovalCoordinationForm) {
|
|
const res = await request.post<ApiResult<number>>(
|
|
THINK_API_URL + '/approval/instance/coordination',
|
|
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));
|
|
}
|
|
|
|
/**
|
|
* 我的待办
|
|
*/
|
|
export async function pageTodo(params: ApprovalTaskListParam) {
|
|
const res = await request.get<ApiResult<PageResult<ApprovalItem>>>(
|
|
THINK_API_URL + '/approval/todo/page',
|
|
{ params }
|
|
);
|
|
if (res.data.code === 0 && res.data.data) {
|
|
return res.data.data;
|
|
}
|
|
return Promise.reject(new Error(res.data.message));
|
|
}
|
|
|
|
/**
|
|
* 我的已办
|
|
*/
|
|
export async function pageDone(params: ApprovalTaskListParam) {
|
|
const res = await request.get<ApiResult<PageResult<ApprovalItem>>>(
|
|
THINK_API_URL + '/approval/done/page',
|
|
{ params }
|
|
);
|
|
if (res.data.code === 0 && res.data.data) {
|
|
return res.data.data;
|
|
}
|
|
return Promise.reject(new Error(res.data.message));
|
|
}
|