diff options
Diffstat (limited to 'backend/core/src/queries')
7 files changed, 42 insertions, 2 deletions
diff --git a/backend/core/src/queries/category_transfers/get_all.rs b/backend/core/src/queries/category_transfers/get_all.rs new file mode 100644 index 0000000..73d7e10 --- /dev/null +++ b/backend/core/src/queries/category_transfers/get_all.rs @@ -0,0 +1,11 @@ +use anyhow::{Context, Result}; +use crate::{models::category_transfer::CategoryTransfer, schema::category_transfers::dsl::category_transfers as category_transfers_table}; +use diesel::{QueryDsl, RunQueryDsl, SelectableHelper, SqliteConnection}; + +pub fn get_all_category_transfers(connection: &mut SqliteConnection) -> Result<Vec<CategoryTransfer>> { + 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) +} diff --git a/backend/core/src/queries/category_transfers/mod.rs b/backend/core/src/queries/category_transfers/mod.rs index 68f32f4..eed7946 100644 --- a/backend/core/src/queries/category_transfers/mod.rs +++ b/backend/core/src/queries/category_transfers/mod.rs @@ -1,9 +1,11 @@ mod delete_all; +mod get_all; mod insert; mod sum_quantity_per_from_category_id; mod sum_quantity_per_to_category_id; pub use delete_all::delete_all_category_transfers; +pub use get_all::get_all_category_transfers; pub use insert::insert_category_transfers; pub use sum_quantity_per_from_category_id::sum_category_transfer_quantity_per_from_category_id; pub use sum_quantity_per_to_category_id::sum_category_transfer_quantity_per_to_category_id; diff --git a/backend/core/src/queries/clear.rs b/backend/core/src/queries/clear.rs index dbe0f84..e704634 100644 --- a/backend/core/src/queries/clear.rs +++ b/backend/core/src/queries/clear.rs @@ -1,3 +1,4 @@ +use anyhow::Result; use crate::queries::{ accounts::delete_all_accounts, budget_updates::delete_all_budget_updates, @@ -6,9 +7,9 @@ use crate::queries::{ transactions::delete_all_transactions, transaction_categorisations::delete_all_transaction_categorisations, }; -use diesel::{result::Error, SqliteConnection}; +use diesel::SqliteConnection; -pub fn clear(connection: &mut SqliteConnection) -> Result<(), Error> { +pub fn clear(connection: &mut SqliteConnection) -> Result<()> { delete_all_accounts(connection)?; delete_all_budget_updates(connection)?; delete_all_categories(connection)?; diff --git a/backend/core/src/queries/transaction_categorisations/get_all.rs b/backend/core/src/queries/transaction_categorisations/get_all.rs new file mode 100644 index 0000000..0cacfe6 --- /dev/null +++ b/backend/core/src/queries/transaction_categorisations/get_all.rs @@ -0,0 +1,11 @@ +use anyhow::{Context, Result}; +use crate::{models::transaction_categorisation::TransactionCategorisation, schema::transaction_categorisations::dsl::transaction_categorisations as transaction_categorisations_table}; +use diesel::{QueryDsl, RunQueryDsl, SelectableHelper, SqliteConnection}; + +pub fn get_all_transaction_categorisations(connection: &mut SqliteConnection) -> Result<Vec<TransactionCategorisation>> { + let all_transaction_categorisations = transaction_categorisations_table + .select(TransactionCategorisation::as_select()) + .load(connection) + .with_context(|| "failed to get all transaction categorisations")?; + Ok(all_transaction_categorisations) +} diff --git a/backend/core/src/queries/transaction_categorisations/mod.rs b/backend/core/src/queries/transaction_categorisations/mod.rs index 3664fa6..d383791 100644 --- a/backend/core/src/queries/transaction_categorisations/mod.rs +++ b/backend/core/src/queries/transaction_categorisations/mod.rs @@ -1,7 +1,9 @@ mod delete_all; +mod get_all; mod insert; mod sum_quantity_per_category_id; pub use delete_all::delete_all_transaction_categorisations; +pub use get_all::get_all_transaction_categorisations; pub use insert::insert_transaction_categorisations; pub use sum_quantity_per_category_id::sum_transaction_categorisation_quantity_per_category_id; diff --git a/backend/core/src/queries/transactions/get_all.rs b/backend/core/src/queries/transactions/get_all.rs new file mode 100644 index 0000000..afb87f4 --- /dev/null +++ b/backend/core/src/queries/transactions/get_all.rs @@ -0,0 +1,11 @@ +use anyhow::{Context, Result}; +use crate::{models::transaction::Transaction, schema::transactions::dsl::transactions as transactions_table}; +use diesel::{QueryDsl, RunQueryDsl, SelectableHelper, SqliteConnection}; + +pub fn get_all_transactions(connection: &mut SqliteConnection) -> Result<Vec<Transaction>> { + let all_transactions = transactions_table + .select(Transaction::as_select()) + .load(connection) + .with_context(|| "failed to get all category transfers")?; + Ok(all_transactions) +} diff --git a/backend/core/src/queries/transactions/mod.rs b/backend/core/src/queries/transactions/mod.rs index 40855f3..983e9af 100644 --- a/backend/core/src/queries/transactions/mod.rs +++ b/backend/core/src/queries/transactions/mod.rs @@ -1,5 +1,7 @@ mod delete_all; +mod get_all; mod insert; pub use delete_all::delete_all_transactions; +pub use get_all::get_all_transactions; pub use insert::insert_transactions; |
