审批流程实现“转办”功能。
This commit is contained in:
@ -49,6 +49,7 @@
|
||||
<Title :font-size="18" default-value="流转信息"></Title>
|
||||
<flow-history :items="getTaskRecords()"></flow-history>
|
||||
<opinion-dialog ref="opinionDlg" />
|
||||
<transfer-dialog ref="transferDlg" />
|
||||
<a-modal :closable="false" :visible="showFlowChart" centered class="geg" title="流程图" width="1200px">
|
||||
<process-information :process-id="processId" :xml="data.xml" />
|
||||
<template #footer>
|
||||
@ -64,15 +65,16 @@
|
||||
import { onMounted, reactive, ref, unref } from 'vue';
|
||||
import FormInformation from '/@/views/secondDev/FormInformation.vue';
|
||||
import userTaskItem from '/@/views/workflow/task/hooks/userTaskItem';
|
||||
import { getApprovalProcess, postApproval, postGetNextTaskMaybeArrival } from '/@/api/workflow/task';
|
||||
import { getApprovalProcess, postApproval, postGetNextTaskMaybeArrival, postTransfer } from '/@/api/workflow/task';
|
||||
import { ApproveCode, ApproveType } from '/@/enums/workflowEnum';
|
||||
import { CheckCircleOutlined, StopOutlined, CloseOutlined, DownOutlined } from '@ant-design/icons-vue';
|
||||
import OpinionDialog from '/@/components/SecondDev/OpinionDialog.vue';
|
||||
import TransferDialog from '/@/components/SecondDev/TransferDialog.vue';
|
||||
import { separator } from '/@bpmn/config/info';
|
||||
import { useMultipleTabStore } from '/@/store/modules/multipleTab';
|
||||
import Title from '/@/components/Title/src/Title.vue';
|
||||
import FlowHistory from '/@/components/SecondDev/FlowHistory.vue';
|
||||
import { message } from 'ant-design-vue';
|
||||
import { message, Modal } from 'ant-design-vue';
|
||||
import useEventBus from '/@/hooks/event/useEventBus';
|
||||
import ProcessInformation from '/@/views/workflow/task/components/flow/ProcessInformation.vue';
|
||||
|
||||
@ -92,6 +94,7 @@
|
||||
const renderKey = ref('');
|
||||
const formConfigs = ref();
|
||||
const opinionDlg = ref();
|
||||
const transferDlg = ref();
|
||||
const validateSuccess = ref(false);
|
||||
const formInformation = ref();
|
||||
const showFlowChart = ref(false);
|
||||
@ -121,8 +124,16 @@
|
||||
const key = e.key;
|
||||
if (key === 'flowchart') {
|
||||
openFlowChart();
|
||||
} else if(key === 'finish'){
|
||||
onFinishClick();
|
||||
} else if (key === 'finish') {
|
||||
Modal.confirm({
|
||||
title: () => '提示',
|
||||
content: () => '确定终止吗?',
|
||||
onOk: () => {
|
||||
onFinishClick();
|
||||
}
|
||||
});
|
||||
} else if (key === 'transfer') {
|
||||
onTransferClick();
|
||||
}
|
||||
}
|
||||
|
||||
@ -171,7 +182,43 @@
|
||||
});
|
||||
}
|
||||
|
||||
async function onFinishClick(){
|
||||
function onTransferClick() {
|
||||
transferDlg.value.toggleDialog({
|
||||
taskId: taskId.value,
|
||||
callback: (args) => {
|
||||
onTransfer(args);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function onTransfer({ taskId, userId }) {
|
||||
transferDlg.value.validate().then(() => {
|
||||
transferDlg.value.startLoading();
|
||||
postTransfer(taskId, userId)
|
||||
.then((res) => {
|
||||
transferDlg.value.toggleDialog({
|
||||
isClose: true
|
||||
});
|
||||
message.success('转办成功');
|
||||
setTimeout(() => {
|
||||
bus.emit(FLOW_PROCESSED);
|
||||
close();
|
||||
}, 500);
|
||||
})
|
||||
.catch((err) => {
|
||||
message.error('转办失败');
|
||||
transferDlg.value.toggleDialog({
|
||||
isClose: true
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function onTransferFlowFail() {
|
||||
transferDlg.value.stopLoading();
|
||||
}
|
||||
|
||||
async function onFinishClick() {
|
||||
approvalData.approvedType = ApproveType.FINISH;
|
||||
approvalData.approvedResult = ApproveCode.FINISH;
|
||||
onFinish('finish');
|
||||
|
||||
Reference in New Issue
Block a user