🐛 fix: Optimize download statistics query to only count completed file types.
This commit is contained in:
parent
00f8b55351
commit
7be1301f7c
1 changed files with 9 additions and 9 deletions
|
|
@ -204,15 +204,15 @@ public class FileRepositoryImpl implements FileRepository {
|
|||
public Future<JsonObject> 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}
|
||||
""")
|
||||
|
|
|
|||
Loading…
Reference in a new issue