From 7be1301f7cffaf9f9ab6e3180289447681ef68c9 Mon Sep 17 00:00:00 2001 From: jarvis2f <137974272+jarvis2f@users.noreply.github.com> Date: Mon, 23 Dec 2024 20:08:38 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix:=20Optimize=20download=20sta?= =?UTF-8?q?tistics=20query=20to=20only=20count=20completed=20file=20types.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/impl/FileRepositoryImpl.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/api/src/main/java/telegram/files/repository/impl/FileRepositoryImpl.java b/api/src/main/java/telegram/files/repository/impl/FileRepositoryImpl.java index cb768bd..2b0d180 100644 --- a/api/src/main/java/telegram/files/repository/impl/FileRepositoryImpl.java +++ b/api/src/main/java/telegram/files/repository/impl/FileRepositoryImpl.java @@ -204,15 +204,15 @@ public class FileRepositoryImpl implements FileRepository { public Future getDownloadStatistics(long telegramId) { return SqlTemplate .forQuery(pool, """ - SELECT COUNT(*) AS total, - COUNT(CASE WHEN download_status = 'downloading' THEN 1 END) AS downloading, - COUNT(CASE WHEN download_status = 'paused' THEN 1 END) AS paused, - COUNT(CASE WHEN download_status = 'completed' THEN 1 END) AS completed, - COUNT(CASE WHEN download_status = 'error' THEN 1 END) AS error, - COUNT(CASE WHEN type = 'photo' THEN 1 END) AS photo, - COUNT(CASE WHEN type = 'video' THEN 1 END) AS video, - COUNT(CASE WHEN type = 'audio' THEN 1 END) AS audio, - COUNT(CASE WHEN type = 'file' THEN 1 END) AS file + SELECT COUNT(*) AS total, + COUNT(CASE WHEN download_status = 'downloading' THEN 1 END) AS downloading, + COUNT(CASE WHEN download_status = 'paused' THEN 1 END) AS paused, + COUNT(CASE WHEN download_status = 'completed' THEN 1 END) AS completed, + COUNT(CASE WHEN download_status = 'error' THEN 1 END) AS error, + COUNT(CASE WHEN download_status = 'completed' and type = 'photo' THEN 1 END) AS photo, + COUNT(CASE WHEN download_status = 'completed' and type = 'video' THEN 1 END) AS video, + COUNT(CASE WHEN download_status = 'completed' and type = 'audio' THEN 1 END) AS audio, + COUNT(CASE WHEN download_status = 'completed' and type = 'file' THEN 1 END) AS file FROM file_record WHERE telegram_id = #{telegramId} """)