From a11ed15d3ba3276a484ff327db512bc63cf0c07f Mon Sep 17 00:00:00 2001 From: jason <2667446@qq.com> Date: Tue, 13 Jan 2026 14:23:57 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20[bpm]=20=E6=B5=81=E7=A8=8B=E5=8F=96?= =?UTF-8?q?=E6=B6=88=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../detail/components/operation-button.vue | 63 +++++++-- .../processInstance/detail/index.vue | 27 ++-- .../detail/process-cancel/index.vue | 133 ++++++++++++++++++ src/store/user.ts | 2 + src/utils/constants/biz-bpm-enum.ts | 6 +- 5 files changed, 206 insertions(+), 25 deletions(-) create mode 100644 src/pages-bpm/processInstance/detail/process-cancel/index.vue diff --git a/src/pages-bpm/processInstance/detail/components/operation-button.vue b/src/pages-bpm/processInstance/detail/components/operation-button.vue index 1076eba..f209081 100644 --- a/src/pages-bpm/processInstance/detail/components/operation-button.vue +++ b/src/pages-bpm/processInstance/detail/components/operation-button.vue @@ -33,12 +33,24 @@ - + + + + 取消 + + diff --git a/src/pages-bpm/processInstance/detail/index.vue b/src/pages-bpm/processInstance/detail/index.vue index 519aa5c..196a33c 100644 --- a/src/pages-bpm/processInstance/detail/index.vue +++ b/src/pages-bpm/processInstance/detail/index.vue @@ -12,32 +12,31 @@ - {{ processInstance.name }} - - {{ getStatusText(processInstance.status) }} + {{ processInstance?.name }} + + {{ getStatusText(processInstance?.status) }} - {{ processInstance.startUser?.nickname?.[0] || '?' }} + {{ processInstance?.startUser?.nickname?.[0] || '?' }} - {{ processInstance.startUser?.nickname }} - - {{ processInstance.startUser?.deptName }} + {{ processInstance?.startUser?.nickname }} + + {{ processInstance?.startUser?.deptName }} - 提交于 {{ formatDateTime(processInstance.startTime) }} + 提交于 {{ formatDateTime(processInstance?.startTime) }} - @@ -89,7 +88,7 @@ - + @@ -120,8 +119,8 @@ definePage({ const userStore = useUserStore() const toast = useToast() -const processInstance = ref>({}) -const processDefinition = ref>({}) +const processInstance = ref() +const processDefinition = ref() const tasks = ref([]) const orderAsc = ref(true) @@ -238,8 +237,8 @@ async function loadProcessInstance() { return } processInstance.value = data.processInstance - processDefinition.value = data.processDefinition || {} - operationButtonRef.value?.loadTodoTask(data.todoTask) + processDefinition.value = data.processDefinition + operationButtonRef.value?.init(data.processInstance, data.todoTask) } /** 加载任务列表 */ diff --git a/src/pages-bpm/processInstance/detail/process-cancel/index.vue b/src/pages-bpm/processInstance/detail/process-cancel/index.vue new file mode 100644 index 0000000..d360bea --- /dev/null +++ b/src/pages-bpm/processInstance/detail/process-cancel/index.vue @@ -0,0 +1,133 @@ + + + diff --git a/src/store/user.ts b/src/store/user.ts index 651d080..6577f03 100644 --- a/src/store/user.ts +++ b/src/store/user.ts @@ -63,6 +63,8 @@ export const useUserStore = defineStore( /** 获取用户信息 */ const fetchUserInfo = async () => { const res = await getAuthPermissionInfo() + // 后端返回的用户 Id 字段为 id. + res.user.userId = res.user.id setUserInfo(res) return res } diff --git a/src/utils/constants/biz-bpm-enum.ts b/src/utils/constants/biz-bpm-enum.ts index 32cdceb..1149c1d 100644 --- a/src/utils/constants/biz-bpm-enum.ts +++ b/src/utils/constants/biz-bpm-enum.ts @@ -151,6 +151,10 @@ export enum BpmTaskOperationButtonTypeEnum { * 减签 */ DELETE_SIGN = 8, + /** + * 流程发起人取消 + */ + PROCESS_START_CANCEL = 9, /** * 拒绝 */ @@ -163,7 +167,6 @@ export enum BpmTaskOperationButtonTypeEnum { * 转办 */ TRANSFER = 3, - } /** @@ -292,6 +295,7 @@ OPERATION_BUTTON_NAME.set(BpmTaskOperationButtonTypeEnum.ADD_SIGN, '加签') OPERATION_BUTTON_NAME.set(BpmTaskOperationButtonTypeEnum.RETURN, '退回') OPERATION_BUTTON_NAME.set(BpmTaskOperationButtonTypeEnum.COPY, '抄送') OPERATION_BUTTON_NAME.set(BpmTaskOperationButtonTypeEnum.DELETE_SIGN, '减签') +OPERATION_BUTTON_NAME.set(BpmTaskOperationButtonTypeEnum.PROCESS_START_CANCEL, '取消') /** * 流程实例的变量枚举