fix: 修复注册异常,删除用户异常,调整用户信息存储时间
This commit is contained in:
14
api/user.py
14
api/user.py
@@ -20,7 +20,7 @@ from controller.login import LoginController
|
||||
from controller.query import QueryController
|
||||
from exceptions.exception import ModelValidatorException
|
||||
from models import File as FileModel
|
||||
from models import Role, Department
|
||||
from models import Role, Department, OperationLog, LoginLog
|
||||
from models.user import User, UserRole
|
||||
from schemas.common import BaseResponse, DeleteListParams
|
||||
from schemas.department import GetDepartmentListResponse
|
||||
@@ -76,6 +76,18 @@ async def delete_user(
|
||||
if user := await User.get_or_none(id=id, department__id__in=sub_departments, del_flag=1):
|
||||
user.del_flag = 0
|
||||
await user.save()
|
||||
# 移除用户角色
|
||||
await UserRole.filter(user_id=user.id, del_flag=1).update(del_flag=0)
|
||||
# 移除用户登录日志
|
||||
await LoginLog.filter(user_id=user.id, del_flag=1).update(del_flag=0)
|
||||
# 移除用户操作日志
|
||||
await OperationLog.filter(user_id=user.id, del_flag=1).update(del_flag=0)
|
||||
# 更新用户信息缓存
|
||||
if await request.app.state.redis.get(f'{RedisKeyConfig.USER_INFO.key}:{id}'):
|
||||
await request.app.state.redis.delete(f'{RedisKeyConfig.USER_INFO.key}:{id}')
|
||||
# 更新用户路由缓存
|
||||
if await request.app.state.redis.get(f'{RedisKeyConfig.USER_ROUTES.key}:{id}'):
|
||||
await request.app.state.redis.delete(f'{RedisKeyConfig.USER_ROUTES.key}:{id}')
|
||||
return Response.success(msg="删除成功!")
|
||||
else:
|
||||
return Response.error(msg="删除失败,用户不存在!")
|
||||
|
||||
Reference in New Issue
Block a user