forked from projectmoon/tenebrous-dicebot
Implement variable count; fix listing all variables returning values for all users.
This commit is contained in:
parent
a665293268
commit
9f97a6cb43
|
@ -42,6 +42,30 @@
|
|||
]
|
||||
}
|
||||
},
|
||||
"59313c67900a1a9399389720b522e572f181ae503559cd2b49d6305acb9e2207": {
|
||||
"query": "SELECT key, value as \"value: i32\" FROM user_variables\n WHERE room_id = ? AND user_id = ?",
|
||||
"describe": {
|
||||
"columns": [
|
||||
{
|
||||
"name": "key",
|
||||
"ordinal": 0,
|
||||
"type_info": "Text"
|
||||
},
|
||||
{
|
||||
"name": "value: i32",
|
||||
"ordinal": 1,
|
||||
"type_info": "Int64"
|
||||
}
|
||||
],
|
||||
"parameters": {
|
||||
"Right": 2
|
||||
},
|
||||
"nullable": [
|
||||
false,
|
||||
false
|
||||
]
|
||||
}
|
||||
},
|
||||
"636b1b868eaf04cd234fbf17747d94a66e81f7bc1b060ba14151dbfaf40eeefc": {
|
||||
"query": "SELECT value as \"value: i32\" FROM user_variables\n WHERE user_id = ? AND room_id = ? AND key = ?",
|
||||
"describe": {
|
||||
|
@ -60,6 +84,24 @@
|
|||
]
|
||||
}
|
||||
},
|
||||
"711d222911c1258365a6a0de1fe00eeec4686fd3589e976e225ad599e7cfc75d": {
|
||||
"query": "SELECT count(*) as \"count: i32\" FROM user_variables\n WHERE room_id = ? and user_id = ?",
|
||||
"describe": {
|
||||
"columns": [
|
||||
{
|
||||
"name": "count: i32",
|
||||
"ordinal": 0,
|
||||
"type_info": "Int"
|
||||
}
|
||||
],
|
||||
"parameters": {
|
||||
"Right": 2
|
||||
},
|
||||
"nullable": [
|
||||
false
|
||||
]
|
||||
}
|
||||
},
|
||||
"ad52bc29fc1eef2bbff8b5f7316047f81ea31b1f910d0e0226125fea89530aa2": {
|
||||
"query": "SELECT room_id FROM room_users\n WHERE username = ?",
|
||||
"describe": {
|
||||
|
@ -113,29 +155,5 @@
|
|||
false
|
||||
]
|
||||
}
|
||||
},
|
||||
"d6558668b7395b95ded8da71c80963ddde957abdcc3c68b03431f8e904e0d21f": {
|
||||
"query": "SELECT key, value as \"value: i32\" FROM user_variables\n WHERE room_id = ?",
|
||||
"describe": {
|
||||
"columns": [
|
||||
{
|
||||
"name": "key",
|
||||
"ordinal": 0,
|
||||
"type_info": "Text"
|
||||
},
|
||||
{
|
||||
"name": "value: i32",
|
||||
"ordinal": 1,
|
||||
"type_info": "Int64"
|
||||
}
|
||||
],
|
||||
"parameters": {
|
||||
"Right": 1
|
||||
},
|
||||
"nullable": [
|
||||
false,
|
||||
false
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
|
@ -17,8 +17,9 @@ impl Variables for Database {
|
|||
) -> Result<HashMap<String, i32>, DataError> {
|
||||
let rows = sqlx::query!(
|
||||
r#"SELECT key, value as "value: i32" FROM user_variables
|
||||
WHERE room_id = ?"#,
|
||||
WHERE room_id = ? AND user_id = ?"#,
|
||||
room_id,
|
||||
user
|
||||
)
|
||||
.fetch_all(&self.conn)
|
||||
.await?;
|
||||
|
@ -27,7 +28,16 @@ impl Variables for Database {
|
|||
}
|
||||
|
||||
async fn get_variable_count(&self, user: &str, room_id: &str) -> Result<i32, DataError> {
|
||||
Ok(1)
|
||||
let row = sqlx::query!(
|
||||
r#"SELECT count(*) as "count: i32" FROM user_variables
|
||||
WHERE room_id = ? and user_id = ?"#,
|
||||
room_id,
|
||||
user
|
||||
)
|
||||
.fetch_optional(&self.conn)
|
||||
.await?;
|
||||
|
||||
Ok(row.map(|r| r.count).unwrap_or(0))
|
||||
}
|
||||
|
||||
async fn get_user_variable(
|
||||
|
|
Loading…
Reference in New Issue