mirror of
https://github.com/RPCS3/discord-bot.git
synced 2025-03-03 23:37:03 +00:00
add secondary sort order
This commit is contained in:
parent
aac4ddb4c6
commit
9b99b3dbb4
@ -133,12 +133,13 @@ namespace CompatBot.Commands
|
||||
queryBase = queryBase.Where(g => g.Metacritic != null).Include(t => t.Metacritic);
|
||||
var query = scoreType switch
|
||||
{
|
||||
"critic" => queryBase.Where(t => t.Metacritic.CriticScore > 0).AsEnumerable().Select(t => (title: t.Name, score: t.Metacritic.CriticScore.Value)),
|
||||
"user" => queryBase.Where(t => t.Metacritic.UserScore > 0).AsEnumerable().Select(t => (title: t.Name, score: t.Metacritic.UserScore.Value)),
|
||||
_ => queryBase.AsEnumerable().Select(t => (title: t.Name, score: Math.Max(t.Metacritic.CriticScore ?? 0, t.Metacritic.UserScore ?? 0))),
|
||||
"critic" => queryBase.Where(t => t.Metacritic.CriticScore > 0).AsEnumerable().Select(t => (title: t.Name, score: t.Metacritic.CriticScore.Value, second: t.Metacritic.UserScore ?? t.Metacritic.CriticScore.Value)),
|
||||
"user" => queryBase.Where(t => t.Metacritic.UserScore > 0).AsEnumerable().Select(t => (title: t.Name, score: t.Metacritic.UserScore.Value, second: t.Metacritic.CriticScore ?? t.Metacritic.UserScore.Value)),
|
||||
_ => queryBase.AsEnumerable().Select(t => (title: t.Name, score: Math.Max(t.Metacritic.CriticScore ?? 0, t.Metacritic.UserScore ?? 0), second: (byte)0)),
|
||||
};
|
||||
var resultList = query.Where(i => i.score > 0)
|
||||
.OrderByDescending(i => i.score)
|
||||
.ThenByDescending(i => i.second)
|
||||
.Select(i => i.title)
|
||||
.Distinct(StringComparer.InvariantCultureIgnoreCase)
|
||||
.Where(title => !Regex.IsMatch(title, @"\b(demo|trial)\b", RegexOptions.IgnoreCase | RegexOptions.Singleline))
|
||||
|
Loading…
x
Reference in New Issue
Block a user