Browse Source

perf: 优化@log_decorator参数的类型提示

master
insistence 7 months ago
parent
commit
77b4eb10b1
  1. 27
      ruoyi-fastapi-backend/config/enums.py
  2. 12
      ruoyi-fastapi-backend/module_admin/annotation/log_annotation.py
  3. 2
      ruoyi-fastapi-backend/module_admin/controller/cache_controller.py
  4. 15
      ruoyi-fastapi-backend/module_admin/controller/config_controller.py
  5. 11
      ruoyi-fastapi-backend/module_admin/controller/dept_controller.py
  6. 23
      ruoyi-fastapi-backend/module_admin/controller/dict_controller.py
  7. 23
      ruoyi-fastapi-backend/module_admin/controller/job_controller.py
  8. 19
      ruoyi-fastapi-backend/module_admin/controller/log_controller.py
  9. 3
      ruoyi-fastapi-backend/module_admin/controller/login_controller.py
  10. 11
      ruoyi-fastapi-backend/module_admin/controller/menu_controller.py
  11. 11
      ruoyi-fastapi-backend/module_admin/controller/notice_controller.py
  12. 7
      ruoyi-fastapi-backend/module_admin/controller/online_controller.py
  13. 13
      ruoyi-fastapi-backend/module_admin/controller/post_controler.py
  14. 25
      ruoyi-fastapi-backend/module_admin/controller/role_controller.py
  15. 2
      ruoyi-fastapi-backend/module_admin/controller/server_controller.py
  16. 28
      ruoyi-fastapi-backend/module_admin/controller/user_controller.py

27
ruoyi-fastapi-backend/config/enums.py

@ -0,0 +1,27 @@
from enum import Enum
class BusinessType(Enum):
"""
业务操作类型
OTHER: 其它
INSERT: 新增
UPDATE: 修改
DELETE: 删除
GRANT: 授权
EXPORT: 导出
IMPORT: 导入
FORCE: 强退
GENCODE: 生成代码
CLEAN: 清空数据
"""
OTHER = 0
INSERT = 1
UPDATE = 2
DELETE = 3
GRANT = 4
EXPORT = 5
IMPORT = 6
FORCE = 7
GENCODE = 8
CLEAN = 9

12
ruoyi-fastapi-backend/module_admin/annotation/log_annotation.py

@ -7,15 +7,17 @@ import json
import time import time
from datetime import datetime from datetime import datetime
import requests import requests
import warnings
from user_agents import parse from user_agents import parse
from typing import Optional from typing import Optional, Union, Literal
from module_admin.service.login_service import LoginService from module_admin.service.login_service import LoginService
from module_admin.service.log_service import OperationLogService, LoginLogService from module_admin.service.log_service import OperationLogService, LoginLogService
from module_admin.entity.vo.log_vo import OperLogModel, LogininforModel from module_admin.entity.vo.log_vo import OperLogModel, LogininforModel
from config.env import AppConfig from config.env import AppConfig
from config.enums import BusinessType
def log_decorator(title: str, business_type: int, log_type: Optional[str] = 'operation'): def log_decorator(title: str, business_type: Union[Literal[0, 1, 2, 3, 4, 5, 6, 7, 8, 9], BusinessType], log_type: Optional[Literal['login', 'operation']] = 'operation'):
""" """
日志装饰器 日志装饰器
:param log_type: 日志类型login表示登录日志为空表示为操作日志 :param log_type: 日志类型login表示登录日志为空表示为操作日志
@ -23,6 +25,12 @@ def log_decorator(title: str, business_type: int, log_type: Optional[str] = 'ope
:param business_type: 业务类型0其它 1新增 2修改 3删除 4授权 5导出 6导入 7强退 8生成代码 9清空数据 :param business_type: 业务类型0其它 1新增 2修改 3删除 4授权 5导出 6导入 7强退 8生成代码 9清空数据
:return: :return:
""" """
warnings.simplefilter('always', category=DeprecationWarning)
if isinstance(business_type, BusinessType):
business_type = business_type.value
else:
warnings.warn('@log_decorator的business_type参数未来版本将不再支持int类型,请使用BusinessType枚举类型', category=DeprecationWarning, stacklevel=2)
def decorator(func): def decorator(func):
@wraps(func) @wraps(func)
async def wrapper(*args, **kwargs): async def wrapper(*args, **kwargs):

2
ruoyi-fastapi-backend/module_admin/controller/cache_controller.py

@ -2,9 +2,9 @@ from fastapi import APIRouter
from fastapi import Depends from fastapi import Depends
from module_admin.service.login_service import LoginService from module_admin.service.login_service import LoginService
from module_admin.service.cache_service import * from module_admin.service.cache_service import *
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
cacheController = APIRouter(prefix='/monitor/cache', dependencies=[Depends(LoginService.get_current_user)]) cacheController = APIRouter(prefix='/monitor/cache', dependencies=[Depends(LoginService.get_current_user)])

15
ruoyi-fastapi-backend/module_admin/controller/config_controller.py

@ -3,12 +3,13 @@ from fastapi import Depends
from config.get_db import get_db from config.get_db import get_db
from module_admin.service.login_service import LoginService, CurrentUserModel from module_admin.service.login_service import LoginService, CurrentUserModel
from module_admin.service.config_service import * from module_admin.service.config_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 utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from utils.page_util import * from utils.page_util import *
from utils.common_util import bytes2file_response from utils.common_util import bytes2file_response
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.annotation.log_annotation import log_decorator
configController = APIRouter(prefix='/system/config', dependencies=[Depends(LoginService.get_current_user)]) configController = APIRouter(prefix='/system/config', dependencies=[Depends(LoginService.get_current_user)])
@ -27,7 +28,7 @@ async def get_system_config_list(request: Request, config_page_query: ConfigPage
@configController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:config:add'))]) @configController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:config:add'))])
@log_decorator(title='参数管理', business_type=1) @log_decorator(title='参数管理', business_type=BusinessType.INSERT)
async def add_system_config(request: Request, add_config: ConfigModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_config(request: Request, add_config: ConfigModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_config.create_by = current_user.user.user_name add_config.create_by = current_user.user.user_name
@ -47,7 +48,7 @@ async def add_system_config(request: Request, add_config: ConfigModel, query_db:
@configController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:config:edit'))]) @configController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:config:edit'))])
@log_decorator(title='参数管理', business_type=2) @log_decorator(title='参数管理', business_type=BusinessType.UPDATE)
async def edit_system_config(request: Request, edit_config: ConfigModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_config(request: Request, edit_config: ConfigModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_config.update_by = current_user.user.user_name edit_config.update_by = current_user.user.user_name
@ -65,7 +66,7 @@ async def edit_system_config(request: Request, edit_config: ConfigModel, query_d
@configController.delete("/refreshCache", dependencies=[Depends(CheckUserInterfaceAuth('system:config:remove'))]) @configController.delete("/refreshCache", dependencies=[Depends(CheckUserInterfaceAuth('system:config:remove'))])
@log_decorator(title='参数管理', business_type=2) @log_decorator(title='参数管理', business_type=BusinessType.UPDATE)
async def refresh_system_config(request: Request, query_db: AsyncSession = Depends(get_db)): async def refresh_system_config(request: Request, query_db: AsyncSession = Depends(get_db)):
try: try:
refresh_config_result = await ConfigService.refresh_sys_config_services(request, query_db) refresh_config_result = await ConfigService.refresh_sys_config_services(request, query_db)
@ -81,7 +82,7 @@ async def refresh_system_config(request: Request, query_db: AsyncSession = Depen
@configController.delete("/{config_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:config:remove'))]) @configController.delete("/{config_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:config:remove'))])
@log_decorator(title='参数管理', business_type=3) @log_decorator(title='参数管理', business_type=BusinessType.DELETE)
async def delete_system_config(request: Request, config_ids: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_config(request: Request, config_ids: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_config = DeleteConfigModel(configIds=config_ids) delete_config = DeleteConfigModel(configIds=config_ids)
@ -121,7 +122,7 @@ async def query_system_config(request: Request, config_key: str):
@configController.post("/export", dependencies=[Depends(CheckUserInterfaceAuth('system:config:export'))]) @configController.post("/export", dependencies=[Depends(CheckUserInterfaceAuth('system:config:export'))])
@log_decorator(title='参数管理', business_type=5) @log_decorator(title='参数管理', business_type=BusinessType.EXPORT)
async def export_system_config_list(request: Request, config_page_query: ConfigPageQueryModel = Depends(ConfigPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)): async def export_system_config_list(request: Request, config_page_query: ConfigPageQueryModel = Depends(ConfigPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)):
try: try:
# 获取全量数据 # 获取全量数据

11
ruoyi-fastapi-backend/module_admin/controller/dept_controller.py

@ -3,11 +3,12 @@ from fastapi import Depends
from config.get_db import get_db from config.get_db import get_db
from module_admin.service.login_service import LoginService, CurrentUserModel from module_admin.service.login_service import LoginService, CurrentUserModel
from module_admin.service.dept_service import * from module_admin.service.dept_service import *
from utils.response_util import *
from utils.log_util import *
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.aspect.data_scope import GetDataScope from module_admin.aspect.data_scope import GetDataScope
from module_admin.annotation.log_annotation import log_decorator from module_admin.annotation.log_annotation import log_decorator
from config.enums import BusinessType
from utils.response_util import *
from utils.log_util import *
deptController = APIRouter(prefix='/system/dept', dependencies=[Depends(LoginService.get_current_user)]) deptController = APIRouter(prefix='/system/dept', dependencies=[Depends(LoginService.get_current_user)])
@ -37,7 +38,7 @@ async def get_system_dept_list(request: Request, dept_query: DeptQueryModel = De
@deptController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:dept:add'))]) @deptController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:dept:add'))])
@log_decorator(title='部门管理', business_type=1) @log_decorator(title='部门管理', business_type=BusinessType.INSERT)
async def add_system_dept(request: Request, add_dept: DeptModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_dept(request: Request, add_dept: DeptModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_dept.create_by = current_user.user.user_name add_dept.create_by = current_user.user.user_name
@ -57,7 +58,7 @@ async def add_system_dept(request: Request, add_dept: DeptModel, query_db: Async
@deptController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:dept:edit'))]) @deptController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:dept:edit'))])
@log_decorator(title='部门管理', business_type=2) @log_decorator(title='部门管理', business_type=BusinessType.UPDATE)
async def edit_system_dept(request: Request, edit_dept: DeptModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_dept(request: Request, edit_dept: DeptModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_dept.update_by = current_user.user.user_name edit_dept.update_by = current_user.user.user_name
@ -75,7 +76,7 @@ async def edit_system_dept(request: Request, edit_dept: DeptModel, query_db: Asy
@deptController.delete("/{dept_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:dept:remove'))]) @deptController.delete("/{dept_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:dept:remove'))])
@log_decorator(title='部门管理', business_type=3) @log_decorator(title='部门管理', business_type=BusinessType.DELETE)
async def delete_system_dept(request: Request, dept_ids: str, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def delete_system_dept(request: Request, dept_ids: str, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
delete_dept = DeleteDeptModel(deptIds=dept_ids) delete_dept = DeleteDeptModel(deptIds=dept_ids)

23
ruoyi-fastapi-backend/module_admin/controller/dict_controller.py

@ -3,12 +3,13 @@ from fastapi import Depends
from config.get_db import get_db from config.get_db import get_db
from module_admin.service.login_service import LoginService, CurrentUserModel from module_admin.service.login_service import LoginService, CurrentUserModel
from module_admin.service.dict_service import * from module_admin.service.dict_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 utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from utils.page_util import PageResponseModel from utils.page_util import PageResponseModel
from utils.common_util import bytes2file_response from utils.common_util import bytes2file_response
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.annotation.log_annotation import log_decorator
dictController = APIRouter(prefix='/system/dict', dependencies=[Depends(LoginService.get_current_user)]) dictController = APIRouter(prefix='/system/dict', dependencies=[Depends(LoginService.get_current_user)])
@ -27,7 +28,7 @@ async def get_system_dict_type_list(request: Request, dict_type_page_query: Dict
@dictController.post("/type", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:add'))]) @dictController.post("/type", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:add'))])
@log_decorator(title='字典管理', business_type=1) @log_decorator(title='字典管理', business_type=BusinessType.INSERT)
async def add_system_dict_type(request: Request, add_dict_type: DictTypeModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_dict_type(request: Request, add_dict_type: DictTypeModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_dict_type.create_by = current_user.user.user_name add_dict_type.create_by = current_user.user.user_name
@ -47,7 +48,7 @@ async def add_system_dict_type(request: Request, add_dict_type: DictTypeModel, q
@dictController.put("/type", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:edit'))]) @dictController.put("/type", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:edit'))])
@log_decorator(title='字典管理', business_type=2) @log_decorator(title='字典管理', business_type=BusinessType.UPDATE)
async def edit_system_dict_type(request: Request, edit_dict_type: DictTypeModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_dict_type(request: Request, edit_dict_type: DictTypeModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_dict_type.update_by = current_user.user.user_name edit_dict_type.update_by = current_user.user.user_name
@ -65,7 +66,7 @@ async def edit_system_dict_type(request: Request, edit_dict_type: DictTypeModel,
@dictController.delete("/type/refreshCache", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:remove'))]) @dictController.delete("/type/refreshCache", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:remove'))])
@log_decorator(title='字典管理', business_type=2) @log_decorator(title='字典管理', business_type=BusinessType.UPDATE)
async def refresh_system_dict(request: Request, query_db: AsyncSession = Depends(get_db)): async def refresh_system_dict(request: Request, query_db: AsyncSession = Depends(get_db)):
try: try:
refresh_dict_result = await DictTypeService.refresh_sys_dict_services(request, query_db) refresh_dict_result = await DictTypeService.refresh_sys_dict_services(request, query_db)
@ -81,7 +82,7 @@ async def refresh_system_dict(request: Request, query_db: AsyncSession = Depends
@dictController.delete("/type/{dict_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:remove'))]) @dictController.delete("/type/{dict_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:remove'))])
@log_decorator(title='字典管理', business_type=3) @log_decorator(title='字典管理', business_type=BusinessType.DELETE)
async def delete_system_dict_type(request: Request, dict_ids: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_dict_type(request: Request, dict_ids: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_dict_type = DeleteDictTypeModel(dictIds=dict_ids) delete_dict_type = DeleteDictTypeModel(dictIds=dict_ids)
@ -120,7 +121,7 @@ async def query_detail_system_dict_type(request: Request, dict_id: int, query_db
@dictController.post("/type/export", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:export'))]) @dictController.post("/type/export", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:export'))])
@log_decorator(title='字典管理', business_type=5) @log_decorator(title='字典管理', business_type=BusinessType.EXPORT)
async def export_system_dict_type_list(request: Request, dict_type_page_query: DictTypePageQueryModel = Depends(DictTypePageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)): async def export_system_dict_type_list(request: Request, dict_type_page_query: DictTypePageQueryModel = Depends(DictTypePageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)):
try: try:
# 获取全量数据 # 获取全量数据
@ -158,7 +159,7 @@ async def get_system_dict_data_list(request: Request, dict_data_page_query: Dict
@dictController.post("/data", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:add'))]) @dictController.post("/data", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:add'))])
@log_decorator(title='字典管理', business_type=1) @log_decorator(title='字典管理', business_type=BusinessType.INSERT)
async def add_system_dict_data(request: Request, add_dict_data: DictDataModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_dict_data(request: Request, add_dict_data: DictDataModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_dict_data.create_by = current_user.user.user_name add_dict_data.create_by = current_user.user.user_name
@ -178,7 +179,7 @@ async def add_system_dict_data(request: Request, add_dict_data: DictDataModel, q
@dictController.put("/data", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:edit'))]) @dictController.put("/data", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:edit'))])
@log_decorator(title='字典管理', business_type=2) @log_decorator(title='字典管理', business_type=BusinessType.UPDATE)
async def edit_system_dict_data(request: Request, edit_dict_data: DictDataModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_dict_data(request: Request, edit_dict_data: DictDataModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_dict_data.update_by = current_user.user.user_name edit_dict_data.update_by = current_user.user.user_name
@ -196,7 +197,7 @@ async def edit_system_dict_data(request: Request, edit_dict_data: DictDataModel,
@dictController.delete("/data/{dict_codes}", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:remove'))]) @dictController.delete("/data/{dict_codes}", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:remove'))])
@log_decorator(title='字典管理', business_type=3) @log_decorator(title='字典管理', business_type=BusinessType.DELETE)
async def delete_system_dict_data(request: Request, dict_codes: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_dict_data(request: Request, dict_codes: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_dict_data = DeleteDictDataModel(dictCodes=dict_codes) delete_dict_data = DeleteDictDataModel(dictCodes=dict_codes)
@ -224,7 +225,7 @@ async def query_detail_system_dict_data(request: Request, dict_code: int, query_
@dictController.post("/data/export", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:export'))]) @dictController.post("/data/export", dependencies=[Depends(CheckUserInterfaceAuth('system:dict:export'))])
@log_decorator(title='字典管理', business_type=5) @log_decorator(title='字典管理', business_type=BusinessType.EXPORT)
async def export_system_dict_data_list(request: Request, dict_data_page_query: DictDataPageQueryModel = Depends(DictDataPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)): async def export_system_dict_data_list(request: Request, dict_data_page_query: DictDataPageQueryModel = Depends(DictDataPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)):
try: try:
# 获取全量数据 # 获取全量数据

23
ruoyi-fastapi-backend/module_admin/controller/job_controller.py

@ -4,12 +4,13 @@ from config.get_db import get_db
from module_admin.service.login_service import LoginService, CurrentUserModel from module_admin.service.login_service import LoginService, CurrentUserModel
from module_admin.service.job_service import * from module_admin.service.job_service import *
from module_admin.service.job_log_service import * from module_admin.service.job_log_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 utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from utils.page_util import * from utils.page_util import *
from utils.common_util import bytes2file_response from utils.common_util import bytes2file_response
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.annotation.log_annotation import log_decorator
jobController = APIRouter(prefix='/monitor', dependencies=[Depends(LoginService.get_current_user)]) jobController = APIRouter(prefix='/monitor', dependencies=[Depends(LoginService.get_current_user)])
@ -28,7 +29,7 @@ async def get_system_job_list(request: Request, job_page_query: JobPageQueryMode
@jobController.post("/job", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:add'))]) @jobController.post("/job", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:add'))])
@log_decorator(title='定时任务管理', business_type=1) @log_decorator(title='定时任务管理', business_type=BusinessType.INSERT)
async def add_system_job(request: Request, add_job: JobModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_job(request: Request, add_job: JobModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_job.create_by = current_user.user.user_name add_job.create_by = current_user.user.user_name
@ -48,7 +49,7 @@ async def add_system_job(request: Request, add_job: JobModel, query_db: AsyncSes
@jobController.put("/job", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:edit'))]) @jobController.put("/job", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:edit'))])
@log_decorator(title='定时任务管理', business_type=2) @log_decorator(title='定时任务管理', business_type=BusinessType.UPDATE)
async def edit_system_job(request: Request, edit_job: EditJobModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_job(request: Request, edit_job: EditJobModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_job.update_by = current_user.user.user_name edit_job.update_by = current_user.user.user_name
@ -66,7 +67,7 @@ async def edit_system_job(request: Request, edit_job: EditJobModel, query_db: As
@jobController.put("/job/changeStatus", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:changeStatus'))]) @jobController.put("/job/changeStatus", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:changeStatus'))])
@log_decorator(title='定时任务管理', business_type=2) @log_decorator(title='定时任务管理', business_type=BusinessType.UPDATE)
async def edit_system_job(request: Request, edit_job: EditJobModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_job(request: Request, edit_job: EditJobModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_job.update_by = current_user.user.user_name edit_job.update_by = current_user.user.user_name
@ -85,7 +86,7 @@ async def edit_system_job(request: Request, edit_job: EditJobModel, query_db: As
@jobController.put("/job/run", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:changeStatus'))]) @jobController.put("/job/run", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:changeStatus'))])
@log_decorator(title='定时任务管理', business_type=2) @log_decorator(title='定时任务管理', business_type=BusinessType.UPDATE)
async def execute_system_job(request: Request, execute_job: JobModel, query_db: AsyncSession = Depends(get_db)): async def execute_system_job(request: Request, execute_job: JobModel, query_db: AsyncSession = Depends(get_db)):
try: try:
execute_job_result = await JobService.execute_job_once_services(query_db, execute_job) execute_job_result = await JobService.execute_job_once_services(query_db, execute_job)
@ -101,7 +102,7 @@ async def execute_system_job(request: Request, execute_job: JobModel, query_db:
@jobController.delete("/job/{job_ids}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:remove'))]) @jobController.delete("/job/{job_ids}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:remove'))])
@log_decorator(title='定时任务管理', business_type=3) @log_decorator(title='定时任务管理', business_type=BusinessType.DELETE)
async def delete_system_job(request: Request, job_ids: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_job(request: Request, job_ids: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_job = DeleteJobModel(jobIds=job_ids) delete_job = DeleteJobModel(jobIds=job_ids)
@ -129,7 +130,7 @@ async def query_detail_system_job(request: Request, job_id: int, query_db: Async
@jobController.post("/job/export", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:export'))]) @jobController.post("/job/export", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:export'))])
@log_decorator(title='定时任务管理', business_type=5) @log_decorator(title='定时任务管理', business_type=BusinessType.EXPORT)
async def export_system_job_list(request: Request, job_page_query: JobPageQueryModel = Depends(JobPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)): async def export_system_job_list(request: Request, job_page_query: JobPageQueryModel = Depends(JobPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)):
try: try:
# 获取全量数据 # 获取全量数据
@ -155,7 +156,7 @@ async def get_system_job_log_list(request: Request, job_log_page_query: JobLogPa
@jobController.delete("/jobLog/clean", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:remove'))]) @jobController.delete("/jobLog/clean", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:remove'))])
@log_decorator(title='定时任务日志管理', business_type=9) @log_decorator(title='定时任务日志管理', business_type=BusinessType.CLEAN)
async def clear_system_job_log(request: Request, query_db: AsyncSession = Depends(get_db)): async def clear_system_job_log(request: Request, query_db: AsyncSession = Depends(get_db)):
try: try:
clear_job_log_result = await JobLogService.clear_job_log_services(query_db) clear_job_log_result = await JobLogService.clear_job_log_services(query_db)
@ -171,7 +172,7 @@ async def clear_system_job_log(request: Request, query_db: AsyncSession = Depend
@jobController.delete("/jobLog/{job_log_ids}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:remove'))]) @jobController.delete("/jobLog/{job_log_ids}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:remove'))])
@log_decorator(title='定时任务日志管理', business_type=3) @log_decorator(title='定时任务日志管理', business_type=BusinessType.DELETE)
async def delete_system_job_log(request: Request, job_log_ids: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_job_log(request: Request, job_log_ids: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_job_log = DeleteJobLogModel(jobLogIds=job_log_ids) delete_job_log = DeleteJobLogModel(jobLogIds=job_log_ids)
@ -188,7 +189,7 @@ async def delete_system_job_log(request: Request, job_log_ids: str, query_db: As
@jobController.post("/jobLog/export", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:export'))]) @jobController.post("/jobLog/export", dependencies=[Depends(CheckUserInterfaceAuth('monitor:job:export'))])
@log_decorator(title='定时任务日志管理', business_type=5) @log_decorator(title='定时任务日志管理', business_type=BusinessType.EXPORT)
async def export_system_job_log_list(request: Request, job_log_page_query: JobLogPageQueryModel = Depends(JobLogPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)): async def export_system_job_log_list(request: Request, job_log_page_query: JobLogPageQueryModel = Depends(JobLogPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)):
try: try:
# 获取全量数据 # 获取全量数据

19
ruoyi-fastapi-backend/module_admin/controller/log_controller.py

@ -3,12 +3,13 @@ from fastapi import Depends
from config.get_db import get_db from config.get_db import get_db
from module_admin.service.login_service import LoginService from module_admin.service.login_service import LoginService
from module_admin.service.log_service import * from module_admin.service.log_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 utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from utils.page_util import * from utils.page_util import *
from utils.common_util import bytes2file_response from utils.common_util import bytes2file_response
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.annotation.log_annotation import log_decorator
logController = APIRouter(prefix='/monitor', dependencies=[Depends(LoginService.get_current_user)]) logController = APIRouter(prefix='/monitor', dependencies=[Depends(LoginService.get_current_user)])
@ -27,7 +28,7 @@ async def get_system_operation_log_list(request: Request, operation_log_page_que
@logController.delete("/operlog/clean", dependencies=[Depends(CheckUserInterfaceAuth('monitor:operlog:remove'))]) @logController.delete("/operlog/clean", dependencies=[Depends(CheckUserInterfaceAuth('monitor:operlog:remove'))])
@log_decorator(title='操作日志管理', business_type=9) @log_decorator(title='操作日志管理', business_type=BusinessType.CLEAN)
async def clear_system_operation_log(request: Request, query_db: AsyncSession = Depends(get_db)): async def clear_system_operation_log(request: Request, query_db: AsyncSession = Depends(get_db)):
try: try:
clear_operation_log_result = await OperationLogService.clear_operation_log_services(query_db) clear_operation_log_result = await OperationLogService.clear_operation_log_services(query_db)
@ -43,7 +44,7 @@ async def clear_system_operation_log(request: Request, query_db: AsyncSession =
@logController.delete("/operlog/{oper_ids}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:operlog:remove'))]) @logController.delete("/operlog/{oper_ids}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:operlog:remove'))])
@log_decorator(title='操作日志管理', business_type=3) @log_decorator(title='操作日志管理', business_type=BusinessType.DELETE)
async def delete_system_operation_log(request: Request, oper_ids: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_operation_log(request: Request, oper_ids: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_operation_log = DeleteOperLogModel(operIds=oper_ids) delete_operation_log = DeleteOperLogModel(operIds=oper_ids)
@ -60,7 +61,7 @@ async def delete_system_operation_log(request: Request, oper_ids: str, query_db:
@logController.post("/operlog/export", dependencies=[Depends(CheckUserInterfaceAuth('monitor:operlog:export'))]) @logController.post("/operlog/export", dependencies=[Depends(CheckUserInterfaceAuth('monitor:operlog:export'))])
@log_decorator(title='操作日志管理', business_type=5) @log_decorator(title='操作日志管理', business_type=BusinessType.EXPORT)
async def export_system_operation_log_list(request: Request, operation_log_page_query: OperLogPageQueryModel = Depends(OperLogPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)): async def export_system_operation_log_list(request: Request, operation_log_page_query: OperLogPageQueryModel = Depends(OperLogPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)):
try: try:
# 获取全量数据 # 获取全量数据
@ -86,7 +87,7 @@ async def get_system_login_log_list(request: Request, login_log_page_query: Logi
@logController.delete("/logininfor/clean", dependencies=[Depends(CheckUserInterfaceAuth('monitor:logininfor:remove'))]) @logController.delete("/logininfor/clean", dependencies=[Depends(CheckUserInterfaceAuth('monitor:logininfor:remove'))])
@log_decorator(title='登录日志管理', business_type=9) @log_decorator(title='登录日志管理', business_type=BusinessType.CLEAN)
async def clear_system_login_log(request: Request, query_db: AsyncSession = Depends(get_db)): async def clear_system_login_log(request: Request, query_db: AsyncSession = Depends(get_db)):
try: try:
clear_login_log_result = await LoginLogService.clear_login_log_services(query_db) clear_login_log_result = await LoginLogService.clear_login_log_services(query_db)
@ -102,7 +103,7 @@ async def clear_system_login_log(request: Request, query_db: AsyncSession = Depe
@logController.delete("/logininfor/{info_ids}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:logininfor:remove'))]) @logController.delete("/logininfor/{info_ids}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:logininfor:remove'))])
@log_decorator(title='登录日志管理', business_type=3) @log_decorator(title='登录日志管理', business_type=BusinessType.DELETE)
async def delete_system_login_log(request: Request, info_ids: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_login_log(request: Request, info_ids: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_login_log = DeleteLoginLogModel(infoIds=info_ids) delete_login_log = DeleteLoginLogModel(infoIds=info_ids)
@ -119,7 +120,7 @@ async def delete_system_login_log(request: Request, info_ids: str, query_db: Asy
@logController.get("/logininfor/unlock/{user_name}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:logininfor:unlock'))]) @logController.get("/logininfor/unlock/{user_name}", dependencies=[Depends(CheckUserInterfaceAuth('monitor:logininfor:unlock'))])
@log_decorator(title='登录日志管理', business_type=0) @log_decorator(title='登录日志管理', business_type=BusinessType.OTHER)
async def clear_system_login_log(request: Request, user_name: str, query_db: AsyncSession = Depends(get_db)): async def clear_system_login_log(request: Request, user_name: str, query_db: AsyncSession = Depends(get_db)):
try: try:
unlock_user = UnlockUser(userName=user_name) unlock_user = UnlockUser(userName=user_name)
@ -136,7 +137,7 @@ async def clear_system_login_log(request: Request, user_name: str, query_db: Asy
@logController.post("/logininfor/export", dependencies=[Depends(CheckUserInterfaceAuth('monitor:logininfor:export'))]) @logController.post("/logininfor/export", dependencies=[Depends(CheckUserInterfaceAuth('monitor:logininfor:export'))])
@log_decorator(title='登录日志管理', business_type=5) @log_decorator(title='登录日志管理', business_type=BusinessType.EXPORT)
async def export_system_login_log_list(request: Request, login_log_page_query: LoginLogPageQueryModel = Depends(LoginLogPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)): async def export_system_login_log_list(request: Request, login_log_page_query: LoginLogPageQueryModel = Depends(LoginLogPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)):
try: try:
# 获取全量数据 # 获取全量数据

3
ruoyi-fastapi-backend/module_admin/controller/login_controller.py

@ -4,6 +4,7 @@ from module_admin.entity.vo.login_vo import *
from module_admin.dao.login_dao import * from module_admin.dao.login_dao import *
from module_admin.annotation.log_annotation import log_decorator from module_admin.annotation.log_annotation import log_decorator
from config.env import JwtConfig, RedisInitKeyConfig from config.env import JwtConfig, RedisInitKeyConfig
from config.enums import BusinessType
from utils.response_util import ResponseUtil from utils.response_util import ResponseUtil
from utils.log_util import * from utils.log_util import *
from datetime import timedelta from datetime import timedelta
@ -13,7 +14,7 @@ loginController = APIRouter()
@loginController.post("/login", response_model=Token) @loginController.post("/login", response_model=Token)
@log_decorator(title='用户登录', business_type=0, log_type='login') @log_decorator(title='用户登录', business_type=BusinessType.OTHER, log_type='login')
async def login(request: Request, form_data: CustomOAuth2PasswordRequestForm = Depends(), query_db: AsyncSession = Depends(get_db)): async def login(request: Request, form_data: CustomOAuth2PasswordRequestForm = Depends(), query_db: AsyncSession = Depends(get_db)):
captcha_enabled = True if await request.app.state.redis.get(f"{RedisInitKeyConfig.SYS_CONFIG.get('key')}:sys.account.captchaEnabled") == 'true' else False captcha_enabled = True if await request.app.state.redis.get(f"{RedisInitKeyConfig.SYS_CONFIG.get('key')}:sys.account.captchaEnabled") == 'true' else False
user = UserLogin( user = UserLogin(

11
ruoyi-fastapi-backend/module_admin/controller/menu_controller.py

@ -3,10 +3,11 @@ from fastapi import Depends
from config.get_db import get_db from config.get_db import get_db
from module_admin.service.login_service import LoginService from module_admin.service.login_service import LoginService
from module_admin.service.menu_service import * from module_admin.service.menu_service import *
from utils.response_util import *
from utils.log_util import *
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.annotation.log_annotation import log_decorator from module_admin.annotation.log_annotation import log_decorator
from config.enums import BusinessType
from utils.response_util import *
from utils.log_util import *
menuController = APIRouter(prefix='/system/menu', dependencies=[Depends(LoginService.get_current_user)]) menuController = APIRouter(prefix='/system/menu', dependencies=[Depends(LoginService.get_current_user)])
@ -46,7 +47,7 @@ async def get_system_menu_list(request: Request, menu_query: MenuQueryModel = De
@menuController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:menu:add'))]) @menuController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:menu:add'))])
@log_decorator(title='菜单管理', business_type=1) @log_decorator(title='菜单管理', business_type=BusinessType.INSERT)
async def add_system_menu(request: Request, add_menu: MenuModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_menu(request: Request, add_menu: MenuModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_menu.create_by = current_user.user.user_name add_menu.create_by = current_user.user.user_name
@ -66,7 +67,7 @@ async def add_system_menu(request: Request, add_menu: MenuModel, query_db: Async
@menuController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:menu:edit'))]) @menuController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:menu:edit'))])
@log_decorator(title='菜单管理', business_type=2) @log_decorator(title='菜单管理', business_type=BusinessType.UPDATE)
async def edit_system_menu(request: Request, edit_menu: MenuModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_menu(request: Request, edit_menu: MenuModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_menu.update_by = current_user.user.user_name edit_menu.update_by = current_user.user.user_name
@ -84,7 +85,7 @@ async def edit_system_menu(request: Request, edit_menu: MenuModel, query_db: Asy
@menuController.delete("/{menu_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:menu:remove'))]) @menuController.delete("/{menu_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:menu:remove'))])
@log_decorator(title='菜单管理', business_type=3) @log_decorator(title='菜单管理', business_type=BusinessType.DELETE)
async def delete_system_menu(request: Request, menu_ids: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_menu(request: Request, menu_ids: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_menu = DeleteMenuModel(menuIds=menu_ids) delete_menu = DeleteMenuModel(menuIds=menu_ids)

11
ruoyi-fastapi-backend/module_admin/controller/notice_controller.py

@ -3,11 +3,12 @@ from fastapi import Depends
from config.get_db import get_db from config.get_db import get_db
from module_admin.service.login_service import LoginService, CurrentUserModel from module_admin.service.login_service import LoginService, CurrentUserModel
from module_admin.service.notice_service import * from module_admin.service.notice_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 utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from utils.page_util import * from utils.page_util import *
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.annotation.log_annotation import log_decorator
noticeController = APIRouter(prefix='/system/notice', dependencies=[Depends(LoginService.get_current_user)]) noticeController = APIRouter(prefix='/system/notice', dependencies=[Depends(LoginService.get_current_user)])
@ -26,7 +27,7 @@ async def get_system_notice_list(request: Request, notice_page_query: NoticePage
@noticeController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:notice:add'))]) @noticeController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:notice:add'))])
@log_decorator(title='通知公告管理', business_type=1) @log_decorator(title='通知公告管理', business_type=BusinessType.INSERT)
async def add_system_notice(request: Request, add_notice: NoticeModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_notice(request: Request, add_notice: NoticeModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_notice.create_by = current_user.user.user_name add_notice.create_by = current_user.user.user_name
@ -46,7 +47,7 @@ async def add_system_notice(request: Request, add_notice: NoticeModel, query_db:
@noticeController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:notice:edit'))]) @noticeController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:notice:edit'))])
@log_decorator(title='通知公告管理', business_type=2) @log_decorator(title='通知公告管理', business_type=BusinessType.UPDATE)
async def edit_system_notice(request: Request, edit_notice: NoticeModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_notice(request: Request, edit_notice: NoticeModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_notice.update_by = current_user.user.user_name edit_notice.update_by = current_user.user.user_name
@ -64,7 +65,7 @@ async def edit_system_notice(request: Request, edit_notice: NoticeModel, query_d
@noticeController.delete("/{notice_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:notice:remove'))]) @noticeController.delete("/{notice_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:notice:remove'))])
@log_decorator(title='通知公告管理', business_type=3) @log_decorator(title='通知公告管理', business_type=BusinessType.DELETE)
async def delete_system_notice(request: Request, notice_ids: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_notice(request: Request, notice_ids: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_notice = DeleteNoticeModel(noticeIds=notice_ids) delete_notice = DeleteNoticeModel(noticeIds=notice_ids)

7
ruoyi-fastapi-backend/module_admin/controller/online_controller.py

@ -3,11 +3,12 @@ from fastapi import Depends
from config.get_db import get_db from config.get_db import get_db
from module_admin.service.login_service import LoginService, AsyncSession from module_admin.service.login_service import LoginService, AsyncSession
from module_admin.service.online_service import * 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 utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from utils.page_util import * from utils.page_util import *
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.annotation.log_annotation import log_decorator
onlineController = APIRouter(prefix='/monitor/online', dependencies=[Depends(LoginService.get_current_user)]) onlineController = APIRouter(prefix='/monitor/online', dependencies=[Depends(LoginService.get_current_user)])
@ -26,7 +27,7 @@ async def get_monitor_online_list(request: Request, online_page_query: OnlineQue
@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=7) @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)):
try: try:
delete_online = DeleteOnlineModel(tokenIds=token_ids) delete_online = DeleteOnlineModel(tokenIds=token_ids)

13
ruoyi-fastapi-backend/module_admin/controller/post_controler.py

@ -4,12 +4,13 @@ from config.get_db import get_db
from module_admin.service.login_service import LoginService, CurrentUserModel from module_admin.service.login_service import LoginService, CurrentUserModel
from module_admin.service.post_service import * from module_admin.service.post_service import *
from module_admin.entity.vo.post_vo import * from module_admin.entity.vo.post_vo import *
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.annotation.log_annotation import log_decorator
from config.enums import BusinessType
from utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from utils.page_util import * from utils.page_util import *
from utils.common_util import bytes2file_response from utils.common_util import bytes2file_response
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.annotation.log_annotation import log_decorator
postController = APIRouter(prefix='/system/post', dependencies=[Depends(LoginService.get_current_user)]) postController = APIRouter(prefix='/system/post', dependencies=[Depends(LoginService.get_current_user)])
@ -28,7 +29,7 @@ async def get_system_post_list(request: Request, post_page_query: PostPageQueryM
@postController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:post:add'))]) @postController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:post:add'))])
@log_decorator(title='岗位管理', business_type=1) @log_decorator(title='岗位管理', business_type=BusinessType.INSERT)
async def add_system_post(request: Request, add_post: PostModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_post(request: Request, add_post: PostModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_post.create_by = current_user.user.user_name add_post.create_by = current_user.user.user_name
@ -48,7 +49,7 @@ async def add_system_post(request: Request, add_post: PostModel, query_db: Async
@postController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:post:edit'))]) @postController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:post:edit'))])
@log_decorator(title='岗位管理', business_type=2) @log_decorator(title='岗位管理', business_type=BusinessType.UPDATE)
async def edit_system_post(request: Request, edit_post: PostModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_post(request: Request, edit_post: PostModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_post.update_by = current_user.user.user_name edit_post.update_by = current_user.user.user_name
@ -66,7 +67,7 @@ async def edit_system_post(request: Request, edit_post: PostModel, query_db: Asy
@postController.delete("/{post_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:post:remove'))]) @postController.delete("/{post_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:post:remove'))])
@log_decorator(title='岗位管理', business_type=3) @log_decorator(title='岗位管理', business_type=BusinessType.DELETE)
async def delete_system_post(request: Request, post_ids: str, query_db: AsyncSession = Depends(get_db)): async def delete_system_post(request: Request, post_ids: str, query_db: AsyncSession = Depends(get_db)):
try: try:
delete_post = DeletePostModel(postIds=post_ids) delete_post = DeletePostModel(postIds=post_ids)
@ -94,7 +95,7 @@ async def query_detail_system_post(request: Request, post_id: int, query_db: Asy
@postController.post("/export", dependencies=[Depends(CheckUserInterfaceAuth('system:post:export'))]) @postController.post("/export", dependencies=[Depends(CheckUserInterfaceAuth('system:post:export'))])
@log_decorator(title='岗位管理', business_type=5) @log_decorator(title='岗位管理', business_type=BusinessType.EXPORT)
async def export_system_post_list(request: Request, post_page_query: PostPageQueryModel = Depends(PostPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)): async def export_system_post_list(request: Request, post_page_query: PostPageQueryModel = Depends(PostPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)):
try: try:
# 获取全量数据 # 获取全量数据

25
ruoyi-fastapi-backend/module_admin/controller/role_controller.py

@ -5,13 +5,14 @@ from module_admin.service.login_service import LoginService, CurrentUserModel
from module_admin.service.role_service import * from module_admin.service.role_service import *
from module_admin.service.dept_service import DeptService, DeptModel from module_admin.service.dept_service import DeptService, DeptModel
from module_admin.service.user_service import UserService, UserRoleQueryModel, UserRolePageQueryModel, CrudUserRoleModel from module_admin.service.user_service import UserService, UserRoleQueryModel, UserRolePageQueryModel, CrudUserRoleModel
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.aspect.data_scope import GetDataScope
from module_admin.annotation.log_annotation import log_decorator
from config.enums import BusinessType
from utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from utils.page_util import PageResponseModel from utils.page_util import PageResponseModel
from utils.common_util import bytes2file_response from utils.common_util import bytes2file_response
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.aspect.data_scope import GetDataScope
from module_admin.annotation.log_annotation import log_decorator
roleController = APIRouter(prefix='/system/role', dependencies=[Depends(LoginService.get_current_user)]) roleController = APIRouter(prefix='/system/role', dependencies=[Depends(LoginService.get_current_user)])
@ -42,7 +43,7 @@ async def get_system_role_list(request: Request, role_page_query: RolePageQueryM
@roleController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:role:add'))]) @roleController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:role:add'))])
@log_decorator(title='角色管理', business_type=1) @log_decorator(title='角色管理', business_type=BusinessType.INSERT)
async def add_system_role(request: Request, add_role: AddRoleModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_role(request: Request, add_role: AddRoleModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_role.create_by = current_user.user.user_name add_role.create_by = current_user.user.user_name
@ -62,7 +63,7 @@ async def add_system_role(request: Request, add_role: AddRoleModel, query_db: As
@roleController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))]) @roleController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))])
@log_decorator(title='角色管理', business_type=2) @log_decorator(title='角色管理', business_type=BusinessType.UPDATE)
async def edit_system_role(request: Request, edit_role: AddRoleModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_role(request: Request, edit_role: AddRoleModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_role.update_by = current_user.user.user_name edit_role.update_by = current_user.user.user_name
@ -80,7 +81,7 @@ async def edit_system_role(request: Request, edit_role: AddRoleModel, query_db:
@roleController.put("/dataScope", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))]) @roleController.put("/dataScope", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))])
@log_decorator(title='角色管理', business_type=4) @log_decorator(title='角色管理', business_type=BusinessType.GRANT)
async def edit_system_role_datascope(request: Request, role_data_scope: AddRoleModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_role_datascope(request: Request, role_data_scope: AddRoleModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
role_data_scope.update_by = current_user.user.user_name role_data_scope.update_by = current_user.user.user_name
@ -98,7 +99,7 @@ async def edit_system_role_datascope(request: Request, role_data_scope: AddRoleM
@roleController.delete("/{role_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:role:remove'))]) @roleController.delete("/{role_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:role:remove'))])
@log_decorator(title='角色管理', business_type=3) @log_decorator(title='角色管理', business_type=BusinessType.DELETE)
async def delete_system_role(request: Request, role_ids: str, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def delete_system_role(request: Request, role_ids: str, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
delete_role = DeleteRoleModel( delete_role = DeleteRoleModel(
@ -130,7 +131,7 @@ async def query_detail_system_role(request: Request, role_id: int, query_db: Asy
@roleController.post("/export", dependencies=[Depends(CheckUserInterfaceAuth('system:role:export'))]) @roleController.post("/export", dependencies=[Depends(CheckUserInterfaceAuth('system:role:export'))])
@log_decorator(title='角色管理', business_type=5) @log_decorator(title='角色管理', business_type=BusinessType.EXPORT)
async def export_system_role_list(request: Request, role_page_query: RolePageQueryModel = Depends(RolePageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)): async def export_system_role_list(request: Request, role_page_query: RolePageQueryModel = Depends(RolePageQueryModel.as_form), query_db: AsyncSession = Depends(get_db)):
try: try:
# 获取全量数据 # 获取全量数据
@ -144,7 +145,7 @@ async def export_system_role_list(request: Request, role_page_query: RolePageQue
@roleController.put("/changeStatus", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))]) @roleController.put("/changeStatus", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))])
@log_decorator(title='角色管理', business_type=2) @log_decorator(title='角色管理', business_type=BusinessType.UPDATE)
async def reset_system_role_status(request: Request, edit_role: AddRoleModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def reset_system_role_status(request: Request, edit_role: AddRoleModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_role.update_by = current_user.user.user_name edit_role.update_by = current_user.user.user_name
@ -185,7 +186,7 @@ async def get_system_unallocated_user_list(request: Request, user_role: UserRole
@roleController.put("/authUser/selectAll", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))]) @roleController.put("/authUser/selectAll", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))])
@log_decorator(title='角色管理', business_type=4) @log_decorator(title='角色管理', business_type=BusinessType.GRANT)
async def add_system_role_user(request: Request, add_role_user: CrudUserRoleModel = Depends(CrudUserRoleModel.as_query), query_db: AsyncSession = Depends(get_db)): async def add_system_role_user(request: Request, add_role_user: CrudUserRoleModel = Depends(CrudUserRoleModel.as_query), query_db: AsyncSession = Depends(get_db)):
try: try:
add_role_user_result = await UserService.add_user_role_services(query_db, add_role_user) add_role_user_result = await UserService.add_user_role_services(query_db, add_role_user)
@ -201,7 +202,7 @@ async def add_system_role_user(request: Request, add_role_user: CrudUserRoleMode
@roleController.put("/authUser/cancel", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))]) @roleController.put("/authUser/cancel", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))])
@log_decorator(title='角色管理', business_type=4) @log_decorator(title='角色管理', business_type=BusinessType.GRANT)
async def cancel_system_role_user(request: Request, cancel_user_role: CrudUserRoleModel, query_db: AsyncSession = Depends(get_db)): async def cancel_system_role_user(request: Request, cancel_user_role: CrudUserRoleModel, query_db: AsyncSession = Depends(get_db)):
try: try:
cancel_user_role_result = await UserService.delete_user_role_services(query_db, cancel_user_role) cancel_user_role_result = await UserService.delete_user_role_services(query_db, cancel_user_role)
@ -217,7 +218,7 @@ async def cancel_system_role_user(request: Request, cancel_user_role: CrudUserRo
@roleController.put("/authUser/cancelAll", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))]) @roleController.put("/authUser/cancelAll", dependencies=[Depends(CheckUserInterfaceAuth('system:role:edit'))])
@log_decorator(title='角色管理', business_type=4) @log_decorator(title='角色管理', business_type=BusinessType.GRANT)
async def batch_cancel_system_role_user(request: Request, batch_cancel_user_role: CrudUserRoleModel = Depends(CrudUserRoleModel.as_query), query_db: AsyncSession = Depends(get_db)): async def batch_cancel_system_role_user(request: Request, batch_cancel_user_role: CrudUserRoleModel = Depends(CrudUserRoleModel.as_query), query_db: AsyncSession = Depends(get_db)):
try: try:
batch_cancel_user_role_result = await UserService.delete_user_role_services(query_db, batch_cancel_user_role) batch_cancel_user_role_result = await UserService.delete_user_role_services(query_db, batch_cancel_user_role)

2
ruoyi-fastapi-backend/module_admin/controller/server_controller.py

@ -2,9 +2,9 @@ from fastapi import APIRouter, Request
from fastapi import Depends from fastapi import Depends
from module_admin.service.login_service import LoginService from module_admin.service.login_service import LoginService
from module_admin.service.server_service import * from module_admin.service.server_service import *
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
serverController = APIRouter(prefix='/monitor/server', dependencies=[Depends(LoginService.get_current_user)]) serverController = APIRouter(prefix='/monitor/server', dependencies=[Depends(LoginService.get_current_user)])

28
ruoyi-fastapi-backend/module_admin/controller/user_controller.py

@ -5,14 +5,15 @@ from config.env import UploadConfig
from module_admin.service.login_service import LoginService from module_admin.service.login_service import LoginService
from module_admin.service.user_service import * from module_admin.service.user_service import *
from module_admin.service.dept_service import DeptService from module_admin.service.dept_service import DeptService
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.aspect.data_scope import GetDataScope
from module_admin.annotation.log_annotation import log_decorator
from config.enums import BusinessType
from utils.page_util import PageResponseModel from utils.page_util import PageResponseModel
from utils.response_util import * from utils.response_util import *
from utils.log_util import * from utils.log_util import *
from utils.common_util import bytes2file_response from utils.common_util import bytes2file_response
from utils.upload_util import UploadUtil from utils.upload_util import UploadUtil
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.aspect.data_scope import GetDataScope
from module_admin.annotation.log_annotation import log_decorator
userController = APIRouter(prefix='/system/user', dependencies=[Depends(LoginService.get_current_user)]) userController = APIRouter(prefix='/system/user', dependencies=[Depends(LoginService.get_current_user)])
@ -42,7 +43,7 @@ async def get_system_user_list(request: Request, user_page_query: UserPageQueryM
@userController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:user:add'))]) @userController.post("", dependencies=[Depends(CheckUserInterfaceAuth('system:user:add'))])
@log_decorator(title='用户管理', business_type=1) @log_decorator(title='用户管理', business_type=BusinessType.INSERT)
async def add_system_user(request: Request, add_user: AddUserModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def add_system_user(request: Request, add_user: AddUserModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
add_user.password = PwdUtil.get_password_hash(add_user.password) add_user.password = PwdUtil.get_password_hash(add_user.password)
@ -63,7 +64,7 @@ async def add_system_user(request: Request, add_user: AddUserModel, query_db: As
@userController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:user:edit'))]) @userController.put("", dependencies=[Depends(CheckUserInterfaceAuth('system:user:edit'))])
@log_decorator(title='用户管理', business_type=2) @log_decorator(title='用户管理', business_type=BusinessType.UPDATE)
async def edit_system_user(request: Request, edit_user: EditUserModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def edit_system_user(request: Request, edit_user: EditUserModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_user.update_by = current_user.user.user_name edit_user.update_by = current_user.user.user_name
@ -81,7 +82,7 @@ async def edit_system_user(request: Request, edit_user: EditUserModel, query_db:
@userController.delete("/{user_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:user:remove'))]) @userController.delete("/{user_ids}", dependencies=[Depends(CheckUserInterfaceAuth('system:user:remove'))])
@log_decorator(title='用户管理', business_type=3) @log_decorator(title='用户管理', business_type=BusinessType.DELETE)
async def delete_system_user(request: Request, user_ids: str, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def delete_system_user(request: Request, user_ids: str, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
delete_user = DeleteUserModel( delete_user = DeleteUserModel(
@ -102,7 +103,7 @@ async def delete_system_user(request: Request, user_ids: str, query_db: AsyncSes
@userController.put("/resetPwd", dependencies=[Depends(CheckUserInterfaceAuth('system:user:resetPwd'))]) @userController.put("/resetPwd", dependencies=[Depends(CheckUserInterfaceAuth('system:user:resetPwd'))])
@log_decorator(title='用户管理', business_type=2) @log_decorator(title='用户管理', business_type=BusinessType.UPDATE)
async def reset_system_user_pwd(request: Request, edit_user: EditUserModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def reset_system_user_pwd(request: Request, edit_user: EditUserModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_user.password = PwdUtil.get_password_hash(edit_user.password) edit_user.password = PwdUtil.get_password_hash(edit_user.password)
@ -122,7 +123,7 @@ async def reset_system_user_pwd(request: Request, edit_user: EditUserModel, quer
@userController.put("/changeStatus", dependencies=[Depends(CheckUserInterfaceAuth('system:user:edit'))]) @userController.put("/changeStatus", dependencies=[Depends(CheckUserInterfaceAuth('system:user:edit'))])
@log_decorator(title='用户管理', business_type=2) @log_decorator(title='用户管理', business_type=BusinessType.UPDATE)
async def change_system_user_status(request: Request, edit_user: EditUserModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def change_system_user_status(request: Request, edit_user: EditUserModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_user.update_by = current_user.user.user_name edit_user.update_by = current_user.user.user_name
@ -164,7 +165,7 @@ async def query_detail_system_user(request: Request, user_id: Optional[Union[int
@userController.post("/profile/avatar") @userController.post("/profile/avatar")
@log_decorator(title='个人信息', business_type=2) @log_decorator(title='个人信息', business_type=BusinessType.UPDATE)
async def change_system_user_profile_avatar(request: Request, avatarfile: bytes = File(), query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def change_system_user_profile_avatar(request: Request, avatarfile: bytes = File(), query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
relative_path = f'avatar/{datetime.now().strftime("%Y")}/{datetime.now().strftime("%m")}/{datetime.now().strftime("%d")}' relative_path = f'avatar/{datetime.now().strftime("%Y")}/{datetime.now().strftime("%m")}/{datetime.now().strftime("%d")}'
@ -197,7 +198,7 @@ async def change_system_user_profile_avatar(request: Request, avatarfile: bytes
@userController.put("/profile") @userController.put("/profile")
@log_decorator(title='个人信息', business_type=2) @log_decorator(title='个人信息', business_type=BusinessType.UPDATE)
async def change_system_user_profile_info(request: Request, user_info: UserInfoModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def change_system_user_profile_info(request: Request, user_info: UserInfoModel, query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
edit_user = EditUserModel( edit_user = EditUserModel(
@ -227,7 +228,7 @@ async def change_system_user_profile_info(request: Request, user_info: UserInfoM
@userController.put("/profile/updatePwd") @userController.put("/profile/updatePwd")
@log_decorator(title='个人信息', business_type=2) @log_decorator(title='个人信息', business_type=BusinessType.UPDATE)
async def reset_system_user_password(request: Request, reset_password: ResetPasswordModel = Depends(ResetPasswordModel.as_query), query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def reset_system_user_password(request: Request, reset_password: ResetPasswordModel = Depends(ResetPasswordModel.as_query), query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
reset_user = ResetUserModel( reset_user = ResetUserModel(
@ -250,7 +251,7 @@ async def reset_system_user_password(request: Request, reset_password: ResetPass
@userController.post("/importData", dependencies=[Depends(CheckUserInterfaceAuth('system:user:import'))]) @userController.post("/importData", dependencies=[Depends(CheckUserInterfaceAuth('system:user:import'))])
@log_decorator(title='用户管理', business_type=6) @log_decorator(title='用户管理', business_type=BusinessType.IMPORT)
async def batch_import_system_user(request: Request, file: UploadFile = File(...), update_support: bool = Query(alias='updateSupport'), query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)): async def batch_import_system_user(request: Request, file: UploadFile = File(...), update_support: bool = Query(alias='updateSupport'), query_db: AsyncSession = Depends(get_db), current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
try: try:
batch_import_result = await UserService.batch_import_user_services(query_db, file, update_support, current_user) batch_import_result = await UserService.batch_import_user_services(query_db, file, update_support, current_user)
@ -277,7 +278,7 @@ async def export_system_user_template(request: Request, query_db: AsyncSession =
@userController.post("/export", dependencies=[Depends(CheckUserInterfaceAuth('system:user:export'))]) @userController.post("/export", dependencies=[Depends(CheckUserInterfaceAuth('system:user:export'))])
@log_decorator(title='用户管理', business_type=5) @log_decorator(title='用户管理', business_type=BusinessType.EXPORT)
async def export_system_user_list(request: Request, user_page_query: UserPageQueryModel = Depends(UserPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db), data_scope_sql: str = Depends(GetDataScope('SysUser'))): async def export_system_user_list(request: Request, user_page_query: UserPageQueryModel = Depends(UserPageQueryModel.as_form), query_db: AsyncSession = Depends(get_db), data_scope_sql: str = Depends(GetDataScope('SysUser'))):
try: try:
# 获取全量数据 # 获取全量数据
@ -303,6 +304,7 @@ async def get_system_allocated_role_list(request: Request, user_id: int, query_d
@userController.put("/authRole", response_model=UserRoleResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('system:user:edit'))]) @userController.put("/authRole", response_model=UserRoleResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('system:user:edit'))])
@log_decorator(title='用户管理', business_type=BusinessType.GRANT)
async def update_system_role_user(request: Request, user_id: int = Query(alias='userId'), role_ids: str = Query(alias='roleIds'), query_db: AsyncSession = Depends(get_db)): async def update_system_role_user(request: Request, user_id: int = Query(alias='userId'), role_ids: str = Query(alias='roleIds'), query_db: AsyncSession = Depends(get_db)):
try: try:
add_user_role_result = await UserService.add_user_role_services(query_db, CrudUserRoleModel(userId=user_id, roleIds=role_ids)) add_user_role_result = await UserService.add_user_role_services(query_db, CrudUserRoleModel(userId=user_id, roleIds=role_ids))

Loading…
Cancel
Save