From 147a50c867175befcb9e92bf80a43205307d66d2 Mon Sep 17 00:00:00 2001 From: KD Date: Mon, 3 Nov 2025 13:56:18 -0500 Subject: [PATCH] tsk-196: Moving SongQueue struct (#240) * tsk-196: Moving SongQueue struct * tsk-196: Code formatting * tsk-196: Version bump --- Cargo.lock | 2 +- Cargo.toml | 2 +- src/callers/queue/song.rs | 2 +- src/repo/queue/song.rs | 26 +++++++++++++++----------- 4 files changed, 18 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f12a209..5ca85ae 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -964,7 +964,7 @@ dependencies = [ [[package]] name = "icarus" -version = "0.3.22" +version = "0.3.23" dependencies = [ "axum", "axum-extra", diff --git a/Cargo.toml b/Cargo.toml index 7cf2864..e3c43ee 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "icarus" -version = "0.3.22" +version = "0.3.23" edition = "2024" rust-version = "1.90" diff --git a/src/callers/queue/song.rs b/src/callers/queue/song.rs index bb280f9..c0ba2d4 100644 --- a/src/callers/queue/song.rs +++ b/src/callers/queue/song.rs @@ -53,7 +53,7 @@ pub mod response { #[derive(Default, Deserialize, Serialize, utoipa::ToSchema)] pub struct Response { pub message: String, - pub data: Vec, + pub data: Vec, } } diff --git a/src/repo/queue/song.rs b/src/repo/queue/song.rs index 6505238..4b1577e 100644 --- a/src/repo/queue/song.rs +++ b/src/repo/queue/song.rs @@ -11,13 +11,15 @@ pub mod status { } } -// TODO: Move this somewhere else at some point -#[derive(Debug, serde::Deserialize, serde::Serialize, sqlx::FromRow, utoipa::ToSchema)] -pub struct SongQueue { - pub id: uuid::Uuid, - pub filename: String, - pub status: String, - pub user_id: uuid::Uuid, +pub mod dbtype { + /// Maps to the songQueue table. Does not contain the data field + #[derive(Debug, serde::Deserialize, serde::Serialize, sqlx::FromRow, utoipa::ToSchema)] + pub struct SongQueue { + pub id: uuid::Uuid, + pub filename: String, + pub status: String, + pub user_id: uuid::Uuid, + } } pub async fn insert( @@ -79,7 +81,9 @@ pub async fn update( } } -pub async fn get_most_recent_and_update(pool: &sqlx::PgPool) -> Result { +pub async fn get_most_recent_and_update( + pool: &sqlx::PgPool, +) -> Result { let result = sqlx::query( r#" UPDATE "songQueue" @@ -102,7 +106,7 @@ pub async fn get_most_recent_and_update(pool: &sqlx::PgPool) -> Result { let user_id_result = row.try_get("user_id"); - let song_queue = SongQueue { + let song_queue = dbtype::SongQueue { id: row .try_get("id") .map_err(|_e| sqlx::Error::RowNotFound) @@ -209,7 +213,7 @@ pub async fn link_user_id( pub async fn get_song_queue( pool: &sqlx::PgPool, id: &uuid::Uuid, -) -> Result { +) -> Result { let result = sqlx::query( r#" SELECT id, filename, status, user_id FROM "songQueue" WHERE id = $1 @@ -225,7 +229,7 @@ pub async fn get_song_queue( match result { Ok(row) => { let user_id_result = row.try_get("user_id"); - let song_queue = SongQueue { + let song_queue = dbtype::SongQueue { id: row .try_get("id") .map_err(|_e| sqlx::Error::RowNotFound)