From 799cff58a3ef4c9a495fa3ca0e41514ea1245cce Mon Sep 17 00:00:00 2001 From: "825299534@qq.com" Date: Mon, 28 Apr 2025 08:44:35 +0800 Subject: [PATCH 1/9] =?UTF-8?q?1.=E6=B7=BB=E5=8A=A0=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E4=BA=BA=E6=95=B0=E9=87=8F=E9=99=90=E5=88=B6=E9=85=8D=E7=BD=AE?= =?UTF-8?q?2.=E8=8D=89=E7=A8=BF=E7=AE=B1=E6=B7=BB=E5=8A=A0=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E8=BF=87=E6=BB=A4=E5=92=8C=E4=BB=BB=E5=8A=A1=E5=90=8D?= =?UTF-8?q?=E5=92=8C=E6=B5=81=E7=A8=8B=E5=8F=91=E8=B5=B7=E8=80=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bpmn/components/ApproveUserRules.vue | 200 ++++++++++++++++++ .../components/member/MemberUserTable.vue | 76 +++++++ 2 files changed, 276 insertions(+) create mode 100644 src/views/workflow/design/bpmn/components/ApproveUserRules.vue create mode 100644 src/views/workflow/design/bpmn/components/member/MemberUserTable.vue diff --git a/src/views/workflow/design/bpmn/components/ApproveUserRules.vue b/src/views/workflow/design/bpmn/components/ApproveUserRules.vue new file mode 100644 index 0000000..9988344 --- /dev/null +++ b/src/views/workflow/design/bpmn/components/ApproveUserRules.vue @@ -0,0 +1,200 @@ + + + + + diff --git a/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue b/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue new file mode 100644 index 0000000..13535c4 --- /dev/null +++ b/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue @@ -0,0 +1,76 @@ + + + + + From 13a33b2506a55fe1425d94fe931a80d64d226727 Mon Sep 17 00:00:00 2001 From: "825299534@qq.com" Date: Mon, 28 Apr 2025 08:46:43 +0800 Subject: [PATCH 2/9] =?UTF-8?q?1.=E6=B7=BB=E5=8A=A0=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E4=BA=BA=E6=95=B0=E9=87=8F=E9=99=90=E5=88=B6=E9=85=8D=E7=BD=AE?= =?UTF-8?q?2.=E8=8D=89=E7=A8=BF=E7=AE=B1=E6=B7=BB=E5=8A=A0=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E8=BF=87=E6=BB=A4=E5=92=8C=E4=BB=BB=E5=8A=A1=E5=90=8D?= =?UTF-8?q?=E5=92=8C=E6=B5=81=E7=A8=8B=E5=8F=91=E8=B5=B7=E8=80=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/form/template/index.vue | 53 ++++--------------- .../task/components/processTasks/DraftsV2.vue | 15 +++++- 2 files changed, 23 insertions(+), 45 deletions(-) diff --git a/src/views/form/template/index.vue b/src/views/form/template/index.vue index cde5c0a..b44a789 100644 --- a/src/views/form/template/index.vue +++ b/src/views/form/template/index.vue @@ -8,7 +8,6 @@ :clickRowToExpand="true" :treeData="treeData" :fieldNames="fieldNames" - @row-dbClick="dbClickRow" :row-selection="rowSelection" > diff --git a/src/views/workflow/design/bpmn/panel/User.vue b/src/views/workflow/design/bpmn/panel/User.vue index 77895fd..70a4878 100644 --- a/src/views/workflow/design/bpmn/panel/User.vue +++ b/src/views/workflow/design/bpmn/panel/User.vue @@ -18,7 +18,7 @@ - + Date: Mon, 28 Apr 2025 08:50:53 +0800 Subject: [PATCH 4/9] =?UTF-8?q?1.=E6=B7=BB=E5=8A=A0=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E4=BA=BA=E6=95=B0=E9=87=8F=E9=99=90=E5=88=B6=E9=85=8D=E7=BD=AE?= =?UTF-8?q?2.=E8=8D=89=E7=A8=BF=E7=AE=B1=E6=B7=BB=E5=8A=A0=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E8=BF=87=E6=BB=A4=E5=92=8C=E4=BB=BB=E5=8A=A1=E5=90=8D?= =?UTF-8?q?=E5=92=8C=E6=B5=81=E7=A8=8B=E5=8F=91=E8=B5=B7=E8=80=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/workflow/design/bpmn/config/propertyConfig.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/views/workflow/design/bpmn/config/propertyConfig.ts b/src/views/workflow/design/bpmn/config/propertyConfig.ts index b661ff2..64fa380 100644 --- a/src/views/workflow/design/bpmn/config/propertyConfig.ts +++ b/src/views/workflow/design/bpmn/config/propertyConfig.ts @@ -144,9 +144,14 @@ const UserProperties: UserTaskConfig = { autoAgreeRule: [], //自动同意规则 isPrevChooseNext: DesignatedApprover.NOT_SPECIFIED, //是否上一节点审批人指定下一节点审批人 provisionalApprover: false, //临时审批人 + provisionalDistributor: false, //临时传阅人 isChooseMulti: true, //是否多选 isChooseAll: false, //是否全选 isReadOnly: false, //是否只读 + minAppRovers: '', //最少审批人 + maxAppRovers: '', //最多审批人 + maxReaders: '', //最少传阅人 + minReaders: '', //最多传阅人 noHandler: NoHandler.ADMIN, //无对应处理人 countersignConfig: { multipleInstancesType: MultipleInstancesType.NONE, //多实例类型 From 585fdffa51634e4b37cf694accd43aebb26ed6bf Mon Sep 17 00:00:00 2001 From: "825299534@qq.com" Date: Tue, 29 Apr 2025 09:53:18 +0800 Subject: [PATCH 5/9] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E4=BC=A0=E9=98=85?= =?UTF-8?q?=E4=BA=BA=E9=85=8D=E7=BD=AE=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bpmn/components/ApproveUserRules.vue | 24 +++++++++---------- .../components/member/MemberUserTable.vue | 24 +++++++++---------- .../design/bpmn/config/propertyConfig.ts | 8 +++---- src/views/workflow/design/bpmn/panel/User.vue | 8 +++---- 4 files changed, 32 insertions(+), 32 deletions(-) diff --git a/src/views/workflow/design/bpmn/components/ApproveUserRules.vue b/src/views/workflow/design/bpmn/components/ApproveUserRules.vue index 9988344..9085289 100644 --- a/src/views/workflow/design/bpmn/components/ApproveUserRules.vue +++ b/src/views/workflow/design/bpmn/components/ApproveUserRules.vue @@ -49,18 +49,18 @@ @@ -78,8 +78,8 @@ 'update:isChooseMulti', 'update:isChooseAll', 'update:isReadOnly', - 'update:minAppRovers', - 'update:maxAppRovers', + 'update:minApprover', + 'update:maxApprover', ]); const props = defineProps({ autoAgreeRule: Array, @@ -101,11 +101,11 @@ type: Boolean || undefined, default: undefined, }, - minAppRovers: { + minApprover: { type: Number, default: 0, }, - maxAppRovers: { + maxApprover: { type: Number, default: 0, }, @@ -188,12 +188,12 @@ emits('update:isReadOnly', val); } // 最少审批人 - function changeMinAppRovers(val: number) { - emits('update:minAppRovers', val); + function changeMinApprover(val: number) { + emits('update:minApprover', val); } // 最多审批人 - function changeMaxAppRovers(val: number) { - emits('update:maxAppRovers', val); + function changeMaxApprover(val: number) { + emits('update:maxApprover', val); } diff --git a/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue b/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue index 13535c4..4995443 100644 --- a/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue +++ b/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue @@ -11,18 +11,18 @@ @@ -33,8 +33,8 @@ const { t } = useI18n(); const emits = defineEmits([ 'update:provisionalDistributor', - 'update:maxReaders', - 'update:minReaders' + 'update:maxCirculate', + 'update:minCirculate' ]); const props = defineProps({ isChooseMulti: { @@ -49,11 +49,11 @@ type: Boolean || undefined, default: undefined, }, - maxReaders: { + maxCirculate: { type: Number, default: 0, }, - minReaders: { + minCirculate: { type: Number, default: 0, }, @@ -64,12 +64,12 @@ emits('update:provisionalDistributor', val); } //最多传阅人 - function changeMaxReaders(val: number) { - emits('update:maxReaders', val); + function changeMaxCirculate(val: number) { + emits('update:maxCirculate', val); } //最少传阅人 - function changeMinReaders(val: number) { - emits('update:minReaders', val); + function changeMinCirculate(val: number) { + emits('update:minCirculate', val); } diff --git a/src/views/workflow/design/bpmn/config/propertyConfig.ts b/src/views/workflow/design/bpmn/config/propertyConfig.ts index 64fa380..d0662a3 100644 --- a/src/views/workflow/design/bpmn/config/propertyConfig.ts +++ b/src/views/workflow/design/bpmn/config/propertyConfig.ts @@ -148,10 +148,10 @@ const UserProperties: UserTaskConfig = { isChooseMulti: true, //是否多选 isChooseAll: false, //是否全选 isReadOnly: false, //是否只读 - minAppRovers: '', //最少审批人 - maxAppRovers: '', //最多审批人 - maxReaders: '', //最少传阅人 - minReaders: '', //最多传阅人 + minApprover: '', //最少审批人 + maxApprover: '', //最多审批人 + maxCirculate: '', //最多传阅人 + minCirculate: '', //最少传阅人 noHandler: NoHandler.ADMIN, //无对应处理人 countersignConfig: { multipleInstancesType: MultipleInstancesType.NONE, //多实例类型 diff --git a/src/views/workflow/design/bpmn/panel/User.vue b/src/views/workflow/design/bpmn/panel/User.vue index 70a4878..5001944 100644 --- a/src/views/workflow/design/bpmn/panel/User.vue +++ b/src/views/workflow/design/bpmn/panel/User.vue @@ -26,8 +26,8 @@ v-model:isChooseMulti="formInfo.isChooseMulti" v-model:isChooseAll="formInfo.isChooseAll" v-model:isReadOnly="formInfo.isReadOnly" - v-model:minAppRovers="formInfo.minAppRovers" - v-model:maxAppRovers="formInfo.maxAppRovers" + v-model:minApprover="formInfo.minApprover" + v-model:maxApprover="formInfo.maxApprover" /> Date: Tue, 29 Apr 2025 15:01:00 +0800 Subject: [PATCH 6/9] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=8F=96=E6=B5=81=E7=A8=8B=E5=85=A8=E5=B1=80?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=202.=E4=BF=AE=E5=A4=8D=E7=BC=BA=E9=99=B7,?= =?UTF-8?q?=E5=AE=A1=E6=89=B9=E5=8F=96=E4=B8=8B=E4=B8=AA=E8=8A=82=E7=82=B9?= =?UTF-8?q?=E7=9A=84=E9=99=90=E5=88=B6=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/model/workflow/workflowConfig.ts | 4 + .../design/bpmn/components/ApproveRules.vue | 126 +++++++++++++++++- .../bpmn/components/ApproveUserRules.vue | 4 +- .../components/member/MemberUserTable.vue | 4 +- .../workflow/design/bpmn/config/property.ts | 4 + .../design/bpmn/config/propertyConfig.ts | 4 + .../design/bpmn/panel/process/basic/Index.vue | 8 ++ 7 files changed, 149 insertions(+), 5 deletions(-) diff --git a/src/model/workflow/workflowConfig.ts b/src/model/workflow/workflowConfig.ts index 0377566..af5b756 100644 --- a/src/model/workflow/workflowConfig.ts +++ b/src/model/workflow/workflowConfig.ts @@ -90,6 +90,10 @@ export interface ProcessConfig { parentId: string; //父节点(流程id) remark: string; //节点描述 code: string; //模板编码 + minApprover: string; //最少审批人 + maxApprover: string; //最多审批人 + maxCirculate: string; //最多传阅人 + minCirculate: string; //最少传阅人 category: undefined | string; //分类 nameRule?: string; //命名规则 nameRuleConfigs?: NameRule; // 命名规则列表 diff --git a/src/views/workflow/design/bpmn/components/ApproveRules.vue b/src/views/workflow/design/bpmn/components/ApproveRules.vue index f9a7a0f..d0d05af 100644 --- a/src/views/workflow/design/bpmn/components/ApproveRules.vue +++ b/src/views/workflow/design/bpmn/components/ApproveRules.vue @@ -5,7 +5,7 @@ style="width: 100%" :tree-data="autoAgreeRuleOptions" tree-checkable - allow-clear + ow-clear :placeholder="t('请选择自动同意规则')" @change="changeAutoAgreeRule" /> @@ -26,6 +26,59 @@ @change="changeDesignatedApprover" /> + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/views/workflow/design/bpmn/components/ApproveUserRules.vue b/src/views/workflow/design/bpmn/components/ApproveUserRules.vue index 9085289..bb1f6fa 100644 --- a/src/views/workflow/design/bpmn/components/ApproveUserRules.vue +++ b/src/views/workflow/design/bpmn/components/ApproveUserRules.vue @@ -103,11 +103,11 @@ }, minApprover: { type: Number, - default: 0, + default: null, }, maxApprover: { type: Number, - default: 0, + default: null, }, }); diff --git a/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue b/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue index 4995443..9063cbd 100644 --- a/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue +++ b/src/views/workflow/design/bpmn/components/member/MemberUserTable.vue @@ -51,11 +51,11 @@ }, maxCirculate: { type: Number, - default: 0, + default: null, }, minCirculate: { type: Number, - default: 0, + default: null, }, }); diff --git a/src/views/workflow/design/bpmn/config/property.ts b/src/views/workflow/design/bpmn/config/property.ts index c5487c7..43f915c 100644 --- a/src/views/workflow/design/bpmn/config/property.ts +++ b/src/views/workflow/design/bpmn/config/property.ts @@ -75,6 +75,10 @@ export const initProperties = (id: InfoId, type: InfoType, name: string, parentI properties.autoAgreeRule = processInfo.autoAgreeRule; properties.noHandler = processInfo.noHandler; properties.isPrevChooseNext = processInfo.isPrevChooseNext; + properties.minApprover = processInfo.minApprover; + properties.maxApprover = processInfo.maxApprover; + properties.maxCirculate = processInfo.maxCirculate; + properties.minCirculate = processInfo.minCirculate; } if (id === 'Activity_draft') { // 将草稿节点的审批人设置为流程发起者 diff --git a/src/views/workflow/design/bpmn/config/propertyConfig.ts b/src/views/workflow/design/bpmn/config/propertyConfig.ts index d0662a3..f4ef585 100644 --- a/src/views/workflow/design/bpmn/config/propertyConfig.ts +++ b/src/views/workflow/design/bpmn/config/propertyConfig.ts @@ -46,6 +46,10 @@ export const processConfig: ProcessConfig = { nameRule: '', //命名规则 nameRuleConfigs: [], // 命名规则列表 autoAgreeRule: [], //自动同意规则 + minApprover: '', //最少审批人 + maxApprover: '', //最多审批人 + maxCirculate: '', //最多传阅人 + minCirculate: '', //最少传阅人 isPrevChooseNext: DesignatedApprover.NOT_SPECIFIED, //是否上一节点审批人指定下一节点审批人 noHandler: NoHandler.ADMIN, //无对应处理人 appShow: false, //移动端是否显示 diff --git a/src/views/workflow/design/bpmn/panel/process/basic/Index.vue b/src/views/workflow/design/bpmn/panel/process/basic/Index.vue index e1a7fcd..f7b23c0 100644 --- a/src/views/workflow/design/bpmn/panel/process/basic/Index.vue +++ b/src/views/workflow/design/bpmn/panel/process/basic/Index.vue @@ -28,6 +28,14 @@ v-model:autoAgreeRule="processInfo.autoAgreeRule" v-model:noHandler="processInfo.noHandler" v-model:isPrevChooseNext="processInfo.isPrevChooseNext" + v-model:provisionalApprover="processInfo.provisionalApprover" + v-model:isChooseMulti="processInfo.isChooseMulti" + v-model:isChooseAll="processInfo.isChooseAll" + v-model:isReadOnly="processInfo.isReadOnly" + v-model:minApprover="processInfo.minApprover" + v-model:maxApprover="processInfo.maxApprover" + v-model:maxCirculate="processInfo.maxCirculate" + v-model:minCirculate="processInfo.minCirculate" /> From c794fe51cbacf1f60a567107c8077a4773f01f65 Mon Sep 17 00:00:00 2001 From: "825299534@qq.com" Date: Tue, 29 Apr 2025 15:02:48 +0800 Subject: [PATCH 7/9] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=8F=96=E6=B5=81=E7=A8=8B=E5=85=A8=E5=B1=80?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=202.=E4=BF=AE=E5=A4=8D=E7=BC=BA=E9=99=B7,?= =?UTF-8?q?=E5=AE=A1=E6=89=B9=E5=8F=96=E4=B8=8B=E4=B8=AA=E8=8A=82=E7=82=B9?= =?UTF-8?q?=E7=9A=84=E9=99=90=E5=88=B6=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/workflow/design/bpmn/components/ApproveRules.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/workflow/design/bpmn/components/ApproveRules.vue b/src/views/workflow/design/bpmn/components/ApproveRules.vue index d0d05af..818f3a7 100644 --- a/src/views/workflow/design/bpmn/components/ApproveRules.vue +++ b/src/views/workflow/design/bpmn/components/ApproveRules.vue @@ -5,7 +5,7 @@ style="width: 100%" :tree-data="autoAgreeRuleOptions" tree-checkable - ow-clear + allow-clear :placeholder="t('请选择自动同意规则')" @change="changeAutoAgreeRule" /> From 99e753a13da7231305be0dbd347984e47af4e0be Mon Sep 17 00:00:00 2001 From: "825299534@qq.com" Date: Thu, 8 May 2025 10:24:19 +0800 Subject: [PATCH 8/9] =?UTF-8?q?=E8=A1=A8=E5=8D=95=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E6=9F=A5=E7=9C=8B=E4=BA=8B=E4=BB=B6=E7=BC=BA=E9=99=B7=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/form/template/index.vue | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/views/form/template/index.vue b/src/views/form/template/index.vue index b44a789..69f6546 100644 --- a/src/views/form/template/index.vue +++ b/src/views/form/template/index.vue @@ -578,17 +578,23 @@ } function handleView(record: Recordable) { - if (record.workflowData?.taskIds && record.workflowData.taskIds.length) { - const { processId, schemaId } = record.workflowData; + const { processId, taskIds, schemaId } = record.workflowData || {}; + if (taskIds && taskIds.length) { router.push({ path: '/flow/' + schemaId + '/' + (processId || '') + '/approveFlow', query: { - readonly: 1, - taskId: '', - rtId: currentRoute.value.query.rtId + taskId: taskIds[0], } }); - } else { + } else if (schemaId && !taskIds && processId) { + router.push({ + path: '/flow/' + schemaId + '/' + processId + '/approveFlow', + query: { + readonly: 1, + taskId: '', + } + }); + }else { const info = { id: record[pkField.value], releaseId: menuId.value, From 17ee1fe96281574175b6fcdbe6889b6db1f701a4 Mon Sep 17 00:00:00 2001 From: "825299534@qq.com" Date: Thu, 8 May 2025 11:39:01 +0800 Subject: [PATCH 9/9] =?UTF-8?q?=E8=8D=89=E7=A8=BF=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=BE=85=E5=8A=9E=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/workflow/task/components/processTasks/Drafts.vue | 5 +++++ src/views/workflow/task/components/processTasks/DraftsV2.vue | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/src/views/workflow/task/components/processTasks/Drafts.vue b/src/views/workflow/task/components/processTasks/Drafts.vue index 9f03b59..e2e4e69 100644 --- a/src/views/workflow/task/components/processTasks/Drafts.vue +++ b/src/views/workflow/task/components/processTasks/Drafts.vue @@ -52,6 +52,11 @@ dataIndex: 'taskName', align: 'left', }, + { + title: t('流程待办名称'), + dataIndex: 'processName', + align: 'left', + }, { title: t('流程发起者'), dataIndex: 'originator', diff --git a/src/views/workflow/task/components/processTasks/DraftsV2.vue b/src/views/workflow/task/components/processTasks/DraftsV2.vue index a882f82..b1f2893 100644 --- a/src/views/workflow/task/components/processTasks/DraftsV2.vue +++ b/src/views/workflow/task/components/processTasks/DraftsV2.vue @@ -36,6 +36,11 @@ const configColumns = [ dataIndex: 'taskName', align: 'left', }, + { + title: t('流程待办名称'), + dataIndex: 'processName', + align: 'left', + }, { title: t('流程发起者'), dataIndex: 'originator',