From 05832e913b3ddfb2ea6d627a911e1cf94c75471b Mon Sep 17 00:00:00 2001 From: yueli Date: Fri, 17 Jul 2026 15:17:26 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20can=5Fapprove=20=E5=A2=9E=E5=8A=A0=20out?= =?UTF-8?q?bound=5Fapproval:operation=20RBAC=20=E6=9D=83=E9=99=90=E5=88=A4?= =?UTF-8?q?=E6=96=AD=EF=BC=8C=E5=89=8D=E7=AB=AF=E6=8C=89=E9=92=AE=E6=9D=83?= =?UTF-8?q?=E9=99=90=E4=B8=8E=E5=90=8E=E7=AB=AF=E5=AE=A1=E6=89=B9=E6=9D=83?= =?UTF-8?q?=E9=99=90=E7=BB=9F=E4=B8=80=E5=AF=B9=E9=BD=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- inventory-backend/app/services/outbound_service.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/inventory-backend/app/services/outbound_service.py b/inventory-backend/app/services/outbound_service.py index ad20ccc..5b336cd 100644 --- a/inventory-backend/app/services/outbound_service.py +++ b/inventory-backend/app/services/outbound_service.py @@ -846,6 +846,16 @@ class OutboundApprovalService: if user_role and user_role.upper() == 'SUPER_ADMIN': return True + # 拥有 outbound_approval:operation 权限的用户可以审批任意出库单 + # (前端按钮以此权限控制显示,后端也必须对齐) + from app.models.system import SysRolePermission + has_op = SysRolePermission.query.filter( + SysRolePermission.role_code == user_role, + SysRolePermission.target_code.in_(['outbound_approval:operation', 'outbound_approval:*']) + ).first() is not None + if has_op: + return True + for approver in approvers: approver_type = approver.get('type', '') approver_value = approver.get('value', '')