From 87432a74c26b88e68950fcb179fc4d2c84fc30ad Mon Sep 17 00:00:00 2001 From: Wu Clan Date: Sun, 1 Sep 2024 20:23:25 +0800 Subject: [PATCH] Fix the user permissions update services (#397) --- backend/app/admin/service/user_service.py | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/backend/app/admin/service/user_service.py b/backend/app/admin/service/user_service.py index 4ed38220..592c01ce 100644 --- a/backend/app/admin/service/user_service.py +++ b/backend/app/admin/service/user_service.py @@ -162,12 +162,11 @@ class UserService: if not await user_dao.get(db, pk): raise errors.NotFoundError(msg='用户不存在') else: - user_id = request.user.id - if pk == user_id: + if pk == request.user.id: raise errors.ForbiddenError(msg='非法操作') - super_status = await user_dao.get_super(db, user_id) + super_status = await user_dao.get_super(db, pk) count = await user_dao.set_super(db, pk, False if super_status else True) - await redis_client.delete(f'{settings.USER_REDIS_PREFIX}:{request.user.id}') + await redis_client.delete(f'{settings.USER_REDIS_PREFIX}:{pk}') return count @staticmethod @@ -177,12 +176,11 @@ class UserService: if not await user_dao.get(db, pk): raise errors.NotFoundError(msg='用户不存在') else: - user_id = request.user.id - if pk == user_id: + if pk == request.user.id: raise errors.ForbiddenError(msg='非法操作') - staff_status = await user_dao.get_staff(db, user_id) + staff_status = await user_dao.get_staff(db, pk) count = await user_dao.set_staff(db, pk, False if staff_status else True) - await redis_client.delete(f'{settings.USER_REDIS_PREFIX}:{request.user.id}') + await redis_client.delete(f'{settings.USER_REDIS_PREFIX}:{pk}') return count @staticmethod @@ -192,12 +190,11 @@ class UserService: if not await user_dao.get(db, pk): raise errors.NotFoundError(msg='用户不存在') else: - user_id = request.user.id - if pk == user_id: + if pk == request.user.id: raise errors.ForbiddenError(msg='非法操作') - status = await user_dao.get_status(db, user_id) + status = await user_dao.get_status(db, pk) count = await user_dao.set_status(db, pk, False if status else True) - await redis_client.delete(f'{settings.USER_REDIS_PREFIX}:{request.user.id}') + await redis_client.delete(f'{settings.USER_REDIS_PREFIX}:{pk}') return count @staticmethod