diff --git a/src/components/SimpleProcessDesignerV2/src/consts.ts b/src/components/SimpleProcessDesignerV2/src/consts.ts
index 8aa3859b..243d0cfe 100644
--- a/src/components/SimpleProcessDesignerV2/src/consts.ts
+++ b/src/components/SimpleProcessDesignerV2/src/consts.ts
@@ -120,6 +120,8 @@ export interface SimpleFlowNode {
defaultFlowId?: string
// 签名
signEnable?: boolean
+ // 审批意见
+ reasonRequire?: boolean
}
// 候选人策略枚举 ( 用于审批节点。抄送节点 )
export enum CandidateStrategy {
diff --git a/src/components/SimpleProcessDesignerV2/src/node.ts b/src/components/SimpleProcessDesignerV2/src/node.ts
index 79bb5d38..af65bcfc 100644
--- a/src/components/SimpleProcessDesignerV2/src/node.ts
+++ b/src/components/SimpleProcessDesignerV2/src/node.ts
@@ -149,6 +149,7 @@ export type UserTaskFormType = {
taskCompleteListenerHeader?: ListenerParam[]
taskCompleteListenerBody?: ListenerParam[]
signEnable: boolean
+ reasonRequire: boolean
}
export type CopyTaskFormType = {
diff --git a/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue b/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue
index 8e18b756..6a76beeb 100644
--- a/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue
+++ b/src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue
@@ -361,6 +361,11 @@
+
+ 审批意见
+
+
+
@@ -698,6 +703,8 @@ const saveConfig = async () => {
}
// 签名
currentNode.value.signEnable = configForm.value.signEnable
+ // 审批意见
+ currentNode.value.reasonRequire = configForm.value.reasonRequire
currentNode.value.showText = showText
settingVisible.value = false
@@ -767,6 +774,8 @@ const showUserTaskNodeConfig = (node: SimpleFlowNode) => {
configForm.value.taskCompleteListenerBody = node.taskCompleteListener?.body ?? []
// 6. 签名
configForm.value.signEnable = node?.signEnable ?? false
+ // 7. 审批意见
+ configForm.value.reasonRequire = node?.reasonRequire ?? false
}
defineExpose({ openDrawer, showUserTaskNodeConfig }) // 暴露方法给父组件
diff --git a/src/views/bpm/processInstance/detail/ProcessInstanceOperationButton.vue b/src/views/bpm/processInstance/detail/ProcessInstanceOperationButton.vue
index 402644e9..84933878 100644
--- a/src/views/bpm/processInstance/detail/ProcessInstanceOperationButton.vue
+++ b/src/views/bpm/processInstance/detail/ProcessInstanceOperationButton.vue
@@ -548,6 +548,7 @@ const approveForm = ref({}) // 审批通过时,额外的补充信息
const approveFormFApi = ref({}) // approveForms 的 fAPi
// 审批通过意见表单
+const reasonRequire = ref()
const approveFormRef = ref()
const signRef = ref()
const approveSignFormRef = ref()
@@ -555,17 +556,21 @@ const approveReasonForm = reactive({
reason: '',
signPicUrl: ''
})
-const approveReasonRule = reactive>({
- reason: [{ required: true, message: '审批意见不能为空', trigger: 'blur' }],
- signPicUrl: [{ required: true, message: '签名不能为空', trigger: 'change' }]
+const approveReasonRule = computed(() => {
+ return {
+ reason: [{ required: reasonRequire.value, message: '审批意见不能为空', trigger: 'blur' }],
+ signPicUrl: [{ required: true, message: '签名不能为空', trigger: 'change' }]
+ }
})
// 拒绝表单
const rejectFormRef = ref()
const rejectReasonForm = reactive({
reason: ''
})
-const rejectReasonRule = reactive>({
- reason: [{ required: true, message: '审批意见不能为空', trigger: 'blur' }]
+const rejectReasonRule = computed(() => {
+ return {
+ reason: [{ required: reasonRequire.value, message: '审批意见不能为空', trigger: 'blur' }]
+ }
})
// 抄送表单
@@ -966,6 +971,7 @@ const loadTodoTask = (task: any) => {
approveForm.value = {}
approveFormFApi.value = {}
runningTask.value = task
+ reasonRequire.value = task?.reasonRequire ?? false
// 处理 approve 表单.
if (task && task.formId && task.formConf) {
const tempApproveForm = {}