需测试[0.2.7.3][ci]

This commit is contained in:
DSQ
2026-03-15 17:11:31 +08:00
parent f38cb5ec76
commit b0c3707ccd
4 changed files with 148 additions and 9 deletions

View File

@@ -444,6 +444,7 @@ def get_users(request):
is_admin = int(request.session.get("permission", 1)) == 0
requester = get_user_by_id(uid) or {}
mgr_keys = set(requester.get("manage_key") or [])
key_q = (request.GET.get("key") or "").strip()
q = (request.GET.get("search") or "").strip()
users = get_all_users()
if is_admin:
@@ -455,6 +456,15 @@ def get_users(request):
filtered = [u for u in users if match_manage(u)]
else:
filtered = [u for u in users if str(u.get("user_id")) == str(uid)]
if key_q:
k = str(key_q).strip()
def match_key(user):
try:
ukeys = {str(x).strip() for x in (user.get("key") or []) if str(x).strip()}
except Exception:
ukeys = set()
return k in ukeys
filtered = [u for u in filtered if match_key(u)]
if q:
filtered = [u for u in filtered if q in str(u.get("username", ""))]
return JsonResponse({"status": "success", "data": filtered})