From d7c09e230f4f8233d8c5e27742baf1b7ac5e79fc Mon Sep 17 00:00:00 2001 From: XingQue Date: Sun, 28 Jun 2026 22:47:57 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20menu=5Faccess=20=E8=BF=94=E5=9B=9E=20per?= =?UTF-8?q?mission=5Fcodes=20=E4=BE=BF=E4=BA=8E=E6=8E=92=E6=9F=A5=E6=97=A0?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jituan/services/kefu_menu.py | 7 +++++++ jituan/views.py | 2 ++ 2 files changed, 9 insertions(+) diff --git a/jituan/services/kefu_menu.py b/jituan/services/kefu_menu.py index 65d2909..3c10be1 100644 --- a/jituan/services/kefu_menu.py +++ b/jituan/services/kefu_menu.py @@ -38,6 +38,12 @@ def _page_visible(page, permissions, user): return any(code in permissions for code in codes) +def _permission_codes_list(permissions): + if _is_super_permissions(permissions): + return ['000001'] + return list(permissions) if permissions else [] + + def build_menu_access_payload(request, username=None): """ 根据用户 gvsdsdk 权限计算可见菜单 page_id 列表。 @@ -79,6 +85,7 @@ def build_menu_access_payload(request, username=None): return { 'visible_page_ids': sorted(set(visible_ids)), 'visible_paths': visible_paths, + 'permission_codes': _permission_codes_list(permissions), 'can_switch_club': bool(club_ctx.get('can_switch_club')), 'is_group_admin': bool(club_ctx.get('is_group_admin')), 'menu_ready': bool(pages), diff --git a/jituan/views.py b/jituan/views.py index 629e2bf..a9ff4a1 100644 --- a/jituan/views.py +++ b/jituan/views.py @@ -169,8 +169,10 @@ class ClubKefuLoginView(APIView): 'menu_access': menu_access if menu_access else { 'visible_page_ids': [], 'visible_paths': [], + 'permission_codes': [], 'can_switch_club': False, 'is_group_admin': False, + 'menu_ready': False, }, }, })