diff --git a/src/api/workflow/task/index.ts b/src/api/workflow/task/index.ts index d801c16..e0853fe 100644 --- a/src/api/workflow/task/index.ts +++ b/src/api/workflow/task/index.ts @@ -1,13 +1,13 @@ import request from '@/utils/request'; import { AxiosPromise } from 'axios'; -import { TaskQuery, TaskVO } from '@/api/workflow/task/types'; +import { TaskQuery, FlowTaskVO, TaskOperationBo } from '@/api/workflow/task/types'; /** * 查询待办列表 * @param query * @returns {*} */ -export const getPageByTaskWait = (query: TaskQuery): AxiosPromise => { +export const getPageByTaskWait = (query: TaskQuery): AxiosPromise => { return request({ url: '/workflow/task/getPageByTaskWait', method: 'get', @@ -20,7 +20,7 @@ export const getPageByTaskWait = (query: TaskQuery): AxiosPromise => { * @param query * @returns {*} */ -export const getPageByTaskFinish = (query: TaskQuery): AxiosPromise => { +export const getPageByTaskFinish = (query: TaskQuery): AxiosPromise => { return request({ url: '/workflow/task/getPageByTaskFinish', method: 'get', @@ -33,7 +33,7 @@ export const getPageByTaskFinish = (query: TaskQuery): AxiosPromise => * @param query * @returns {*} */ -export const getPageByTaskCopy = (query: TaskQuery): AxiosPromise => { +export const getPageByTaskCopy = (query: TaskQuery): AxiosPromise => { return request({ url: '/workflow/task/getPageByTaskCopy', method: 'get', @@ -46,7 +46,7 @@ export const getPageByTaskCopy = (query: TaskQuery): AxiosPromise => { * @param query * @returns {*} */ -export const getPageByAllTaskWait = (query: TaskQuery): AxiosPromise => { +export const getPageByAllTaskWait = (query: TaskQuery): AxiosPromise => { return request({ url: '/workflow/task/getPageByAllTaskWait', method: 'get', @@ -59,7 +59,7 @@ export const getPageByAllTaskWait = (query: TaskQuery): AxiosPromise = * @param query * @returns {*} */ -export const getPageByAllTaskFinish = (query: TaskQuery): AxiosPromise => { +export const getPageByAllTaskFinish = (query: TaskQuery): AxiosPromise => { return request({ url: '/workflow/task/getPageByAllTaskFinish', method: 'get', @@ -263,3 +263,15 @@ export const getListByDeleteMultiInstance = (taskId: string) => { method: 'get' }); }; + +/** + * 任务操作 操作类型,委派 delegateTask、转办 transferTask、加签 addSignature、减签 reductionSignature + * @returns + */ +export const taskOperation = (data: TaskOperationBo, operation: string) => { + return request({ + url: `/workflow/task/taskOperation/${operation}`, + method: 'post', + data: data + }); +}; diff --git a/src/api/workflow/task/types.ts b/src/api/workflow/task/types.ts index 92b6cf2..3e57ca4 100644 --- a/src/api/workflow/task/types.ts +++ b/src/api/workflow/task/types.ts @@ -34,3 +34,14 @@ export interface VariableVo { key: string; value: string; } + +export interface TaskOperationBo { + //委派/转办人的用户ID(必填,准对委派/转办人操作) + userId?: string; + //加签/减签人的用户ID列表(必填,针对加签/减签操作) + userIds?: string[]; + //任务ID(必填) + taskId: string; + //意见或备注信息(可选) + message?: string; +} diff --git a/src/components/Process/submitVerify.vue b/src/components/Process/submitVerify.vue index afaa86f..8cc8803 100644 --- a/src/components/Process/submitVerify.vue +++ b/src/components/Process/submitVerify.vue @@ -85,12 +85,12 @@ import { ref } from 'vue'; import { ComponentInternalInstance } from 'vue'; import { ElForm } from 'element-plus'; -import { completeTask, backProcess, getTaskById, transferTask, terminationTask, getBackTaskNode, delegateTask } from '@/api/workflow/task'; +import { completeTask, backProcess, getTaskById, taskOperation, terminationTask, getBackTaskNode } from '@/api/workflow/task'; import UserSelect from '@/components/UserSelect'; import MultiInstanceUser from '@/components/Process/multiInstanceUser.vue'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; import { UserVO } from '@/api/system/user/types'; -import { FlowTaskVO } from '@/api/workflow/task/types'; +import { FlowTaskVO, TaskOperationBo } from '@/api/workflow/task/types'; const userSelectCopyRef = ref>(); const transferTaskRef = ref>(); const delegateTaskRef = ref>(); @@ -234,8 +234,8 @@ const handleBackProcess = async () => { backLoading.value = true; backButtonDisabled.value = true; await backProcess(backForm.value).finally(() => { - loading.value = false - buttonDisabled.value = false + loading.value = false; + buttonDisabled.value = false; }); dialog.visible = false; backLoading.value = false; @@ -289,17 +289,17 @@ const openTransferTask = () => { //转办 const handleTransferTask = async (data) => { if (data && data.length > 0) { - let params = { - taskId: taskId.value, + const taskOperationBo = reactive({ userId: data[0].userId, - comment: form.value.message - }; + taskId: taskId.value, + message: form.value.message + }); await proxy?.$modal.confirm('是否确认提交?'); loading.value = true; buttonDisabled.value = true; - await transferTask(params).finally(() => { - loading.value = false - buttonDisabled.value = false + await taskOperation(taskOperationBo, 'transferTask').finally(() => { + loading.value = false; + buttonDisabled.value = false; }); dialog.visible = false; emits('submitCallback'); @@ -316,17 +316,17 @@ const openDelegateTask = () => { //委托 const handleDelegateTask = async (data) => { if (data && data.length > 0) { - let params = { - taskId: taskId.value, + const taskOperationBo = reactive({ userId: data[0].userId, - nickName: data[0].nickName - }; + taskId: taskId.value, + message: form.value.message + }); await proxy?.$modal.confirm('是否确认提交?'); loading.value = true; buttonDisabled.value = true; - await delegateTask(params).finally(() => { - loading.value = false - buttonDisabled.value = false + await taskOperation(taskOperationBo, 'delegateTask').finally(() => { + loading.value = false; + buttonDisabled.value = false; }); dialog.visible = false; emits('submitCallback'); @@ -345,8 +345,8 @@ const handleTerminationTask = async (data) => { loading.value = true; buttonDisabled.value = true; await terminationTask(params).finally(() => { - loading.value = false - buttonDisabled.value = false + loading.value = false; + buttonDisabled.value = false; }); dialog.visible = false; emits('submitCallback'); diff --git a/src/views/workflow/leave/index.vue b/src/views/workflow/leave/index.vue index ee86fa6..32ac509 100644 --- a/src/views/workflow/leave/index.vue +++ b/src/views/workflow/leave/index.vue @@ -60,17 +60,14 @@ @@ -231,9 +223,9 @@ const handleCancelProcessApply = async (id: string) => { await proxy?.$modal.confirm('是否确认撤销当前单据?'); loading.value = true; let data = { - businessId:id, - message:'撤销流程!' - } + businessId: id, + message: '撤销流程!' + }; await cancelProcessApply(data).finally(() => (loading.value = false)); await getList(); proxy?.$modal.msgSuccess('撤销成功');