import React, { useMemo } from 'react';
import { Steps } from 'antd';
import styles from './Index.less';
import { queryDDProcessesForecast } from '@/services/boom';
const { Step } = Steps;
const ACTOR_TYPE = {
approver: '审批人',
notifier: '抄送人',
audit: '办理人',
};
const APPROVAL_TYPE = {
MANUAL: '人工审批',
AUTO_AGREE: '自动通过',
AUTO_REFUSE: '自动拒绝',
};
const APPROVAL_METHOD = {
ONE_BY_ONE: '依次审批',
AND: '会签审批',
OR: '或签审批',
};
const ACTIVITY_TYPE = {
target_select: '自选审批人',
target_approval: '指定审批人',
};
let timer = {
id: '',
status: false,
};
function AuditFlow(props) {
const {
processCode,
deptId = '14169890',
userId = '16569001414345099',
formComponentValues,
activityId,
direction,
} = props;
const flow = {
workflowActivityRules: [
{
activityId: 'xi0m_sJzp',
prevActivityId: 'sid-startevent',
workflowActor: {
actorType: 'approver',
approvalType: 'MANUAL',
actorActivateType: 'ONE_BY_ONE',
approvalMethod: 'ONE_BY_ONE',
allowedMulti: true,
actorSelectionRange: {},
required: false,
},
isTargetSelect: false,
activityName: '连续多级主管',
activityType: 'target_approval',
},
{
activityId: 'a890_1358',
prevActivityId: 'xi0m_sJzp',
workflowActor: {
actorType: 'approver',
approvalType: 'MANUAL',
actorActivateType: 'ONE_BY_ONE',
approvalMethod: 'ONE_BY_ONE',
allowedMulti: true,
actorSelectionRange: {},
required: false,
},
isTargetSelect: false,
activityName: '审批人',
activityType: 'target_approval',
},
],
workflowForecastNodes: [
{
activityId: 'sid-startevent',
outId: 'line-random-sid-startevent-xi0m_sJzp',
},
{
activityId: 'xi0m_sJzp',
outId: 'line-random-xi0m_sJzp-a890_1358',
},
{
activityId: 'a890_1358',
outId: 'line-random-a890_1358-endId',
},
{
activityId: 'endId',
},
],
processId: 64338972901,
processCode: 'PROC-F2AD61A8-25CF-47AB-96EA-E0D0850BBE35',
isForecastSuccess: true,
userId: '16569001414345099',
isStaticWorkflow: true,
};
const current = useMemo(() => {
if (!activityId) {
return flow.workflowActivityRules.length;
} else {
return flow.workflowActivityRules.findIndex(item => item.activityId == activityId);
}
}, [activityId]);
const renderDesc = item => {
return <>>;
};
const customDot = (dot, { status, index }) => {
let item = flow.workflowActivityRules[index];
return (
操作人类型:{ACTOR_TYPE[item.workflowActor?.actorType]}
审批类型:{APPROVAL_TYPE[item.workflowActor?.approvalType]}
审批方式:{APPROVAL_METHOD[item.workflowActor?.approvalMethod]}
}
>
{dot}