From 41d85a4d28d21d60b654b6263b492bd7113f5d7b Mon Sep 17 00:00:00 2001 From: Your Name Date: Thu, 5 Mar 2026 10:37:09 +0800 Subject: [PATCH] =?UTF-8?q?feat(frontend):=20=E6=9B=B4=E6=96=B0=E5=89=8D?= =?UTF-8?q?=E7=AB=AF=E5=AE=A1=E6=89=B9=E6=9C=8D=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加submitApproval提交审批方法 - 添加cancelApproval取消审批方法 - 更新getPendingApprovals/getApprovedList/getMyApplications方法传递userId - 更新approve方法支持operatorId参数 --- frontend/admin/src/services/approval.ts | 55 +++++++++++++++++++++---- 1 file changed, 48 insertions(+), 7 deletions(-) diff --git a/frontend/admin/src/services/approval.ts b/frontend/admin/src/services/approval.ts index 4b0ee30..6e169c4 100644 --- a/frontend/admin/src/services/approval.ts +++ b/frontend/admin/src/services/approval.ts @@ -161,8 +161,8 @@ class ApprovalService { /** * 获取待审批列表 */ - async getPendingApprovals(): Promise { - const response = await fetch(`${this.baseUrl}/approval/pending`, { + async getPendingApprovals(userId: number): Promise { + const response = await fetch(`${this.baseUrl}/approval/pending?userId=${userId}`, { credentials: 'include' }) const result = await response.json() as ApiResponse @@ -175,8 +175,8 @@ class ApprovalService { /** * 获取已审批列表 */ - async getApprovedList(): Promise { - const response = await fetch(`${this.baseUrl}/approval/approved`, { + async getApprovedList(userId: number): Promise { + const response = await fetch(`${this.baseUrl}/approval/processed?userId=${userId}`, { credentials: 'include' }) const result = await response.json() as ApiResponse @@ -189,8 +189,8 @@ class ApprovalService { /** * 获取我发起的审批 */ - async getMyApplications(): Promise { - const response = await fetch(`${this.baseUrl}/approval/my`, { + async getMyApplications(userId: number): Promise { + const response = await fetch(`${this.baseUrl}/approval/my?userId=${userId}`, { credentials: 'include' }) const result = await response.json() as ApiResponse @@ -205,7 +205,8 @@ class ApprovalService { */ async approve(data: { recordId: number - action: 'approve' | 'reject' | 'transfer' + action: 'APPROVE' | 'REJECT' | 'TRANSFER' + operatorId: number comment?: string }): Promise { const response = await fetch(`${this.baseUrl}/approval/handle`, { @@ -220,6 +221,46 @@ class ApprovalService { } } + /** + * 提交审批申请 + */ + async submitApproval(data: { + flowId: number + bizType: string + bizId: number + title: string + applicantId: number + applyReason: string + }): Promise { + const response = await fetch(`${this.baseUrl}/approval/submit`, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + credentials: 'include', + body: JSON.stringify(data) + }) + const result = await response.json() as ApiResponse<{ recordId: number }> + if (result.code !== 200) { + throw new Error(result.message || '提交审批失败') + } + return result.data.recordId + } + + /** + * 取消审批 + */ + async cancelApproval(recordId: number, operatorId: number): Promise { + const response = await fetch(`${this.baseUrl}/approval/cancel`, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + credentials: 'include', + body: JSON.stringify({ recordId, operatorId }) + }) + const result = await response.json() as ApiResponse + if (result.code !== 200) { + throw new Error(result.message || '取消审批失败') + } + } + /** * 获取审批记录详情 */