diff --git a/apps/web-antd/src/api/bpm/definition/index.ts b/apps/web-antd/src/api/bpm/definition/index.ts index befd60650..b591de12d 100644 --- a/apps/web-antd/src/api/bpm/definition/index.ts +++ b/apps/web-antd/src/api/bpm/definition/index.ts @@ -7,6 +7,7 @@ export namespace BpmProcessDefinitionApi { export interface ProcessDefinition { id: string; version: number; + name: string; deploymentTime: number; suspensionState: number; modelType: number; @@ -15,6 +16,7 @@ export namespace BpmProcessDefinitionApi { bpmnXml?: string; simpleModel?: string; formFields?: string[]; + icon?: string; } } diff --git a/apps/web-antd/src/components/simple-process-design/components/nodes-config/child-process-node-config.vue b/apps/web-antd/src/components/simple-process-design/components/nodes-config/child-process-node-config.vue index 4b48dd3d8..2341999f3 100644 --- a/apps/web-antd/src/components/simple-process-design/components/nodes-config/child-process-node-config.vue +++ b/apps/web-antd/src/components/simple-process-design/components/nodes-config/child-process-node-config.vue @@ -31,6 +31,7 @@ import { getModelList } from '#/api/bpm/model'; import { BpmNodeTypeEnum } from '#/utils'; import { + CHILD_PROCESS_MULTI_INSTANCE_SOURCE_TYPE, CHILD_PROCESS_START_USER_EMPTY_TYPE, CHILD_PROCESS_START_USER_TYPE, ChildProcessMultiInstanceSourceTypeEnum, @@ -114,6 +115,15 @@ const formRules: Record = reactive({ multiInstanceEnable: [ { required: true, message: '多实例设置不能为空', trigger: 'change' }, ], + sequential: [ + { required: true, message: '是否串行不能为空', trigger: 'change' }, + ], + multiInstanceSourceType: [ + { required: true, message: '实例数量不能为空', trigger: 'change' }, + ], + approveRatio: [ + { required: true, message: '完成比例不能为空', trigger: 'change' }, + ], }); type ChildProcessFormType = { @@ -167,15 +177,16 @@ const formFieldOptions = useFormFields(); const startUserFormFieldOptions = computed(() => { return formFieldOptions.filter((item) => item.type === 'UserSelect'); }); -// TODO: 多实例暂时注释 -// const digitalFormFieldOptions = computed(() => { -// return formFieldOptions.filter((item) => item.type === 'inputNumber'); -// }); -// const multiFormFieldOptions = computed(() => { -// return formFieldOptions.filter( -// (item) => item.type === 'select' || item.type === 'checkbox', -// ); -// }); +// 数字表单字段选项 +const digitalFormFieldOptions = computed(() => { + return formFieldOptions.filter((item) => item.type === 'inputNumber'); +}); +// 多选表单字段选项 +const multiFormFieldOptions = computed(() => { + return formFieldOptions.filter( + (item) => item.type === 'select' || item.type === 'checkbox', + ); +}); const childFormFieldOptions = ref([]); /** 保存配置 */ @@ -365,10 +376,10 @@ const getIsoTimeDuration = () => { } return strTimeDuration; }; -/** TODO: 多实例暂时注释 */ -// const handleMultiInstanceSourceTypeChange = () => { -// configForm.value.multiInstanceSource = ''; -// }; + +const handleMultiInstanceSourceTypeChange = () => { + configForm.value.multiInstanceSource = ''; +}; onMounted(async () => { try { @@ -630,17 +641,6 @@ onMounted(async () => { > {{ item.label }} - @@ -728,8 +728,14 @@ onMounted(async () => { - - + diff --git a/apps/web-antd/src/components/simple-process-design/components/simple-process-designer.vue b/apps/web-antd/src/components/simple-process-design/components/simple-process-designer.vue index dcee1a80b..683cf6580 100644 --- a/apps/web-antd/src/components/simple-process-design/components/simple-process-designer.vue +++ b/apps/web-antd/src/components/simple-process-design/components/simple-process-designer.vue @@ -126,7 +126,8 @@ function updateModel() { name: '发起人', type: BpmNodeTypeEnum.START_USER_NODE, id: NodeId.START_USER_NODE_ID, - showText: '默认配置', + // 默认为空,需要进行配置 + showText: '', childNode: { id: NodeId.END_EVENT_NODE_ID, name: '结束', diff --git a/apps/web-antd/src/views/bpm/processInstance/create/index.vue b/apps/web-antd/src/views/bpm/processInstance/create/index.vue index 318f63525..8684f183e 100644 --- a/apps/web-antd/src/views/bpm/processInstance/create/index.vue +++ b/apps/web-antd/src/views/bpm/processInstance/create/index.vue @@ -178,7 +178,8 @@ const processDefinitionGroup = computed(() => { }); /** 通过分类 code 获取对应的名称 */ -function getCategoryName(categoryCode: string) { +// eslint-disable-next-line no-unused-vars +function _getCategoryName(categoryCode: string) { return categoryList.value?.find((ctg: any) => ctg.code === categoryCode) ?.name; } @@ -281,7 +282,6 @@ onMounted(() => { }" >
- -import type { ApiAttrs } from '@form-create/ant-design-vue/types/config'; - import type { BpmProcessDefinitionApi } from '#/api/bpm/definition'; import { computed, nextTick, ref, watch } from 'vue'; @@ -80,7 +78,7 @@ const detailForm = ref({ value: {}, }); -const fApi = ref(); +const fApi = ref(); const startUserSelectTasks = ref([]); const startUserSelectAssignees = ref>({}); const tempStartUserSelectAssignees = ref>({}); @@ -330,7 +328,12 @@ defineExpose({ initProcessInfo }); - +
{ - if (field && variables[field]) - variables[field] = props.normalFormApi.getValue(field); + variables[field] = props.normalFormApi.getValue(field); }); return variables; }