firefly_iii/models/
budget_limit.rs1use serde::{Deserialize, Serialize};
13
14
15
16#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
17pub struct BudgetLimit {
18 #[serde(rename = "created_at", skip_serializing_if = "Option::is_none")]
19 pub created_at: Option<String>,
20 #[serde(rename = "updated_at", skip_serializing_if = "Option::is_none")]
21 pub updated_at: Option<String>,
22 #[serde(rename = "currency_id", skip_serializing_if = "Option::is_none")]
24 pub currency_id: Option<i32>,
25 #[serde(rename = "currency_code", skip_serializing_if = "Option::is_none")]
27 pub currency_code: Option<String>,
28 #[serde(rename = "currency_symbol", skip_serializing_if = "Option::is_none")]
29 pub currency_symbol: Option<String>,
30 #[serde(rename = "currency_decimal_places", skip_serializing_if = "Option::is_none")]
31 pub currency_decimal_places: Option<i32>,
32 #[serde(rename = "budget_id")]
34 pub budget_id: i32,
35 #[serde(rename = "start")]
37 pub start: String,
38 #[serde(rename = "end")]
40 pub end: String,
41 #[serde(rename = "amount")]
42 pub amount: String,
43 #[serde(rename = "spent", skip_serializing_if = "Option::is_none")]
44 pub spent: Option<Vec<crate::models::BudgetSpent>>,
45}
46
47impl BudgetLimit {
48 pub fn new(budget_id: i32, start: String, end: String, amount: String) -> BudgetLimit {
49 BudgetLimit {
50 created_at: None,
51 updated_at: None,
52 currency_id: None,
53 currency_code: None,
54 currency_symbol: None,
55 currency_decimal_places: None,
56 budget_id,
57 start,
58 end,
59 amount,
60 spent: None,
61 }
62 }
63}
64
65