Adding repo::scheduling module

This commit is contained in:
2026-06-17 16:56:43 -04:00
parent d046ddfa81
commit 7045a6200c
2 changed files with 29 additions and 0 deletions
+1
View File
@@ -1,2 +1,3 @@
pub mod contact; pub mod contact;
pub mod message; pub mod message;
pub mod scheduling;
+28
View File
@@ -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),
}
}