diff options
Diffstat (limited to 'rust/schist_models/src')
| -rw-r--r-- | rust/schist_models/src/account_transfer.rs | 15 | ||||
| -rw-r--r-- | rust/schist_models/src/lib.rs | 1 | ||||
| -rw-r--r-- | rust/schist_models/src/schema.rs | 12 |
3 files changed, 28 insertions, 0 deletions
diff --git a/rust/schist_models/src/account_transfer.rs b/rust/schist_models/src/account_transfer.rs new file mode 100644 index 0000000..06c51ac --- /dev/null +++ b/rust/schist_models/src/account_transfer.rs @@ -0,0 +1,15 @@ +use derive_builder::Builder; +use diesel::prelude::{Identifiable, Insertable, Queryable, Selectable}; + +use crate::date_utc::DateUtc; + +#[derive(Builder, Queryable, Identifiable, Selectable, Debug, PartialEq, Insertable)] +#[diesel(table_name = crate::schema::account_transfers)] +pub struct AccountTransfer { + pub id: i32, + pub date: DateUtc, + pub description: String, + pub quantity: i32, + pub from_account_id: i32, + pub to_account_id: i32, +} diff --git a/rust/schist_models/src/lib.rs b/rust/schist_models/src/lib.rs index 1712c36..d9e93c4 100644 --- a/rust/schist_models/src/lib.rs +++ b/rust/schist_models/src/lib.rs @@ -1,4 +1,5 @@ pub mod account; +pub mod account_transfer; pub mod budget_drip; pub mod budget_period_unit; pub mod category; diff --git a/rust/schist_models/src/schema.rs b/rust/schist_models/src/schema.rs index 5164d07..1dd1391 100644 --- a/rust/schist_models/src/schema.rs +++ b/rust/schist_models/src/schema.rs @@ -1,6 +1,17 @@ // @generated automatically by Diesel CLI. diesel::table! { + account_transfers (id) { + id -> Integer, + date -> Text, + description -> Text, + quantity -> Integer, + from_account_id -> Integer, + to_account_id -> Integer, + } +} + +diesel::table! { accounts (id) { id -> Integer, name -> Text, @@ -67,6 +78,7 @@ diesel::joinable!(transaction_categorisations -> transactions (transaction_id)); diesel::joinable!(transactions -> accounts (account_id)); diesel::allow_tables_to_appear_in_same_query!( + account_transfers, accounts, budget_drips, categories, |
