summaryrefslogtreecommitdiff
path: root/rust/schist_core/src/models/transaction.rs
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2024-11-17 09:29:32 +0000
committerJoe Carstairs <me@joeac.net>2024-11-17 09:30:04 +0000
commit10f071447594f2bdcec84a461df9ad648f71f44b (patch)
tree645924a4948f39a4d9e2ec270d79fc6c2a3a937a /rust/schist_core/src/models/transaction.rs
parent1ae19eb3315c40e3f9062592c27fa76c11cf626c (diff)
Renames app to 'schist'
Diffstat (limited to 'rust/schist_core/src/models/transaction.rs')
-rw-r--r--rust/schist_core/src/models/transaction.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/rust/schist_core/src/models/transaction.rs b/rust/schist_core/src/models/transaction.rs
new file mode 100644
index 0000000..18a4c0e
--- /dev/null
+++ b/rust/schist_core/src/models/transaction.rs
@@ -0,0 +1,18 @@
+use derive_builder::Builder;
+use diesel::prelude::*;
+
+use crate::models::account::Account;
+
+use super::datetime_utc::DatetimeUtc;
+
+#[derive(Builder, Queryable, Identifiable, Selectable, Insertable, Associations, Debug, PartialEq)]
+#[diesel(table_name = crate::schema::transactions)]
+#[diesel(belongs_to(Account))]
+pub struct Transaction {
+ pub id: i32,
+ pub description: String,
+ pub payee: String,
+ pub quantity: i32,
+ pub date: DatetimeUtc,
+ pub account_id: i32,
+}