From 26e1158881f215b9356d2f61281a819819c3922c Mon Sep 17 00:00:00 2001 From: phoenix Date: Thu, 18 Jun 2026 16:35:13 -0400 Subject: [PATCH] File changes --- src/repo/message/message.rs | 91 ------------------------------------ src/repo/message/mod.rs | 93 ++++++++++++++++++++++++++++++++++++- 2 files changed, 92 insertions(+), 92 deletions(-) delete mode 100644 src/repo/message/message.rs diff --git a/src/repo/message/message.rs b/src/repo/message/message.rs deleted file mode 100644 index 0e3b015..0000000 --- a/src/repo/message/message.rs +++ /dev/null @@ -1,91 +0,0 @@ -use sqlx::Row; - -pub async fn insert( - pool: &sqlx::PgPool, - message: &textsender_models::message::Message, - user_id: &uuid::Uuid, -) -> Result { - match sqlx::query( - r#" - INSERT INTO "messages" (content, user_id) - VALUES($1, $2) RETURNING id; - "#, - ) - .bind(&message.content) - .bind(user_id) - .fetch_one(pool) - .await - { - Ok(row) => { - let id: uuid::Uuid = row.try_get("id")?; - Ok(id) - } - Err(_) => Err(sqlx::Error::RowNotFound), - } -} - -pub async fn get( - pool: &sqlx::PgPool, - id: &uuid::Uuid, -) -> Result { - match sqlx::query( - r#" - SELECT id, content, user_id FROM "messages" - WHERE - id = $1; - "#, - ) - .bind(id) - .fetch_one(pool) - .await - { - Ok(row) => { - let id: uuid::Uuid = row.try_get("id")?; - - let content: String = row.try_get("content")?; - let user_id: uuid::Uuid = row.try_get("user_id")?; - Ok(textsender_models::message::Message { - id: Some(id), - content, - user_id: Some(user_id), - }) - } - Err(_) => Err(sqlx::Error::RowNotFound), - } -} - -pub async fn get_with_user_id( - pool: &sqlx::PgPool, - user_id: &uuid::Uuid, -) -> Result, sqlx::Error> { - match sqlx::query( - r#" - SELECT id, content, user_id FROM "messages" - WHERE - user_id = $1; - "#, - ) - .bind(user_id) - .fetch_all(pool) - .await - { - Ok(rows) => { - let mut messages: Vec = Vec::new(); - for row in rows { - let id: uuid::Uuid = row.try_get("id")?; - let content: String = row.try_get("content")?; - let user_id: uuid::Uuid = row.try_get("user_id")?; - - let message = textsender_models::message::Message { - id: Some(id), - content, - user_id: Some(user_id), - }; - messages.push(message); - } - - Ok(messages) - } - Err(_) => Err(sqlx::Error::RowNotFound), - } -} diff --git a/src/repo/message/mod.rs b/src/repo/message/mod.rs index 54510d2..09b0414 100644 --- a/src/repo/message/mod.rs +++ b/src/repo/message/mod.rs @@ -1,3 +1,94 @@ pub mod event; -pub mod message; pub mod scheduling; + +use sqlx::Row; + +pub async fn insert( + pool: &sqlx::PgPool, + message: &textsender_models::message::Message, + user_id: &uuid::Uuid, +) -> Result { + match sqlx::query( + r#" + INSERT INTO "messages" (content, user_id) + VALUES($1, $2) RETURNING id; + "#, + ) + .bind(&message.content) + .bind(user_id) + .fetch_one(pool) + .await + { + Ok(row) => { + let id: uuid::Uuid = row.try_get("id")?; + Ok(id) + } + Err(_) => Err(sqlx::Error::RowNotFound), + } +} + +pub async fn get( + pool: &sqlx::PgPool, + id: &uuid::Uuid, +) -> Result { + match sqlx::query( + r#" + SELECT id, content, user_id FROM "messages" + WHERE + id = $1; + "#, + ) + .bind(id) + .fetch_one(pool) + .await + { + Ok(row) => { + let id: uuid::Uuid = row.try_get("id")?; + + let content: String = row.try_get("content")?; + let user_id: uuid::Uuid = row.try_get("user_id")?; + Ok(textsender_models::message::Message { + id: Some(id), + content, + user_id: Some(user_id), + }) + } + Err(_) => Err(sqlx::Error::RowNotFound), + } +} + +pub async fn get_with_user_id( + pool: &sqlx::PgPool, + user_id: &uuid::Uuid, +) -> Result, sqlx::Error> { + match sqlx::query( + r#" + SELECT id, content, user_id FROM "messages" + WHERE + user_id = $1; + "#, + ) + .bind(user_id) + .fetch_all(pool) + .await + { + Ok(rows) => { + let mut messages: Vec = Vec::new(); + for row in rows { + let id: uuid::Uuid = row.try_get("id")?; + let content: String = row.try_get("content")?; + let user_id: uuid::Uuid = row.try_get("user_id")?; + + let message = textsender_models::message::Message { + id: Some(id), + content, + user_id: Some(user_id), + }; + messages.push(message); + } + + Ok(messages) + } + Err(_) => Err(sqlx::Error::RowNotFound), + } +}