From 4e5285ce2371065f707aed3d0a65a53dacf18a3d Mon Sep 17 00:00:00 2001 From: wxg0103 <727495428@qq.com> Date: Wed, 18 Jun 2025 20:21:25 +0800 Subject: [PATCH] refactor: permission --- apps/users/views/user.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/users/views/user.py b/apps/users/views/user.py index 20c7be988..eb770eae6 100644 --- a/apps/users/views/user.py +++ b/apps/users/views/user.py @@ -93,6 +93,8 @@ class SwitchUserLanguageView(APIView): ) @log(menu='User management', operate='Switch Language', get_operation_object=lambda r, k: {'name': r.user.username}) + @has_permissions(PermissionConstants.SWITCH_LANGUAGE, RoleConstants.ADMIN, RoleConstants.USER, + RoleConstants.WORKSPACE_MANAGE) def post(self, request: Request): data = {**request.data, 'user_id': request.user.id} return result.success(SwitchLanguageSerializer(data=data).switch()) @@ -206,7 +208,7 @@ class UserManage(APIView): tags=[_("User Management")], # type: ignore request=DeleteUserApi.get_parameters(), responses=UserProfileAPI.get_response()) - @has_permissions(PermissionConstants.USER_READ,RoleConstants.ADMIN) + @has_permissions(PermissionConstants.USER_READ, RoleConstants.ADMIN) def get(self, request: Request, user_id): return result.success(UserManageSerializer.Operate(data={'id': user_id}).one(with_valid=True)) @@ -269,7 +271,7 @@ class UserManage(APIView): tags=[_("User Management")], # type: ignore parameters=UserPageApi.get_parameters(), responses=UserPageApi.get_response()) - @has_permissions(PermissionConstants.USER_READ,RoleConstants.ADMIN) + @has_permissions(PermissionConstants.USER_READ, RoleConstants.ADMIN) def get(self, request: Request, current_page, page_size): d = UserManageSerializer.Query( data={'email_or_username': request.query_params.get('email_or_username', None), @@ -359,6 +361,8 @@ class ResetCurrentUserPasswordView(APIView): @log(menu='User management', operate='Modify current user password', get_operation_object=lambda r, k: {'name': r.user.username}, get_details=get_re_password_details) + @has_permissions(PermissionConstants.CHANGE_PASSWORD, RoleConstants.ADMIN, RoleConstants.USER, + RoleConstants.WORKSPACE_MANAGE) def post(self, request: Request): serializer_obj = RePasswordSerializer(data=request.data) if serializer_obj.reset_password(request.user.id):