summaryrefslogtreecommitdiff
path: root/src/routes/artist.rs
diff options
context:
space:
mode:
authorniliara-edu <nil.jimeno@estudiant.fjaverianas.com>2025-01-20 00:13:45 +0100
committerniliara-edu <nil.jimeno@estudiant.fjaverianas.com>2025-01-20 00:13:45 +0100
commit44833bc898cac0612907613ed64ee4ff2a94a5c8 (patch)
tree5bb8f355ebeabeead47495f05d00a186d2e06960 /src/routes/artist.rs
parented0f5925de1931a13e6713d73e174a5362fc5d68 (diff)
complete database rework
Diffstat (limited to 'src/routes/artist.rs')
-rw-r--r--src/routes/artist.rs44
1 files changed, 11 insertions, 33 deletions
diff --git a/src/routes/artist.rs b/src/routes/artist.rs
index 6a16ace..8d968ae 100644
--- a/src/routes/artist.rs
+++ b/src/routes/artist.rs
@@ -1,4 +1,4 @@
-use crate::routes::Artist;
+use crate::database::Artist;
use crate::AppState;
use actix_web::{get, web, HttpResponse};
use serde::Deserialize;
@@ -14,42 +14,20 @@ pub async fn artist(
app_state: web::Data<AppState>,
get_args: web::Query<ArtistQueryOptions>,
) -> HttpResponse {
- let search_attempt: sqlx::Result<Vec<Artist>>;
-
- match true {
+ let search_attempt: sqlx::Result<Vec<Artist>, sqlx::Error> = match true {
_ if check_if_exists(&get_args.id) => {
- search_attempt = sqlx::query_as!(
- Artist,
- "SELECT name, id
- FROM artist
- WHERE id=?",
- &get_args.id,
- )
- .fetch_all(&app_state.pool)
- .await;
+ app_state
+ .database
+ .select_artist_by_id(&get_args.id.clone().unwrap())
+ .await
}
_ if check_if_exists(&get_args.name) => {
- let new_name : String = format!("{}{}{}", "%", &get_args.name.clone().unwrap(), "%");
- search_attempt = sqlx::query_as!(
- Artist,
- "SELECT name, id
- FROM artist
- WHERE LOWER(name) LIKE LOWER(?)",
- new_name,
- )
- .fetch_all(&app_state.pool)
- .await;
- }
- _ => {
- search_attempt = sqlx::query_as!(
- Artist,
- "SELECT name, id
- FROM artist
- ",
- )
- .fetch_all(&app_state.pool)
- .await;
+ app_state
+ .database
+ .select_artists_by_name(&get_args.name.clone().unwrap())
+ .await
}
+ _ => app_state.database.select_artists().await,
};
match search_attempt {