Fix exercise statistics when external users share the same ID as internal users

This commit is contained in:
Sebastian Serth
2022-01-13 16:02:25 +01:00
parent a88efccd39
commit 21009c7eaa

View File

@ -506,8 +506,8 @@ working_time_accumulated: working_time_accumulated})
'AND FALSE'
end
query = "SELECT user_id, MAX(score) AS maximum_score, COUNT(id) AS runs
FROM submissions WHERE exercise_id = #{@exercise.id} #{additional_filter} GROUP BY
user_id;"
FROM submissions WHERE exercise_id = #{@exercise.id} #{additional_filter} AND user_type = 'ExternalUser'
GROUP BY user_id;"
ApplicationRecord.connection.execute(query).each do |tuple|
user_statistics[tuple['user_id'].to_i] = tuple
end