feat: 登录日志添加按钮级权限控制
This commit is contained in:
@@ -239,7 +239,7 @@ class LoginController:
|
||||
return complete_data
|
||||
|
||||
@classmethod
|
||||
async def get_online_user(cls, request: Request) -> list:
|
||||
async def get_online_user(cls, request: Request, sub_departments: list) -> list:
|
||||
"""
|
||||
获取在线用户
|
||||
"""
|
||||
@@ -251,7 +251,8 @@ class LoginController:
|
||||
for item in access_token_values_list:
|
||||
payload = jwt.decode(item, JwtConfig.jwt_secret_key, algorithms=[JwtConfig.jwt_algorithm])
|
||||
session_id = payload.get("session_id")
|
||||
result = await LoginLog.get_or_none(session_id=session_id).values(
|
||||
result = await LoginLog.get_or_none(session_id=session_id, user__department__id__in=sub_departments,
|
||||
del_flag=1).values(
|
||||
id="id",
|
||||
user_id="user__id",
|
||||
username="user__username",
|
||||
@@ -268,5 +269,7 @@ class LoginController:
|
||||
create_time="create_time",
|
||||
update_time="update_time"
|
||||
)
|
||||
if not result:
|
||||
continue
|
||||
online_info_list.append(result)
|
||||
return online_info_list
|
||||
|
||||
Reference in New Issue
Block a user