1
This commit is contained in:
@@ -22,6 +22,7 @@ async def list_users(
|
||||
description="每页条数",
|
||||
),
|
||||
username: str | None = Query(None, description="用户名模糊搜索"),
|
||||
device_serial: str | None = Query(None, description="设备码模糊搜索"),
|
||||
oem_id: int | None = Query(None, description="按所属 OEM 用户 ID 筛选"),
|
||||
agent_id: int | None = Query(None, description="按所属代理用户 ID 筛选"),
|
||||
role_id: int | None = Query(None, ge=0, le=3, description="按角色筛选"),
|
||||
@@ -31,6 +32,7 @@ async def list_users(
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
username=username,
|
||||
device_serial=device_serial,
|
||||
oem_id=oem_id,
|
||||
agent_id=agent_id,
|
||||
role_id=role_id,
|
||||
|
||||
@@ -19,6 +19,7 @@ class AdminUserError(Exception):
|
||||
def _list_users_filters(
|
||||
*,
|
||||
username: str | None = None,
|
||||
device_serial: str | None = None,
|
||||
oem_id: int | None = None,
|
||||
agent_id: int | None = None,
|
||||
role_id: int | None = None,
|
||||
@@ -26,6 +27,8 @@ def _list_users_filters(
|
||||
conditions = []
|
||||
if username and username.strip():
|
||||
conditions.append(User.username.ilike(f"%{username.strip()}%"))
|
||||
if device_serial and device_serial.strip():
|
||||
conditions.append(User.device_serial.ilike(f"%{device_serial.strip()}%"))
|
||||
if oem_id is not None:
|
||||
conditions.append(User.oem_id == oem_id)
|
||||
if agent_id is not None:
|
||||
@@ -41,6 +44,7 @@ async def list_users(
|
||||
page: int = 1,
|
||||
page_size: int = DEFAULT_PAGE_SIZE,
|
||||
username: str | None = None,
|
||||
device_serial: str | None = None,
|
||||
oem_id: int | None = None,
|
||||
agent_id: int | None = None,
|
||||
role_id: int | None = None,
|
||||
@@ -50,6 +54,7 @@ async def list_users(
|
||||
offset = (page - 1) * page_size
|
||||
conditions = _list_users_filters(
|
||||
username=username,
|
||||
device_serial=device_serial,
|
||||
oem_id=oem_id,
|
||||
agent_id=agent_id,
|
||||
role_id=role_id,
|
||||
|
||||
Reference in New Issue
Block a user