diff options
author | Joris | 2025-01-31 22:28:53 +0100 |
---|---|---|
committer | Joris | 2025-01-31 22:28:53 +0100 |
commit | 0adf5a093494bdb7f5d5c0f12913133e333ddfad (patch) | |
tree | ada6df0f3480647bec99429819f1bfffd36194ce /src/controller/incomes.rs | |
parent | 24eeb54a6b7159964e8887ade7fa5173b50feb3a (diff) |
Migrate to tokio_rusqlite
Diffstat (limited to 'src/controller/incomes.rs')
-rw-r--r-- | src/controller/incomes.rs | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/controller/incomes.rs b/src/controller/incomes.rs index ac3a332..09d483e 100644 --- a/src/controller/incomes.rs +++ b/src/controller/incomes.rs @@ -19,8 +19,8 @@ pub async fn table( query: queries::Incomes, ) -> Response<Full<Bytes>> { let page = query.page.unwrap_or(1); - let count = db::incomes::count(&wallet.pool).await; - let incomes = db::incomes::list(&wallet.pool, page, PER_PAGE).await; + let count = db::incomes::count(&wallet.db_conn).await; + let incomes = db::incomes::list(&wallet.db_conn, page, PER_PAGE).await; let max_page = (count as f32 / PER_PAGE as f32).ceil() as i64; let context = minijinja::context!( @@ -68,7 +68,7 @@ async fn create_form_feedback( form: HashMap<String, String>, error: Option<String>, ) -> Response<Full<Bytes>> { - let users = db::users::list(&wallet.pool).await; + let users = db::users::list(&wallet.db_conn).await; let context = minijinja::context!( header => templates::Header::Incomes, @@ -101,7 +101,7 @@ pub async fn create( match validation::income::create(&form) { Some(income) => { if !db::incomes::defined_at( - &wallet.pool, + &wallet.db_conn, income.user_id, income.date, ) @@ -110,9 +110,10 @@ pub async fn create( { error("Un revenu est déjà défini à cette date.").await } else { - match db::incomes::create(&wallet.pool, &income).await { + match db::incomes::create(&wallet.db_conn, income).await { Some(id) => { - let row = db::incomes::get_row(&wallet.pool, id).await; + let row = + db::incomes::get_row(&wallet.db_conn, id).await; let page = (row - 1) / PER_PAGE + 1; utils::redirect(&format!( "/incomes?page={}&highlight={}", @@ -142,8 +143,8 @@ async fn update_form_feedback( form: HashMap<String, String>, error: Option<String>, ) -> Response<Full<Bytes>> { - let users = db::users::list(&wallet.pool).await; - let income = db::incomes::get(&wallet.pool, id).await; + let users = db::users::list(&wallet.db_conn).await; + let income = db::incomes::get(&wallet.db_conn, id).await; let context = minijinja::context!( header => &templates::Header::Incomes, @@ -184,15 +185,15 @@ pub async fn update( match validation::income::update(&form) { Some(income) => { let existing_incomes = db::incomes::defined_at( - &wallet.pool, + &wallet.db_conn, income.user_id, income.date, ) .await; if existing_incomes.into_iter().any(|eid| eid != id) { error("Un revenu est déjà défini à cette date.").await - } else if db::incomes::update(&wallet.pool, id, &income).await { - let row = db::incomes::get_row(&wallet.pool, id).await; + } else if db::incomes::update(&wallet.db_conn, id, income).await { + let row = db::incomes::get_row(&wallet.db_conn, id).await; let page = (row - 1) / PER_PAGE + 1; utils::redirect(&format!( "/incomes?page={}&highlight={}", @@ -211,7 +212,7 @@ pub async fn delete( wallet: &Wallet, query: queries::Incomes, ) -> Response<Full<Bytes>> { - if db::incomes::delete(&wallet.pool, id).await { + if db::incomes::delete(&wallet.db_conn, id).await { utils::redirect(&format!("/incomes?page={}", query.page.unwrap_or(1))) } else { update_form_feedback( |