mirror of
https://github.com/fastapiadmin/FastapiAdmin.git
synced 2026-09-20 20:39:55 +00:00
1、后端查询参数修订
2、后端过滤数据权限优化逻辑 3、获取在线用户缓存crud中keys变为*keys 4、前端状态查询修订 5、前端文件管理列表修订icon控制台警告 6、前端布局页面通知公告信息对接后端完成
This commit is contained in:
@@ -13,21 +13,13 @@ class DeptQueryParams:
|
||||
self,
|
||||
name: Optional[str] = Query(None, description="部门名称", min_length=2, max_length=50),
|
||||
available: Optional[bool] = Query(None, description="部门状态(True正常 False停用)"),
|
||||
creator: Optional[str] = Query(None, description="创建者"),
|
||||
start_time: Optional[DateTimeStr] = Query(None, description="开始时间", example="2023-01-01 00:00:00"),
|
||||
end_time: Optional[DateTimeStr] = Query(None, description="结束时间", example="2023-12-31 23:59:59"),
|
||||
|
||||
) -> None:
|
||||
super().__init__()
|
||||
|
||||
# 模糊查询字段
|
||||
self.name = ("like", f"%{name}%") if name else None
|
||||
self.creator = ("like", f"%{creator}%") if creator else None
|
||||
self.name = ("like", name)
|
||||
|
||||
# 精确查询字段
|
||||
self.available = ("eq", available) if available is not None else None
|
||||
|
||||
# 时间范围查询
|
||||
if start_time and end_time:
|
||||
start_datetime = datetime.strptime(str(start_time), '%Y-%m-%d %H:%M:%S')
|
||||
end_datetime = datetime.strptime(str(end_time), '%Y-%m-%d %H:%M:%S')
|
||||
self.created_at = ("between", (start_datetime, end_datetime))
|
||||
self.available = available
|
||||
|
||||
|
||||
@@ -15,17 +15,15 @@ class MenuQueryParams:
|
||||
type: Optional[Literal['M', 'C', 'F']] = Query(None, description="菜单类型(M目录 C菜单 F按钮)"),
|
||||
permission: Optional[str] = Query(None, description="权限标识", min_length=1, max_length=100),
|
||||
available: Optional[bool] = Query(None, description="菜单状态(True正常 False停用)"),
|
||||
creator: Optional[str] = Query(None, description="创建者"),
|
||||
) -> None:
|
||||
super().__init__()
|
||||
|
||||
# 模糊查询字段
|
||||
self.name = ("like", f"%{name}%") if name else None
|
||||
self.route_path = ("like", f"%{route_path}%") if route_path else None
|
||||
self.component_path = ("like", f"%{component_path}%") if component_path else None
|
||||
self.permission = ("like", f"%{permission}%") if permission else None
|
||||
self.creator = ("like", f"%{creator}%") if creator else None
|
||||
self.name = ("like", name)
|
||||
self.route_path = ("like", route_path)
|
||||
self.component_path = ("like", component_path)
|
||||
self.permission = ("like", permission)
|
||||
|
||||
# 精确查询字段
|
||||
self.type = ("eq", type) if type else None
|
||||
self.available = ("eq", available) if available is not None else None
|
||||
self.type = type
|
||||
self.available = available
|
||||
|
||||
@@ -10,12 +10,14 @@ class NoticeQueryParams:
|
||||
self,
|
||||
notice_title: Optional[str] = Query(None, description="公告标题", min_length=2, max_length=20),
|
||||
available: Optional[bool] = Query(None, description="是否可用"),
|
||||
creator: Optional[int] = Query(None, description="创建人"),
|
||||
) -> None:
|
||||
super().__init__()
|
||||
|
||||
# 模糊查询字段
|
||||
self.notice_title = ("like", f"%{notice_title}%") if notice_title else None
|
||||
self.notice_title = ("like", notice_title)
|
||||
|
||||
# 精确查询字段
|
||||
self.available = ("eq", available) if available is not None else None
|
||||
self.creator_id = creator
|
||||
self.available = available
|
||||
|
||||
|
||||
@@ -23,12 +23,12 @@ class OperationLogQueryParams:
|
||||
|
||||
# 模糊查询字段
|
||||
self.request_path = ("like", f"%{request_path}%") if request_path else None
|
||||
self.creator_id = creator
|
||||
|
||||
# 精确查询字段
|
||||
self.request_method = ("eq", request_method) if request_method else None
|
||||
self.request_ip = ("eq", request_ip) if request_ip else None
|
||||
self.response_code = ("eq", response_code) if response_code else None
|
||||
self.creator_id = creator
|
||||
self.request_method = request_method
|
||||
self.request_ip = request_ip
|
||||
self.response_code = response_code
|
||||
|
||||
# 时间范围查询
|
||||
if start_time and end_time:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from datetime import datetime
|
||||
from typing import Optional
|
||||
from fastapi import Query
|
||||
|
||||
@@ -10,16 +11,21 @@ class PositionQueryParams:
|
||||
self,
|
||||
name: Optional[str] = Query(None, description="岗位名称", min_length=2, max_length=20),
|
||||
available: Optional[bool] = Query(None, description="是否可用"),
|
||||
creator: Optional[int] = Query(None, description="创建人"),
|
||||
start_time: Optional[str] = Query(None, description="开始时间", example="2023-01-01 00:00:00"),
|
||||
end_time: Optional[str] = Query(None, description="结束时间", example="2023-12-31 23:59:59"),
|
||||
) -> None:
|
||||
super().__init__()
|
||||
|
||||
# 模糊查询字段
|
||||
self.name = ("like", f"%{name}%") if name else None
|
||||
self.name = ("like", name)
|
||||
|
||||
# 精确查询字段
|
||||
self.available = ("eq", available) if available is not None else None
|
||||
self.creator_id = creator
|
||||
self.available = available
|
||||
|
||||
# 时间范围查询
|
||||
self.created_at = ("between", [start_time, end_time]) if start_time and end_time else None
|
||||
if start_time and end_time:
|
||||
start_datetime = datetime.strptime(start_time, '%Y-%m-%d %H:%M:%S')
|
||||
end_datetime = datetime.strptime(end_time, '%Y-%m-%d %H:%M:%S')
|
||||
self.created_at = ("between", (start_datetime, end_datetime))
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from datetime import datetime
|
||||
from typing import Optional
|
||||
from fastapi import Query
|
||||
|
||||
@@ -11,16 +12,21 @@ class RoleQueryParams:
|
||||
self,
|
||||
name: Optional[str] = Query(None, description="角色名称", min_length=2, max_length=20),
|
||||
available: Optional[bool] = Query(None, description="是否可用"),
|
||||
creator: Optional[int] = Query(None, description="创建人"),
|
||||
start_time: Optional[str] = Query(None, description="开始时间", example="2023-01-01 00:00:00"),
|
||||
end_time: Optional[str] = Query(None, description="结束时间", example="2023-12-31 23:59:59"),
|
||||
) -> None:
|
||||
super().__init__()
|
||||
|
||||
# 模糊查询字段
|
||||
self.name = ("like", f"%{name}%") if name else None
|
||||
self.name = ("like", name)
|
||||
|
||||
# 精确查询字段
|
||||
self.available = ("eq", available) if available is not None else None
|
||||
self.creator_id = creator
|
||||
self.available = available
|
||||
|
||||
# 时间范围查询
|
||||
self.created_at = ("between", [start_time, end_time]) if start_time and end_time else None
|
||||
if start_time and end_time:
|
||||
start_datetime = datetime.strptime(start_time, '%Y-%m-%d %H:%M:%S')
|
||||
end_datetime = datetime.strptime(end_time, '%Y-%m-%d %H:%M:%S')
|
||||
self.created_at = ("between", (start_datetime, end_datetime))
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from datetime import datetime
|
||||
from typing import Optional
|
||||
from fastapi import Query
|
||||
|
||||
@@ -15,19 +16,24 @@ class UserQueryParams:
|
||||
mobile: Optional[str] = Query(None, description="手机号", pattern=r'^1[3-9]\d{9}$'),
|
||||
email: Optional[str] = Query(None, description="邮箱", pattern=r'^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$'),
|
||||
available: Optional[bool] = Query(None, description="是否可用"),
|
||||
start_time: Optional[str] = Query(None, description="开始时间", example="2023-01-01 00:00:00"),
|
||||
end_time: Optional[str] = Query(None, description="结束时间", example="2023-12-31 23:59:59"),
|
||||
start_time: Optional[str] = Query(None, description="开始时间"),
|
||||
end_time: Optional[str] = Query(None, description="结束时间"),
|
||||
creator: Optional[int] = Query(None, description="创建人"),
|
||||
) -> None:
|
||||
super().__init__()
|
||||
|
||||
# 模糊查询字段
|
||||
self.username = ("like", f"%{username}%") if username else None
|
||||
self.name = ("like", f"%{name}%") if name else None
|
||||
self.mobile = ("like", f"%{mobile}%") if mobile else None
|
||||
self.email = ("like", f"%{email}%") if email else None
|
||||
self.username = ("like", username)
|
||||
self.name = ("like", name)
|
||||
self.mobile = ("like", mobile)
|
||||
self.email = ("like", email)
|
||||
|
||||
# 精确查询字段
|
||||
self.available = ("eq", available) if available is not None else None
|
||||
self.creator_id = creator
|
||||
self.available = available
|
||||
|
||||
# 时间范围查询
|
||||
self.created_at = ("between", [start_time, end_time]) if start_time and end_time else None
|
||||
if start_time and end_time:
|
||||
start_datetime = datetime.strptime(start_time, '%Y-%m-%d %H:%M:%S')
|
||||
end_datetime = datetime.strptime(end_time, '%Y-%m-%d %H:%M:%S')
|
||||
self.created_at = ("between", (start_datetime, end_datetime))
|
||||
|
||||
Reference in New Issue
Block a user