diff --git a/src/assets/svgs/bpm/transactor.svg b/src/assets/svgs/bpm/transactor.svg
new file mode 100644
index 00000000..a9547a7d
--- /dev/null
+++ b/src/assets/svgs/bpm/transactor.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/SimpleProcessDesignerV2/src/NodeHandler.vue b/src/components/SimpleProcessDesignerV2/src/NodeHandler.vue
index 0dcd63e4..ab5b6271 100644
--- a/src/components/SimpleProcessDesignerV2/src/NodeHandler.vue
+++ b/src/components/SimpleProcessDesignerV2/src/NodeHandler.vue
@@ -15,10 +15,9 @@
审批人
-
-
diff --git a/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue b/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue
index b0d10ff0..b6ce9ed3 100644
--- a/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue
+++ b/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue
@@ -1,4 +1,3 @@
-
-
+
-
+
-
+
-
审批人为空时
+
{{ nodeTypeName }}人为空时
@@ -449,7 +448,6 @@
-
字段权限
@@ -681,6 +679,11 @@ const {
const userTaskListenerRef = ref()
+// 节点类型名称
+const nodeTypeName = computed(() => {
+ return currentNode.value.type === NodeType.TRANSACTOR_NODE ? '办理' : '审批'
+})
+
// 保存配置
const saveConfig = async () => {
// activeTabName.value = 'user'
diff --git a/src/components/SimpleProcessDesignerV2/src/nodes/UserTaskNode.vue b/src/components/SimpleProcessDesignerV2/src/nodes/UserTaskNode.vue
index eac24ce8..cbaa3e1a 100644
--- a/src/components/SimpleProcessDesignerV2/src/nodes/UserTaskNode.vue
+++ b/src/components/SimpleProcessDesignerV2/src/nodes/UserTaskNode.vue
@@ -9,7 +9,13 @@
]"
>
-
+
+
+
-
-
+
@@ -505,6 +504,7 @@ import * as TaskApi from '@/api/bpm/task'
import * as ProcessInstanceApi from '@/api/bpm/processInstance'
import * as UserApi from '@/api/system/user'
import {
+ NodeType,
OPERATION_BUTTON_NAME,
OperationButtonType
} from '@/components/SimpleProcessDesignerV2/src/consts'
@@ -559,7 +559,9 @@ const approveReasonForm = reactive({
})
const approveReasonRule = computed(() => {
return {
- reason: [{ required: reasonRequire.value, message: '审批意见不能为空', trigger: 'blur' }],
+ reason: [
+ { required: reasonRequire.value, message: taskName + '意见不能为空', trigger: 'blur' }
+ ],
signPicUrl: [{ required: true, message: '签名不能为空', trigger: 'change' }]
}
})
@@ -968,11 +970,14 @@ const getButtonDisplayName = (btnType: OperationButtonType) => {
return displayName
}
+const taskName = ref('审批')
+
const loadTodoTask = (task: any) => {
approveForm.value = {}
approveFormFApi.value = {}
runningTask.value = task
reasonRequire.value = task?.reasonRequire ?? false
+ taskName.value = task?.nodeType === NodeType.TRANSACTOR_NODE ? '办理' : '审批'
// 处理 approve 表单.
if (task && task.formId && task.formConf) {
const tempApproveForm = {}
diff --git a/src/views/bpm/processInstance/detail/ProcessInstanceTimeline.vue b/src/views/bpm/processInstance/detail/ProcessInstanceTimeline.vue
index 83567417..b7891249 100644
--- a/src/views/bpm/processInstance/detail/ProcessInstanceTimeline.vue
+++ b/src/views/bpm/processInstance/detail/ProcessInstanceTimeline.vue
@@ -180,6 +180,7 @@ import copySvg from '@/assets/svgs/bpm/copy.svg'
import conditionSvg from '@/assets/svgs/bpm/condition.svg'
import parallelSvg from '@/assets/svgs/bpm/parallel.svg'
import finishSvg from '@/assets/svgs/bpm/finish.svg'
+import transactorSvg from '@/assets/svgs/bpm/transactor.svg'
defineOptions({ name: 'BpmProcessInstanceTimeline' })
withDefaults(
@@ -241,8 +242,8 @@ const nodeTypeSvgMap = {
[NodeType.START_USER_NODE]: { color: '#909398', svg: starterSvg },
// 审批人节点
[NodeType.USER_TASK_NODE]: { color: '#ff943e', svg: auditorSvg },
- // 办理人节点 TODO @lesan:
- [NodeType.TRANSACTOR_NODE]: { color: '#ff943e', svg: auditorSvg },
+ // 办理人节点
+ [NodeType.TRANSACTOR_NODE]: { color: '#ff943e', svg: transactorSvg },
// 抄送人节点
[NodeType.COPY_TASK_NODE]: { color: '#3296fb', svg: copySvg },
// 条件分支节点