+
+
+ {{ listener.name }}
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
-
- 添加一行
-
-
-
-
-
-
-
-
-
-
+ 添加一行
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
-
- 添加一行
-
-
+
+ 添加一行
+
+
+
-
-
-
- 指派任务执行人员
-
-
-
-
-
-
-
- 完成任务
-
-
-
-
@@ -693,6 +679,21 @@ const formRules = reactive({
assignEmptyHandlerUserIds: [{ required: true, message: '用户不能为空', trigger: 'change' }],
assignStartUserHandlerType: [{ required: true }]
})
+// 监听器数组
+const taskListener = ref([
+ {
+ name: '创建任务',
+ type: 'Create'
+ },
+ {
+ name: '指派任务执行人员',
+ type: 'Assign'
+ },
+ {
+ name: '完成任务',
+ type: 'Complete'
+ }
+])
const {
configForm: tempConfigForm,
@@ -796,11 +797,25 @@ const saveConfig = async () => {
// 设置按钮权限
currentNode.value.buttonsSetting = buttonsSetting.value
// 创建任务监听器
- currentNode.value.createTaskListener = {
- enable: configForm.value.createTaskListenerEnable,
- path: configForm.value.createTaskListenerPath,
- header: configForm.value.createTaskListenerHeader,
- body: configForm.value.createTaskListenerBody
+ currentNode.value.taskCreateListener = {
+ enable: configForm.value.taskCreateListenerEnable ?? false,
+ path: configForm.value.taskCreateListenerPath,
+ header: configForm.value.taskCreateListenerHeader,
+ body: configForm.value.taskCreateListenerBody
+ }
+ // 指派任务监听器
+ currentNode.value.taskAssignListener = {
+ enable: configForm.value.taskAssignListenerEnable ?? false,
+ path: configForm.value.taskAssignListenerPath,
+ header: configForm.value.taskAssignListenerHeader,
+ body: configForm.value.taskAssignListenerBody
+ }
+ // 完成任务监听器
+ currentNode.value.taskCompleteListener = {
+ enable: configForm.value.taskCompleteListenerEnable ?? false,
+ path: configForm.value.taskCompleteListenerPath,
+ header: configForm.value.taskCompleteListenerHeader,
+ body: configForm.value.taskCompleteListenerBody
}
currentNode.value.showText = showText
@@ -853,11 +868,22 @@ const showUserTaskNodeConfig = (node: SimpleFlowNode) => {
buttonsSetting.value = cloneDeep(node.buttonsSetting) || DEFAULT_BUTTON_SETTING
// 4. 表单字段权限配置
getNodeConfigFormFields(node.fieldsPermission)
- // 5. 创建任务监听器
- configForm.value.createTaskListenerEnable = node.createTaskListener.enable
- configForm.value.createTaskListenerPath = node.createTaskListener.path
- configForm.value.createTaskListenerHeader = node.createTaskListener.header ?? []
- configForm.value.createTaskListenerBody = node.createTaskListener.body ?? []
+ // 5. 监听器
+ // 5.1 创建任务
+ configForm.value.taskCreateListenerEnable = node.taskCreateListener!.enable
+ configForm.value.taskCreateListenerPath = node.taskCreateListener!.path
+ configForm.value.taskCreateListenerHeader = node.taskCreateListener?.header ?? []
+ configForm.value.taskCreateListenerBody = node.taskCreateListener?.body ?? []
+ // 5.2 指派任务
+ configForm.value.taskAssignListenerEnable = node.taskAssignListener!.enable
+ configForm.value.taskAssignListenerPath = node.taskAssignListener!.path
+ configForm.value.taskAssignListenerHeader = node.taskAssignListener?.header ?? []
+ configForm.value.taskAssignListenerBody = node.taskAssignListener?.body ?? []
+ // 5.3 完成任务
+ configForm.value.taskCompleteListenerEnable = node.taskCompleteListener!.enable
+ configForm.value.taskCompleteListenerPath = node.taskCompleteListener!.path
+ configForm.value.taskCompleteListenerHeader = node.taskCompleteListener?.header ?? []
+ configForm.value.taskCompleteListenerBody = node.taskCompleteListener?.body ?? []
}
defineExpose({ openDrawer, showUserTaskNodeConfig }) // 暴露方法给父组件
From 65eee157b97cb18308dd42740b99e4bd4b2733f1 Mon Sep 17 00:00:00 2001
From: Lesan <1960681385@qq.com>
Date: Tue, 7 Jan 2025 17:02:44 +0800
Subject: [PATCH 3/3] =?UTF-8?q?feat:=20Simple=E8=AE=BE=E8=AE=A1=E5=99=A8-?=
=?UTF-8?q?=E7=9B=91=E5=90=AC=E5=99=A8-=E8=A1=A8=E5=8D=95=E4=BD=BF?=
=?UTF-8?q?=E7=94=A8=E9=80=89=E6=8B=A9=E5=99=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../SimpleProcessDesignerV2/src/consts.ts | 10 +++++
.../src/nodes-config/UserTaskNodeConfig.vue | 41 +++++++++++++++++--
2 files changed, 48 insertions(+), 3 deletions(-)
diff --git a/src/components/SimpleProcessDesignerV2/src/consts.ts b/src/components/SimpleProcessDesignerV2/src/consts.ts
index 3ea9f698..136b3921 100644
--- a/src/components/SimpleProcessDesignerV2/src/consts.ts
+++ b/src/components/SimpleProcessDesignerV2/src/consts.ts
@@ -249,6 +249,16 @@ export type ListenerMap = {
type: number
value: string
}
+export enum ListenerMapTypeEnum {
+ /**
+ * 固定值
+ */
+ FIXED_VALUE = 1,
+ /**
+ * 表单
+ */
+ FROM_FORM = 2
+}
export const LISTENER_MAP_TYPES = [
{
value: 1,
diff --git a/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue b/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue
index f18a4d46..962ce9cc 100644
--- a/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue
+++ b/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue
@@ -481,7 +481,24 @@