summaryrefslogtreecommitdiff
path: root/schist_models/src/category.rs
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2024-12-12 08:28:04 +0000
committerJoe Carstairs <me@joeac.net>2024-12-12 08:28:04 +0000
commit54894f9de9bad4fecb2a116d59a03cdd003f84c0 (patch)
tree6ce5517cecf23d4e93d7a381a374e1fa6c810cee /schist_models/src/category.rs
parent8a30bcbdf9264d235bf93da3df8e170cfde53d02 (diff)
Moves rust workspace to root
Diffstat (limited to 'schist_models/src/category.rs')
-rw-r--r--schist_models/src/category.rs17
1 files changed, 17 insertions, 0 deletions
diff --git a/schist_models/src/category.rs b/schist_models/src/category.rs
new file mode 100644
index 0000000..e3c9938
--- /dev/null
+++ b/schist_models/src/category.rs
@@ -0,0 +1,17 @@
+use derive_builder::Builder;
+use diesel::prelude::*;
+use serde::{Deserialize, Serialize};
+
+use crate::{budget_period_unit::BudgetPeriodUnit, date_utc::DateUtc};
+
+#[derive(Builder, Clone, Queryable, Identifiable, Selectable, Debug, PartialEq, Serialize, Deserialize, Insertable)]
+#[diesel(table_name = crate::schema::categories)]
+pub struct Category {
+ pub id: i32,
+ pub name: String,
+ pub balance: i32,
+ pub balance_date: DateUtc,
+ pub budget_period: i32,
+ pub budget_period_unit: BudgetPeriodUnit,
+ pub budget_quantity: i32,
+}