style: 使用ruff格式化在线用户模块,优化导入
This commit is contained in:
@@ -1,29 +1,36 @@
|
|||||||
from fastapi import APIRouter
|
from fastapi import APIRouter, Depends, Request
|
||||||
from fastapi import Depends
|
from sqlalchemy.ext.asyncio import AsyncSession
|
||||||
from config.get_db import get_db
|
|
||||||
from module_admin.service.login_service import LoginService, AsyncSession
|
|
||||||
from module_admin.service.online_service import *
|
|
||||||
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
|
|
||||||
from module_admin.annotation.log_annotation import log_decorator
|
|
||||||
from config.enums import BusinessType
|
from config.enums import BusinessType
|
||||||
from utils.response_util import *
|
from config.get_db import get_db
|
||||||
from utils.log_util import *
|
from module_admin.annotation.log_annotation import log_decorator
|
||||||
from utils.page_util import *
|
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
|
||||||
|
from module_admin.entity.vo.online_vo import DeleteOnlineModel, OnlineQueryModel
|
||||||
|
from module_admin.service.login_service import LoginService
|
||||||
|
from module_admin.service.online_service import OnlineService
|
||||||
|
from utils.log_util import logger
|
||||||
|
from utils.page_util import PageResponseModel
|
||||||
|
from utils.response_util import ResponseUtil
|
||||||
|
|
||||||
|
|
||||||
onlineController = APIRouter(prefix='/monitor/online', dependencies=[Depends(LoginService.get_current_user)])
|
onlineController = APIRouter(prefix='/monitor/online', dependencies=[Depends(LoginService.get_current_user)])
|
||||||
|
|
||||||
|
|
||||||
@onlineController.get("/list", response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('monitor:online:list'))])
|
@onlineController.get(
|
||||||
async def get_monitor_online_list(request: Request, online_page_query: OnlineQueryModel = Depends(OnlineQueryModel.as_query)):
|
'/list', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('monitor:online:list'))]
|
||||||
|
)
|
||||||
|
async def get_monitor_online_list(
|
||||||
|
request: Request, online_page_query: OnlineQueryModel = Depends(OnlineQueryModel.as_query)
|
||||||
|
):
|
||||||
# 获取全量数据
|
# 获取全量数据
|
||||||
online_query_result = await OnlineService.get_online_list_services(request, online_page_query)
|
online_query_result = await OnlineService.get_online_list_services(request, online_page_query)
|
||||||
logger.info('获取成功')
|
logger.info('获取成功')
|
||||||
|
|
||||||
return ResponseUtil.success(model_content=PageResponseModel(rows=online_query_result, total=len(online_query_result)))
|
return ResponseUtil.success(
|
||||||
|
model_content=PageResponseModel(rows=online_query_result, total=len(online_query_result))
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@onlineController.delete("/{token_ids}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:online:forceLogout'))])
|
@onlineController.delete('/{token_ids}', dependencies=[Depends(CheckUserInterfaceAuth('monitor:online:forceLogout'))])
|
||||||
@log_decorator(title='在线用户', business_type=BusinessType.FORCE)
|
@log_decorator(title='在线用户', business_type=BusinessType.FORCE)
|
||||||
async def delete_monitor_online(request: Request, token_ids: str, query_db: AsyncSession = Depends(get_db)):
|
async def delete_monitor_online(request: Request, token_ids: str, query_db: AsyncSession = Depends(get_db)):
|
||||||
delete_online = DeleteOnlineModel(tokenIds=token_ids)
|
delete_online = DeleteOnlineModel(tokenIds=token_ids)
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
|
from datetime import datetime
|
||||||
from pydantic import BaseModel, ConfigDict, Field
|
from pydantic import BaseModel, ConfigDict, Field
|
||||||
from pydantic.alias_generators import to_camel
|
from pydantic.alias_generators import to_camel
|
||||||
from typing import Union, Optional, List
|
from typing import Optional
|
||||||
from datetime import datetime
|
|
||||||
from module_admin.annotation.pydantic_annotation import as_query
|
from module_admin.annotation.pydantic_annotation import as_query
|
||||||
|
|
||||||
|
|
||||||
@@ -9,6 +9,7 @@ class OnlineModel(BaseModel):
|
|||||||
"""
|
"""
|
||||||
在线用户对应pydantic模型
|
在线用户对应pydantic模型
|
||||||
"""
|
"""
|
||||||
|
|
||||||
model_config = ConfigDict(alias_generator=to_camel)
|
model_config = ConfigDict(alias_generator=to_camel)
|
||||||
|
|
||||||
token_id: Optional[str] = Field(default=None, description='会话编号')
|
token_id: Optional[str] = Field(default=None, description='会话编号')
|
||||||
@@ -26,6 +27,7 @@ class OnlineQueryModel(OnlineModel):
|
|||||||
"""
|
"""
|
||||||
岗位管理不分页查询模型
|
岗位管理不分页查询模型
|
||||||
"""
|
"""
|
||||||
|
|
||||||
begin_time: Optional[str] = Field(default=None, description='开始时间')
|
begin_time: Optional[str] = Field(default=None, description='开始时间')
|
||||||
end_time: Optional[str] = Field(default=None, description='结束时间')
|
end_time: Optional[str] = Field(default=None, description='结束时间')
|
||||||
|
|
||||||
@@ -34,6 +36,7 @@ class DeleteOnlineModel(BaseModel):
|
|||||||
"""
|
"""
|
||||||
强退在线用户模型
|
强退在线用户模型
|
||||||
"""
|
"""
|
||||||
|
|
||||||
model_config = ConfigDict(alias_generator=to_camel)
|
model_config = ConfigDict(alias_generator=to_camel)
|
||||||
|
|
||||||
token_ids: str = Field(description='需要强退的会话编号')
|
token_ids: str = Field(description='需要强退的会话编号')
|
||||||
|
@@ -1,9 +1,9 @@
|
|||||||
from fastapi import Request
|
from fastapi import Request
|
||||||
from jose import jwt
|
from jose import jwt
|
||||||
from config.env import JwtConfig, RedisInitKeyConfig
|
from config.env import JwtConfig, RedisInitKeyConfig
|
||||||
from module_admin.entity.vo.online_vo import *
|
|
||||||
from module_admin.entity.vo.common_vo import CrudResponseModel
|
|
||||||
from exceptions.exception import ServiceException
|
from exceptions.exception import ServiceException
|
||||||
|
from module_admin.entity.vo.common_vo import CrudResponseModel
|
||||||
|
from module_admin.entity.vo.online_vo import DeleteOnlineModel, OnlineQueryModel
|
||||||
from utils.common_util import CamelCaseUtil
|
from utils.common_util import CamelCaseUtil
|
||||||
|
|
||||||
|
|
||||||
@@ -35,7 +35,7 @@ class OnlineService:
|
|||||||
login_location=payload.get('login_info').get('loginLocation'),
|
login_location=payload.get('login_info').get('loginLocation'),
|
||||||
browser=payload.get('login_info').get('browser'),
|
browser=payload.get('login_info').get('browser'),
|
||||||
os=payload.get('login_info').get('os'),
|
os=payload.get('login_info').get('os'),
|
||||||
login_time=payload.get('login_info').get('loginTime')
|
login_time=payload.get('login_info').get('loginTime'),
|
||||||
)
|
)
|
||||||
if query_object.user_name and not query_object.ipaddr:
|
if query_object.user_name and not query_object.ipaddr:
|
||||||
if query_object.user_name == payload.get('login_info').get('ipaddr'):
|
if query_object.user_name == payload.get('login_info').get('ipaddr'):
|
||||||
@@ -46,7 +46,9 @@ class OnlineService:
|
|||||||
online_info_list = [online_dict]
|
online_info_list = [online_dict]
|
||||||
break
|
break
|
||||||
elif query_object.user_name and query_object.ipaddr:
|
elif query_object.user_name and query_object.ipaddr:
|
||||||
if query_object.user_name == payload.get('user_name') and query_object.ipaddr == payload.get('login_info').get('ipaddr'):
|
if query_object.user_name == payload.get('user_name') and query_object.ipaddr == payload.get(
|
||||||
|
'login_info'
|
||||||
|
).get('ipaddr'):
|
||||||
online_info_list = [online_dict]
|
online_info_list = [online_dict]
|
||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
|
Reference in New Issue
Block a user