aboutsummaryrefslogtreecommitdiffstats
path: root/src/models/month_summary.rs
blob: b0d67e9c08803c51c63f470d5fd94ef54f672178 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
/*
 * YNAB API Endpoints
 *
 * Our API uses a REST based design, leverages the JSON data format, and relies upon HTTPS for transport. We respond with meaningful HTTP response codes and if an error occurs, we include error details in the response body.  API Documentation is at https://api.youneedabudget.com
 *
 * The version of the OpenAPI document: 1.0.0
 * 
 * Generated by: https://openapi-generator.tech
 */




#[derive(Debug, PartialEq, Serialize, Deserialize)]
pub struct MonthSummary {
    #[serde(rename = "month")]
    pub month: String,
    #[serde(rename = "note", skip_serializing_if = "Option::is_none")]
    pub note: Option<String>,
    /// The total amount in transactions categorized to 'Inflow: To be Budgeted' in the month
    #[serde(rename = "income")]
    pub income: i64,
    /// The total amount budgeted in the month
    #[serde(rename = "budgeted")]
    pub budgeted: i64,
    /// The total amount in transactions in the month, excluding those categorized to 'Inflow: To be Budgeted'
    #[serde(rename = "activity")]
    pub activity: i64,
    /// The available amount for 'To be Budgeted'
    #[serde(rename = "to_be_budgeted")]
    pub to_be_budgeted: i64,
    /// The Age of Money as of the month
    #[serde(rename = "age_of_money", skip_serializing_if = "Option::is_none")]
    pub age_of_money: Option<i32>,
    /// Whether or not the month has been deleted.  Deleted months will only be included in delta requests.
    #[serde(rename = "deleted")]
    pub deleted: bool,
}

impl MonthSummary {
    pub fn new(month: String, income: i64, budgeted: i64, activity: i64, to_be_budgeted: i64, deleted: bool) -> MonthSummary {
        MonthSummary {
            month,
            note: None,
            income,
            budgeted,
            activity,
            to_be_budgeted,
            age_of_money: None,
            deleted,
        }
    }
}