diff --git a/.gitignore b/.gitignore index f6c6f30..129a39b 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,7 @@ lib64/ parts/ sdist/ var/ +vf_admin/ wheels/ share/python-wheels/ *.egg-info/ diff --git a/README.md b/README.md index 24409e9..ed227c6 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@
-
+
diff --git a/ruoyi-fastapi-backend/.env.dev b/ruoyi-fastapi-backend/.env.dev
index 3ca3eb2..0a1849e 100644
--- a/ruoyi-fastapi-backend/.env.dev
+++ b/ruoyi-fastapi-backend/.env.dev
@@ -10,7 +10,7 @@ APP_HOST = '0.0.0.0'
# 应用端口
APP_PORT = 9099
# 应用版本
-APP_VERSION= '1.3.1'
+APP_VERSION= '1.3.2'
# 应用是否开启热重载
APP_RELOAD = true
# 应用是否开启IP归属区域查询
diff --git a/ruoyi-fastapi-backend/.env.prod b/ruoyi-fastapi-backend/.env.prod
index 5a681c5..de24b3e 100644
--- a/ruoyi-fastapi-backend/.env.prod
+++ b/ruoyi-fastapi-backend/.env.prod
@@ -10,7 +10,7 @@ APP_HOST = '0.0.0.0'
# 应用端口
APP_PORT = 9099
# 应用版本
-APP_VERSION= '1.3.1'
+APP_VERSION= '1.3.2'
# 应用是否开启热重载
APP_RELOAD = false
# 应用是否开启IP归属区域查询
diff --git a/ruoyi-fastapi-backend/config/get_scheduler.py b/ruoyi-fastapi-backend/config/get_scheduler.py
index 5c5809c..589e457 100644
--- a/ruoyi-fastapi-backend/config/get_scheduler.py
+++ b/ruoyi-fastapi-backend/config/get_scheduler.py
@@ -221,39 +221,40 @@ class SchedulerUtil:
if event_type == 'JobExecutionEvent' and event.exception:
exception_info = str(event.exception)
status = '1'
- job_id = event.job_id
- query_job = cls.get_scheduler_job(job_id=job_id)
- if query_job:
- query_job_info = query_job.__getstate__()
- # 获取任务名称
- job_name = query_job_info.get('name')
- # 获取任务组名
- job_group = query_job._jobstore_alias
- # 获取任务执行器
- job_executor = query_job_info.get('executor')
- # 获取调用目标字符串
- invoke_target = query_job_info.get('func')
- # 获取调用函数位置参数
- job_args = ','.join(query_job_info.get('args'))
- # 获取调用函数关键字参数
- job_kwargs = json.dumps(query_job_info.get('kwargs'))
- # 获取任务触发器
- job_trigger = str(query_job_info.get('trigger'))
- # 构造日志消息
- job_message = f"事件类型: {event_type}, 任务ID: {job_id}, 任务名称: {job_name}, 执行于{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}"
- job_log = JobLogModel(
- jobName=job_name,
- jobGroup=job_group,
- jobExecutor=job_executor,
- invokeTarget=invoke_target,
- jobArgs=job_args,
- jobKwargs=job_kwargs,
- jobTrigger=job_trigger,
- jobMessage=job_message,
- status=status,
- exceptionInfo=exception_info,
- createTime=datetime.now(),
- )
- session = SessionLocal()
- JobLogService.add_job_log_services(session, job_log)
- session.close()
+ if hasattr(event, 'job_id'):
+ job_id = event.job_id
+ query_job = cls.get_scheduler_job(job_id=job_id)
+ if query_job:
+ query_job_info = query_job.__getstate__()
+ # 获取任务名称
+ job_name = query_job_info.get('name')
+ # 获取任务组名
+ job_group = query_job._jobstore_alias
+ # 获取任务执行器
+ job_executor = query_job_info.get('executor')
+ # 获取调用目标字符串
+ invoke_target = query_job_info.get('func')
+ # 获取调用函数位置参数
+ job_args = ','.join(query_job_info.get('args'))
+ # 获取调用函数关键字参数
+ job_kwargs = json.dumps(query_job_info.get('kwargs'))
+ # 获取任务触发器
+ job_trigger = str(query_job_info.get('trigger'))
+ # 构造日志消息
+ job_message = f"事件类型: {event_type}, 任务ID: {job_id}, 任务名称: {job_name}, 执行于{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}"
+ job_log = JobLogModel(
+ jobName=job_name,
+ jobGroup=job_group,
+ jobExecutor=job_executor,
+ invokeTarget=invoke_target,
+ jobArgs=job_args,
+ jobKwargs=job_kwargs,
+ jobTrigger=job_trigger,
+ jobMessage=job_message,
+ status=status,
+ exceptionInfo=exception_info,
+ createTime=datetime.now(),
+ )
+ session = SessionLocal()
+ JobLogService.add_job_log_services(session, job_log)
+ session.close()
diff --git a/ruoyi-fastapi-backend/middlewares/cors_middleware.py b/ruoyi-fastapi-backend/middlewares/cors_middleware.py
index 754fc1a..55508e7 100644
--- a/ruoyi-fastapi-backend/middlewares/cors_middleware.py
+++ b/ruoyi-fastapi-backend/middlewares/cors_middleware.py
@@ -3,6 +3,12 @@ from fastapi.middleware.cors import CORSMiddleware
def add_cors_middleware(app: FastAPI):
+ """
+ 添加跨域中间件
+
+ :param app: FastAPI对象
+ :return:
+ """
# 前端页面url
origins = [
'http://localhost:80',
diff --git a/ruoyi-fastapi-backend/middlewares/gzip_middleware.py b/ruoyi-fastapi-backend/middlewares/gzip_middleware.py
new file mode 100644
index 0000000..eb371ce
--- /dev/null
+++ b/ruoyi-fastapi-backend/middlewares/gzip_middleware.py
@@ -0,0 +1,12 @@
+from fastapi import FastAPI
+from starlette.middleware.gzip import GZipMiddleware
+
+
+def add_gzip_middleware(app: FastAPI):
+ """
+ 添加gzip压缩中间件
+
+ :param app: FastAPI对象
+ :return:
+ """
+ app.add_middleware(GZipMiddleware, minimum_size=1000, compresslevel=9)
diff --git a/ruoyi-fastapi-backend/middlewares/handle.py b/ruoyi-fastapi-backend/middlewares/handle.py
index 311ec6b..ea447d4 100644
--- a/ruoyi-fastapi-backend/middlewares/handle.py
+++ b/ruoyi-fastapi-backend/middlewares/handle.py
@@ -1,5 +1,6 @@
from fastapi import FastAPI
from middlewares.cors_middleware import add_cors_middleware
+from middlewares.gzip_middleware import add_gzip_middleware
def handle_middleware(app: FastAPI):
@@ -8,3 +9,5 @@ def handle_middleware(app: FastAPI):
"""
# 加载跨域中间件
add_cors_middleware(app)
+ # 加载gzip压缩中间件
+ add_gzip_middleware(app)
diff --git a/ruoyi-fastapi-backend/utils/page_util.py b/ruoyi-fastapi-backend/utils/page_util.py
index 6e7bfe2..dfe8a31 100644
--- a/ruoyi-fastapi-backend/utils/page_util.py
+++ b/ruoyi-fastapi-backend/utils/page_util.py
@@ -71,7 +71,7 @@ class PageUtil:
paginated_data.append(row[0])
else:
paginated_data.append(row)
- has_next = True if math.ceil(len(paginated_data) / page_size) > page_num else False
+ has_next = math.ceil(total / page_size) > page_num
result = PageResponseModel(
rows=CamelCaseUtil.transform_result(paginated_data),
pageNum=page_num,
diff --git a/ruoyi-fastapi-frontend/package.json b/ruoyi-fastapi-frontend/package.json
index 9cd358d..ae463d2 100644
--- a/ruoyi-fastapi-frontend/package.json
+++ b/ruoyi-fastapi-frontend/package.json
@@ -1,6 +1,6 @@
{
"name": "vfadmin",
- "version": "1.3.1",
+ "version": "1.3.2",
"description": "vfadmin管理系统",
"author": "insistence",
"license": "MIT",