diff --git a/src/enums/workflowEnum.ts b/src/enums/workflowEnum.ts new file mode 100644 index 0000000..3aa7965 --- /dev/null +++ b/src/enums/workflowEnum.ts @@ -0,0 +1,10 @@ +/** + * @program: kicc-ui + * @description: 工作流枚举 + * @author: wangxiang4 + * @create: 2023/10/21 + */ + +export enum PageEnum { + TODO_TASK_PAGE = '/workflow/task/index', +} diff --git a/src/views/workflow/task/TaskForm.vue b/src/views/workflow/task/TaskForm.vue index 77de097..4608e81 100644 --- a/src/views/workflow/task/TaskForm.vue +++ b/src/views/workflow/task/TaskForm.vue @@ -153,6 +153,8 @@ @register="registerModal" @ccEmit="handleCCEmit" @assignEmit="handleAssignEmit" + @transferTask="handleTransferTask" + @delegateTask="handleDelegateTask" /> @@ -191,6 +193,7 @@ import { listUser } from '/@/api/platform/system/controller/user'; import { ActivityCommentInfo } from '/@/api/platform/workflow/entity/activityCommentInfo'; import RollBackTaskModal from './popups/RollBackTaskModal.vue'; + import { PageEnum } from '/@/enums/workflowEnum'; /** 类型规范统一声明定义区域 */ interface WindowState { @@ -240,7 +243,9 @@ // 任务代理人ID assignee: string; }; + // 审批表单验证规则 rulesRef: Recordable; + // 用户选取器prop userPickerProps: { title: string; limit: number; @@ -296,7 +301,7 @@ assignee: [{ required: true, whitespace: true, message: '处理用户不能为空', validateTrigger: 'blur' }] }, userPickerProps: { - title: '任务表单用户选择器', + title: '', limit: 0, } }); @@ -368,7 +373,7 @@ state.auditForm.assignee = ''; state.auditForm.userIds = []; state.auditForm.message = ''; - state.userPickerProps.title = '任务表单用户选择器'; + state.userPickerProps.title = ''; state.userPickerProps.limit = 0; } @@ -405,16 +410,16 @@ businessId: businessId, ...vars }); + await cc({ processInsId }); await close(); - await push({path: '/workflow/task/index'}); - cc({ processInsId }); + await push({ path: PageEnum.TODO_TASK_PAGE }); }); // 动态表单 } else { - formPreview.value.startFormProcessDefinition({ processDefId: state.processDefId, ...vars }, (processInsId: string) => { - close(); - push({ path: '/workflow/task/index' }); - cc({ processInsId }); + formPreview.value.startFormProcessDefinition({ processDefId: state.processDefId, ...vars }, async (processInsId: string) => { + await cc({ processInsId }); + await close(); + await push({ path: PageEnum.TODO_TASK_PAGE }); }); } } @@ -472,12 +477,12 @@ /** 转办 */ function handleTransferUserPicker() { - openModal(true,{ _tag: 'transfer' }); + openModal(true,{ _tag: 'transferTask' }); } /** 委托 */ function handleDelegateUserPicker() { - openModal(true,{ _tag: 'delegate' }); + openModal(true,{ _tag: 'delegateTask' }); } /** 终止 */ @@ -488,9 +493,9 @@ content: '确定终止流程吗?', onOk: async () => { await stopProcessInstance(state.processInsId, state.auditForm.message); + await cc({processInsId: state.processInsId}); await close(); - await push({path: '/workflow/task/index'}); - cc({processInsId: state.processInsId}); + await push({ path: PageEnum.TODO_TASK_PAGE }); } }); } @@ -536,9 +541,9 @@ assignee: state.auditForm.assignee, vars, }); + await cc({ processInsId: state.processInsId }); await close(); - await push({ path: '/workflow/task/index' }); - cc({ processInsId: state.processInsId }); + await push({ path: PageEnum.TODO_TASK_PAGE }); }); // 动态表单审批 } else { @@ -549,10 +554,10 @@ activityCommentInfo: state.auditForm, assignee: state.auditForm.assignee, vars - }, () => { - close(); - push({ path: '/workflow/task/index' }); - cc({ processInsId: state.processInsId }); + }, async () => { + await cc({ processInsId: state.processInsId }); + await close(); + await push({ path: PageEnum.TODO_TASK_PAGE }); }); } } @@ -564,25 +569,25 @@ rollBackTaskDefKey: backTaskDefKey, comment: state.auditForm }); + await cc({ processInsId: state.processInsId }); await close(); - await push({ path: '/workflow/task/index' }); - cc({ processInsId: state.processInsId }); + await push({ path: PageEnum.TODO_TASK_PAGE }); } /** 处理转派任务 */ async function handleTransferTask(userList: KiccUser[]) { await transferTask( state.taskId, userList[0].id); + await cc({ processInsId: state.processInsId }); await close(); - await push({ path: '/workflow/task/index' }); - cc({ processInsId: state.processInsId }); + await push({ path: PageEnum.TODO_TASK_PAGE }); } /** 处理任务委派 */ async function handleDelegateTask(userList: KiccUser[]) { await delegateTask(state.taskId, userList[0].id); + await cc({ processInsId: state.processInsId }); await close(); - await push({ path: '/workflow/task/index' }); - cc({ processInsId: state.processInsId }); + await push({ path: PageEnum.TODO_TASK_PAGE }); } function submit(button: Partial) {