diff --git a/src/components/SimpleProcessDesignerV2/src/SimpleProcessViewer.vue b/src/components/SimpleProcessDesignerV2/src/SimpleProcessViewer.vue index abf73b48..26cd43fd 100644 --- a/src/components/SimpleProcessDesignerV2/src/SimpleProcessViewer.vue +++ b/src/components/SimpleProcessDesignerV2/src/SimpleProcessViewer.vue @@ -45,4 +45,3 @@ watch( provide('tasks', approveTasks) provide('processInstance', currentProcessInstance) -p diff --git a/src/components/bpmnProcessDesigner/package/penal/custom-config/components/UserTaskCustomConfig.vue b/src/components/bpmnProcessDesigner/package/penal/custom-config/components/UserTaskCustomConfig.vue index ea9137d4..8b3b8af2 100644 --- a/src/components/bpmnProcessDesigner/package/penal/custom-config/components/UserTaskCustomConfig.vue +++ b/src/components/bpmnProcessDesigner/package/penal/custom-config/components/UserTaskCustomConfig.vue @@ -191,6 +191,7 @@ import { } from '@/components/SimpleProcessDesignerV2/src/consts' import * as UserApi from '@/api/system/user' import { useFormFieldsPermission } from '@/components/SimpleProcessDesignerV2/src/node' +import { BpmModelFormType } from '@/utils/constants' defineOptions({ name: 'ElementCustomConfig4UserTask' }) const props = defineProps({ @@ -310,14 +311,12 @@ const resetCustomConfigList = () => { } // 字段权限 - if (formType.value === 10) { + if (formType.value === BpmModelFormType.NORMAL) { const fieldsPermissionList = elExtensionElements.value.values?.filter( (ex) => ex.$type === `${prefix}:FieldsPermission` ) fieldsPermissionEl.value = [] getNodeConfigFormFields() - // 由于默认添加了发起人元素,这里需要删掉 - // fieldsPermissionConfig.value = fieldsPermissionConfig.value.slice(1) fieldsPermissionConfig.value = fieldsPermissionConfig.value fieldsPermissionConfig.value.forEach((element) => { element.permission = diff --git a/src/views/bpm/model/editor/index.vue b/src/views/bpm/model/editor/index.vue index 50386487..93738d60 100644 --- a/src/views/bpm/model/editor/index.vue +++ b/src/views/bpm/model/editor/index.vue @@ -34,6 +34,8 @@ import CustomContentPadProvider from '@/components/bpmnProcessDesigner/package/d // 自定义左侧菜单(修改 默认任务 为 用户任务) import CustomPaletteProvider from '@/components/bpmnProcessDesigner/package/designer/plugins/palette' import * as ModelApi from '@/api/bpm/model' +import { BpmModelFormType } from '@/utils/constants' +import * as FormApi from '@/api/bpm/form' defineOptions({ name: 'BpmModelEditor' }) @@ -49,7 +51,8 @@ const message = useMessage() // 国际化 // 表单信息 const formFields = ref([]) -const formType = ref(20) +// 表单类型,暂仅限流程表单 +const formType = ref(BpmModelFormType.NORMAL) provide('formFields', formFields) provide('formType', formType) @@ -88,6 +91,20 @@ const save = async (bpmnXml: string) => { } } +/** 监听表单 ID 变化,加载表单数据 */ +watch( + () => modelData.value.formId, + async (newFormId) => { + if (newFormId && modelData.value.formType === BpmModelFormType.NORMAL) { + const data = await FormApi.getForm(newFormId) + formFields.value = data.fields + } else { + formFields.value = [] + } + }, + { immediate: true } +) + // 在组件卸载时清理 onBeforeUnmount(() => { modeler.value = null