From b0ee494434f103f52e965e8343d4d1ec31f35cdc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= Date: Mon, 5 Jan 2026 14:38:22 +0800 Subject: [PATCH] =?UTF-8?q?feat(flow):=20=E6=B7=BB=E5=8A=A0=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=AE=9E=E4=BE=8B=E6=9B=B4=E6=96=B0=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=B9=B6=E7=A6=81=E7=94=A8=E6=92=A4=E5=9B=9E=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加updateFlowInstance API用于更新流程实例 在所有详情页面禁用撤回功能 修改审批状态从pending到running 在抄送页面添加详情跳转功能 --- klp-ui/src/api/hrm/flow.js | 8 +++ klp-ui/src/views/hrm/flow/cc.vue | 65 ++++++++++++------- klp-ui/src/views/hrm/requests/apply.vue | 24 +++++-- klp-ui/src/views/hrm/requests/leaveDetail.vue | 1 + .../views/hrm/requests/reimburseDetail.vue | 1 + klp-ui/src/views/hrm/requests/sealDetail.vue | 9 +-- .../src/views/hrm/requests/travelDetail.vue | 1 + 7 files changed, 79 insertions(+), 30 deletions(-) diff --git a/klp-ui/src/api/hrm/flow.js b/klp-ui/src/api/hrm/flow.js index fc361d5a..d6591163 100644 --- a/klp-ui/src/api/hrm/flow.js +++ b/klp-ui/src/api/hrm/flow.js @@ -9,6 +9,14 @@ export function listFlowTask(query) { }) } +export function updateFlowInstance(data) { + return request({ + url: '/hrm/flow/instance', + method: 'put', + data + }) +} + export function listTodoFlowTask(assigneeUserId) { return request({ url: '/hrm/flow/task/todo', diff --git a/klp-ui/src/views/hrm/flow/cc.vue b/klp-ui/src/views/hrm/flow/cc.vue index 0773cbef..99ae2e5b 100644 --- a/klp-ui/src/views/hrm/flow/cc.vue +++ b/klp-ui/src/views/hrm/flow/cc.vue @@ -21,43 +21,31 @@ - + - + - + - + @@ -100,6 +88,34 @@ export default { this.queryParams.readFlag = this.activeTab === 'read' ? 1 : 0 this.getList() }, + handleDetail(row) { + if (!row || !row.bizId || !row.bizType) { + this.$message.warning('缺少businessKey,无法打开详情') + return + } + const { bizId, bizType: type } = row + if (!bizId) { + this.$message.warning('businessKey格式不正确,无法解析业务ID') + return + } + + const pathMap = { + leave: '/hrm/HrmLeaveDetail', + travel: '/hrm/HrmTravelDetail', + seal: '/hrm/HrmSealDetail', + reimburse: '/hrm/HrmReimburseDetail' + } + const routePath = pathMap[type] + + if (routePath) { + this.$router.push({ + path: routePath, + query: { bizId: bizId } + }) + } else { + this.$message.warning('无法确定申请类型对应的详情页面') + } + }, getList() { this.loading = true listCc({ ...this.queryParams, ccUserId: this.currentUserId }) @@ -131,21 +147,26 @@ export default { .flow-cc-container { padding: 20px 20px 0 20px; } + .card-header { display: flex; align-items: center; height: 32px; } + .card-title { font-size: 16px; font-weight: 600; } + .badge { margin-left: 6px; } + /* 未读行高亮(柔和背景,不用渐变) */ .row-unread td { - background-color: #fdf6ec !important; /* Element UI warning-light */ + background-color: #fdf6ec !important; + /* Element UI warning-light */ font-weight: 600; } diff --git a/klp-ui/src/views/hrm/requests/apply.vue b/klp-ui/src/views/hrm/requests/apply.vue index 102cf565..d57a2be6 100644 --- a/klp-ui/src/views/hrm/requests/apply.vue +++ b/klp-ui/src/views/hrm/requests/apply.vue @@ -55,7 +55,7 @@ > - + @@ -82,7 +82,8 @@ -->