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>( 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>( 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>( 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>( 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>>( 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>>( 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>>( 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)); }