You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

114 lines
2.9 KiB

import request from '@/utils/request';
import { ProcessDefinitionQuery, ProcessDefinitionVO, definitionXmlVO } from '@/api/workflow/processDefinition/types';
import { AxiosPromise } from 'axios';
/**
* 获取流程定义列表
* @param query 流程实例id
* @returns
*/
export const listProcessDefinition = (query: ProcessDefinitionQuery): AxiosPromise<ProcessDefinitionVO[]> => {
return request({
url: `/workflow/processDefinition/list`,
method: 'get',
params: query
});
};
/**
* 按照流程定义key获取流程定义
* @param processInstanceId 流程实例id
* @returns
*/
export const getListByKey = (key: string) => {
return request({
url: `/workflow/processDefinition/getListByKey/${key}`,
method: 'get'
});
};
/**
* 通过流程定义id获取流程图
*/
export const definitionImage = (processDefinitionId: string): AxiosPromise<any> => {
return request({
url: `/workflow/processDefinition/definitionImage/${processDefinitionId}` + '?t' + Math.random(),
method: 'get'
});
};
/**
* 通过流程定义id获取xml
* @param processDefinitionId 流程定义id
* @returns
*/
export const definitionXml = (processDefinitionId: string): AxiosPromise<definitionXmlVO> => {
return request({
url: `/workflow/processDefinition/definitionXml/${processDefinitionId}`,
method: 'get'
});
};
/**
* 删除流程定义
* @param deploymentId 部署id
* @param processDefinitionId 流程定义id
* @returns
*/
export const deleteProcessDefinition = (deploymentId: string | string[], processDefinitionId: string | string[]) => {
return request({
url: `/workflow/processDefinition/${deploymentId}/${processDefinitionId}`,
method: 'delete'
});
};
/**
* 挂起/激活
* @param processDefinitionId 流程定义id
* @returns
*/
export const updateDefinitionState = (processDefinitionId: string) => {
return request({
url: `/workflow/processDefinition/updateDefinitionState/${processDefinitionId}`,
method: 'put'
});
};
/**
* 流程定义转换为模型
* @param processDefinitionId 流程定义id
* @returns
*/
export const convertToModel = (processDefinitionId: string) => {
return request({
url: `/workflow/processDefinition/convertToModel/${processDefinitionId}`,
method: 'put'
});
};
/**
* 通过zip或xml部署流程定义
* @returns
*/
export function deployProcessFile(data: any) {
return request({
url: '/workflow/processDefinition/deployByFile',
method: 'post',
data: data,
headers: {
repeatSubmit: false
}
});
}
/**
* 迁移流程
* @param currentProcessDefinitionId
* @param fromProcessDefinitionId
* @returns
*/
export const migrationDefinition = (currentProcessDefinitionId: string, fromProcessDefinitionId: string) => {
return request({
url: `/workflow/processDefinition/migrationDefinition/${currentProcessDefinitionId}/${fromProcessDefinitionId}`,
method: 'put'
});
};