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) {