Adding repo::scheduling module
This commit is contained in:
@@ -1,2 +1,3 @@
|
|||||||
pub mod contact;
|
pub mod contact;
|
||||||
pub mod message;
|
pub mod message;
|
||||||
|
pub mod scheduling;
|
||||||
|
|||||||
@@ -0,0 +1,28 @@
|
|||||||
|
use sqlx::Row;
|
||||||
|
|
||||||
|
pub async fn insert(
|
||||||
|
pool: &sqlx::PgPool,
|
||||||
|
scheduled_message: &textsender_models::message::scheduling::ScheduledMessage,
|
||||||
|
user_id: &uuid::Uuid,
|
||||||
|
) -> Result<(uuid::Uuid, time::OffsetDateTime), sqlx::Error> {
|
||||||
|
match sqlx::query(
|
||||||
|
r#"
|
||||||
|
INSERT INTO "scheduled_messages" (scheduled, status, user_id)
|
||||||
|
VALUES($1, $2, $3) RETURNING id, created;
|
||||||
|
"#,
|
||||||
|
)
|
||||||
|
.bind(scheduled_message.scheduled)
|
||||||
|
.bind(&scheduled_message.status)
|
||||||
|
.bind(user_id)
|
||||||
|
.fetch_one(pool)
|
||||||
|
.await
|
||||||
|
{
|
||||||
|
Ok(row) => {
|
||||||
|
let id: uuid::Uuid = row.try_get("id")?;
|
||||||
|
let created: time::OffsetDateTime = row.try_get("created")?;
|
||||||
|
Ok((id, created))
|
||||||
|
}
|
||||||
|
Err(_) => Err(sqlx::Error::RowNotFound),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Reference in New Issue
Block a user