From 253f5b215ca7a9b42e59ffe566d8a7367c829314 Mon Sep 17 00:00:00 2001 From: bruno Date: Mon, 13 Jul 2026 13:00:42 -0400 Subject: [PATCH] =?UTF-8?q?fix:=20admin=20query=20adapt=C3=A9e=20au=20sch?= =?UTF-8?q?=C3=A9ma=20r=C3=A9el=20(pas=20de=20owner=5Fid/is=5Ffolder)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/routers/admin.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/app/routers/admin.py b/app/routers/admin.py index e210781..272ddcd 100644 --- a/app/routers/admin.py +++ b/app/routers/admin.py @@ -24,16 +24,16 @@ async def list_users(_admin=Depends(admin_required)): SELECT u.id, u.login, u.full_name, u.email, u.is_admin, u.is_active, u.last_login, u.created_at, (SELECT COUNT(*) FROM workspaces WHERE owner_id=u.id) AS ws_count, - (SELECT COUNT(*) FROM pages WHERE owner_id=u.id AND is_folder=0) AS file_count, - (SELECT COUNT(*) FROM pages WHERE owner_id=u.id AND is_folder=1) AS folder_count, - COALESCE((SELECT SUM(size_bytes) FROM pages WHERE owner_id=u.id), 0) AS total_bytes + (SELECT COUNT(*) FROM pages WHERE workspace_id IN (SELECT id FROM workspaces WHERE owner_id=u.id)) AS page_count FROM users u ORDER BY u.id """).fetchall() users = [] for r in rows: d = dict(r) - d["total_mb"] = round(d["total_bytes"] / (1024 * 1024), 2) + d["file_count"] = d["page_count"] + d["folder_count"] = 0 + d["total_mb"] = 0 users.append(d) return {"users": users} @@ -127,9 +127,9 @@ async def user_stats(_admin=Depends(admin_required)): with get_conn() as conn: total_users = conn.execute("SELECT COUNT(*) FROM users").fetchone()[0] total_ws = conn.execute("SELECT COUNT(*) FROM workspaces").fetchone()[0] - total_files = conn.execute("SELECT COUNT(*) FROM pages WHERE is_folder=0").fetchone()[0] - total_folders = conn.execute("SELECT COUNT(*) FROM pages WHERE is_folder=1").fetchone()[0] - total_bytes = conn.execute("SELECT COALESCE(SUM(size_bytes), 0) FROM pages").fetchone()[0] + total_files = conn.execute("SELECT COUNT(*) FROM pages").fetchone()[0] + total_folders = 0 + total_bytes = 0 return { "total_users": total_users, "total_workspaces": total_ws,