From 2361adeb0ca77904138e3466d51c2f44cf6df613 Mon Sep 17 00:00:00 2001 From: Joe Carstairs Date: Mon, 28 Jul 2025 13:22:53 +0100 Subject: Tidier folders --- schist_queries/src/category_transfers.rs | 74 -------------------------------- 1 file changed, 74 deletions(-) delete mode 100644 schist_queries/src/category_transfers.rs (limited to 'schist_queries/src/category_transfers.rs') diff --git a/schist_queries/src/category_transfers.rs b/schist_queries/src/category_transfers.rs deleted file mode 100644 index 33a53ea..0000000 --- a/schist_queries/src/category_transfers.rs +++ /dev/null @@ -1,74 +0,0 @@ -use anyhow::{Context, Result}; -use diesel::{dsl::sum, QueryDsl, RunQueryDsl, SelectableHelper, SqliteConnection}; -use schist_schema::schema::category_transfers::{ - self as category_transfers_schema, - dsl::category_transfers as category_transfers_table, -}; -use schist_models::category_transfer::CategoryTransfer; - -pub fn delete_all_category_transfers(connection: &mut SqliteConnection) -> Result { - let num_rows_deleted = diesel::delete(category_transfers_table) - .execute(connection) - .with_context(|| "failed to delete all category transfers")?; - Ok(num_rows_deleted) -} - -pub fn get_all_category_transfers(connection: &mut SqliteConnection) -> Result> { - let all_category_transfers = category_transfers_table - .select(CategoryTransfer::as_select()) - .load(connection) - .with_context(|| "failed to get all category transfers")?; - Ok(all_category_transfers) -} - -pub fn insert_category_transfers( - category_transfers: &[CategoryTransfer], - connection: &mut SqliteConnection, -) -> Result { - let num_rows_inserted = diesel::insert_into(category_transfers_table) - .values(category_transfers) - .execute(connection) - .with_context(|| insert_err_msg(&category_transfers))?; - Ok(num_rows_inserted) -} - -fn insert_err_msg(category_transfers: &[CategoryTransfer]) -> String { - format!( - "failed to insert category transfers: [{}]", - category_transfers - .iter() - .map(|ct| ct.id.to_string()) - .collect::>() - .join(", ") - ) -} - -pub fn sum_category_transfer_quantity_per_from_category_id( - connection: &mut SqliteConnection, -) -> Result> { - let sum = category_transfers_table - .group_by(category_transfers_schema::from_category_id) - .select(( - category_transfers_schema::from_category_id, - sum(category_transfers_schema::quantity), - )) - .load::<(i32, Option)>(connection) - .map(|result| result.iter().map(|sum| (sum.0, sum.1.unwrap_or(0))).collect()) - .with_context(|| "failed to sum category transfer quantity per from category ID")?; - Ok(sum) -} - -pub fn sum_category_transfer_quantity_per_to_category_id( - connection: &mut SqliteConnection, -) -> Result> { - let sum = category_transfers_table - .group_by(category_transfers_schema::to_category_id) - .select(( - category_transfers_schema::to_category_id, - sum(category_transfers_schema::quantity), - )) - .load::<(i32, Option)>(connection) - .map(|vec| vec.iter().map(|(id, sum)| (*id, sum.unwrap_or(0))).collect()) - .with_context(|| "failed to sum category transfer quantity per to category ID")?; - Ok(sum) -} -- cgit v1.2.3