refactor: permission

This commit is contained in:
wxg0103 2025-06-18 20:21:25 +08:00
parent 395f3f91ec
commit 4e5285ce23

View File

@ -93,6 +93,8 @@ class SwitchUserLanguageView(APIView):
) )
@log(menu='User management', operate='Switch Language', @log(menu='User management', operate='Switch Language',
get_operation_object=lambda r, k: {'name': r.user.username}) 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): def post(self, request: Request):
data = {**request.data, 'user_id': request.user.id} data = {**request.data, 'user_id': request.user.id}
return result.success(SwitchLanguageSerializer(data=data).switch()) return result.success(SwitchLanguageSerializer(data=data).switch())
@ -359,6 +361,8 @@ class ResetCurrentUserPasswordView(APIView):
@log(menu='User management', operate='Modify current user password', @log(menu='User management', operate='Modify current user password',
get_operation_object=lambda r, k: {'name': r.user.username}, get_operation_object=lambda r, k: {'name': r.user.username},
get_details=get_re_password_details) get_details=get_re_password_details)
@has_permissions(PermissionConstants.CHANGE_PASSWORD, RoleConstants.ADMIN, RoleConstants.USER,
RoleConstants.WORKSPACE_MANAGE)
def post(self, request: Request): def post(self, request: Request):
serializer_obj = RePasswordSerializer(data=request.data) serializer_obj = RePasswordSerializer(data=request.data)
if serializer_obj.reset_password(request.user.id): if serializer_obj.reset_password(request.user.id):