diff options
Diffstat (limited to 'planetwars-server/src/db')
-rw-r--r-- | planetwars-server/src/db/match_queries.rs | 5 | ||||
-rw-r--r-- | planetwars-server/src/db/matches.rs | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/planetwars-server/src/db/match_queries.rs b/planetwars-server/src/db/match_queries.rs index f9f8140..029a657 100644 --- a/planetwars-server/src/db/match_queries.rs +++ b/planetwars-server/src/db/match_queries.rs @@ -12,6 +12,7 @@ pub struct ListBotMatches { pub outcome: Option<BotMatchOutcome>, pub opponent_id: Option<i32>, + pub map_id: Option<i32>, // pagination options pub before: Option<NaiveDateTime>, @@ -55,6 +56,10 @@ impl QueryFragment<Pg> for ListBotMatches { } out.push_sql(" WHERE matches.state = 'finished' AND matches.is_public = true"); + if let Some(map_id) = self.map_id.as_ref() { + out.push_sql(" AND matches.map_id = "); + out.push_bind_param::<Integer, _>(map_id)?; + } if let Some(outcome) = self.outcome.as_ref() { match outcome { BotMatchOutcome::Win => { diff --git a/planetwars-server/src/db/matches.rs b/planetwars-server/src/db/matches.rs index c86f332..2aff44b 100644 --- a/planetwars-server/src/db/matches.rs +++ b/planetwars-server/src/db/matches.rs @@ -176,6 +176,7 @@ pub fn list_public_matches( pub fn list_bot_matches( bot_id: i32, opponent_id: Option<i32>, + map_id: Option<i32>, outcome: Option<BotMatchOutcome>, had_errors: Option<bool>, amount: i64, @@ -188,6 +189,7 @@ pub fn list_bot_matches( outcome, had_errors, opponent_id, + map_id, before, after, amount, |