Add total time result to library user stats

This commit is contained in:
JonnyWong16 2022-01-03 12:28:48 -08:00
parent 094b2211c3
commit 3fc2368078
No known key found for this signature in database
GPG key ID: 7A649674469E6574

View file

@ -978,13 +978,14 @@ class Libraries(object):
query = 'SELECT (CASE WHEN users.friendly_name IS NULL OR TRIM(users.friendly_name) = "" ' \ query = 'SELECT (CASE WHEN users.friendly_name IS NULL OR TRIM(users.friendly_name) = "" ' \
'THEN users.username ELSE users.friendly_name END) AS friendly_name, ' \ 'THEN users.username ELSE users.friendly_name END) AS friendly_name, ' \
'users.user_id, users.username, users.thumb, users.custom_avatar_url AS custom_thumb, ' \ 'users.user_id, users.username, users.thumb, users.custom_avatar_url AS custom_thumb, ' \
'COUNT(DISTINCT %s) AS user_count ' \ 'COUNT(DISTINCT %s) AS total_plays, (SUM(stopped - started) - ' \
'SUM(CASE WHEN paused_counter IS NULL THEN 0 ELSE paused_counter END)) AS total_time ' \
'FROM session_history ' \ 'FROM session_history ' \
'JOIN session_history_metadata ON session_history_metadata.id = session_history.id ' \ 'JOIN session_history_metadata ON session_history_metadata.id = session_history.id ' \
'JOIN users ON users.user_id = session_history.user_id ' \ 'JOIN users ON users.user_id = session_history.user_id ' \
'WHERE section_id = ? ' \ 'WHERE section_id = ? ' \
'GROUP BY users.user_id ' \ 'GROUP BY users.user_id ' \
'ORDER BY user_count DESC' % group_by 'ORDER BY total_plays DESC, total_time DESC' % group_by
result = monitor_db.select(query, args=[section_id]) result = monitor_db.select(query, args=[section_id])
else: else:
result = [] result = []
@ -1004,7 +1005,8 @@ class Libraries(object):
'user_id': item['user_id'], 'user_id': item['user_id'],
'user_thumb': user_thumb, 'user_thumb': user_thumb,
'username': item['username'], 'username': item['username'],
'total_plays': item['user_count'] 'total_plays': item['total_plays'],
'total_time': item['total_time']
} }
user_stats.append(row) user_stats.append(row)