mysql_async updates

* More shorthand usage for clearer code in invite create
This commit is contained in:
shockrah 2021-03-30 22:43:07 -07:00
parent 54f4dd53be
commit 4cbbfdd7a2

View File

@ -2,7 +2,7 @@ use std::time::{SystemTime, Duration, UNIX_EPOCH};
use mysql_async::{params, Pool};
use mysql_async::prelude::Queryable;
use mysql_async::error::Error as SqlError;
use mysql_async::Error as SqlError;
use crate::{BigInt, Invite, Response};
@ -16,16 +16,16 @@ impl Invite {
return Ok(Response::RestrictedInput(format!("<{}> not found", id)))
}
let conn = p.get_conn().await?;
let mut conn = p.get_conn().await?;
let q = "SELECT uses, expires FROM invites WHERE id = :id ";
let (_, data_row): (_, Option<(Option<BigInt>, bool)>) =
conn.first_exec(q, params!{"id" => id}).await?;
let row: Option<(Option<BigInt>, bool)> =
conn.exec_first(q, params!{"id" => id}).await?;
return if let Some(row) = data_row {
return if let Some((uses, expires)) = row {
Ok(Response::Row(Invite{
id,
uses: row.0,
expires: row.1,
uses,
expires,
}))
} else {
Ok(Response::Empty)
@ -46,9 +46,9 @@ impl Invite {
}
pub async fn add(&self, p: &Pool) -> Result<(), SqlError> {
let conn = p.get_conn().await?;
let mut conn = p.get_conn().await?;
conn.prep_exec(
conn.exec_drop(
"INSERT INTO invites (id, uses, expires)
VALUES (:id, :uses, :expires)", params!{
"id" => self.id,