feat(前端): 添加页面切换动画功能并优化工作流节点样式

refactor(后端): 统一查询参数处理使用QueueEnum枚举

style(前端): 优化菜单搜索组件样式

fix(后端): 移除不支持的数据库类型dm

chore: 更新依赖和配置文件
This commit is contained in:
zhangtao
2026-02-06 22:31:39 +08:00
parent 2af82b3959
commit 51f9a9acfa
63 changed files with 2947 additions and 555 deletions
@@ -5,7 +5,7 @@ from fastapi.responses import JSONResponse, StreamingResponse
from app.api.v1.module_system.auth.schema import AuthSchema
from app.common.request import PaginationService
from app.common.response import StreamResponse, SuccessResponse
from app.common.response import ResponseSchema, StreamResponse, SuccessResponse
from app.core.base_params import PaginationQueryParam
from app.core.base_schema import BatchSetAvailable
from app.core.dependencies import AuthPermission, get_current_user
@@ -23,7 +23,7 @@ NoticeRouter = APIRouter(route_class=OperationLogRoute, prefix="/notice", tags=[
"/detail/{id}",
summary="获取公告详情",
description="获取公告详情",
response_model=NoticeOutSchema,
response_model=ResponseSchema[NoticeOutSchema],
)
async def get_obj_detail_controller(
id: Annotated[int, Path(description="公告ID")],
@@ -48,7 +48,7 @@ async def get_obj_detail_controller(
"/list",
summary="查询公告",
description="查询公告",
response_model=list[NoticeOutSchema],
response_model=ResponseSchema[list[NoticeOutSchema]],
)
async def get_obj_list_controller(
page: Annotated[PaginationQueryParam, Depends()],
@@ -82,7 +82,7 @@ async def get_obj_list_controller(
"/create",
summary="创建公告",
description="创建公告",
response_model=NoticeOutSchema,
response_model=ResponseSchema[NoticeOutSchema],
)
async def create_obj_controller(
data: NoticeCreateSchema,
@@ -107,7 +107,7 @@ async def create_obj_controller(
"/update/{id}",
summary="修改公告",
description="修改公告",
response_model=NoticeOutSchema,
response_model=ResponseSchema[NoticeOutSchema],
)
async def update_obj_controller(
data: NoticeUpdateSchema,
@@ -134,6 +134,7 @@ async def update_obj_controller(
"/delete",
summary="删除公告",
description="删除公告",
response_model=ResponseSchema[None],
)
async def delete_obj_controller(
ids: Annotated[list[int], Body(description="ID列表")],
@@ -158,6 +159,7 @@ async def delete_obj_controller(
"/available/setting",
summary="批量修改公告状态",
description="批量修改公告状态",
response_model=ResponseSchema[None],
)
async def batch_set_available_obj_controller(
data: BatchSetAvailable,
@@ -182,6 +184,7 @@ async def batch_set_available_obj_controller(
"/export",
summary="导出公告",
description="导出公告",
response_model=ResponseSchema[None],
)
async def export_obj_list_controller(
search: Annotated[NoticeQueryParam, Depends()],
@@ -212,7 +215,7 @@ async def export_obj_list_controller(
"/available",
summary="获取全局启用公告",
description="获取全局启用公告",
response_model=list[NoticeOutSchema],
response_model=ResponseSchema[list[NoticeOutSchema]],
)
async def get_obj_list_available_controller(
auth: Annotated[AuthSchema, Depends(get_current_user)],
@@ -7,6 +7,7 @@ from pydantic import (
model_validator,
)
from app.common.enums import QueueEnum
from app.core.base_schema import BaseSchema, UserBySchema
from app.core.validator import DateTimeStr
@@ -69,25 +70,25 @@ class NoticeQueryParam:
updated_id: int | None = Query(None, description="更新人"),
) -> None:
# 模糊查询字段
self.notice_title = ("like", notice_title)
self.notice_title = (QueueEnum.like.value, notice_title)
# 精确查询字段
self.notice_type = notice_type
# 模糊查询字段
if description:
self.description = ("like", description)
self.description = (QueueEnum.like.value, description)
# 精确查询字段
if status:
self.status = ("eq", status)
self.status = (QueueEnum.eq.value, status)
# 时间范围查询
if created_time and len(created_time) == 2:
self.created_time = ("between", (created_time[0], created_time[1]))
self.created_time = (QueueEnum.between.value, (created_time[0], created_time[1]))
if updated_time and len(updated_time) == 2:
self.updated_time = ("between", (updated_time[0], updated_time[1]))
self.updated_time = (QueueEnum.between.value, (updated_time[0], updated_time[1]))
# 关联查询字段
if created_id:
self.created_id = ("eq", created_id)
self.created_id = (QueueEnum.eq.value, created_id)
if updated_id:
self.updated_id = ("eq", updated_id)
self.updated_id = (QueueEnum.eq.value, updated_id)