feat: 登录日志添加按钮级权限控制

This commit is contained in:
2025-02-22 21:48:17 +08:00
parent 5cf2adf53e
commit ebe180f2f0
2 changed files with 76 additions and 31 deletions

View File

@@ -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