tackler_api/reports/
register_report.rs1use crate::metadata::Metadata;
6use crate::txn_header::TxnHeader;
7use serde::Serialize;
8
9#[derive(Serialize, Debug)]
11pub struct RegisterPosting {
12 pub account: String,
14
15 pub amount: String,
19
20 #[serde(rename = "runningTotal")]
24 pub running_total: String,
25
26 #[serde(skip_serializing_if = "Option::is_none")]
30 pub commodity: Option<String>,
31
32 #[serde(skip_serializing_if = "Option::is_none")]
34 pub rate: Option<String>,
35
36 #[serde(rename = "baseCommodity")]
38 #[serde(skip_serializing_if = "Option::is_none")]
39 pub base_commodity: Option<String>,
40}
41
42#[derive(Serialize, Debug)]
44pub struct RegisterTxn {
45 #[serde(rename = "displayTime")]
48 pub display_time: String,
49 pub txn: TxnHeader,
51
52 pub postings: Vec<RegisterPosting>,
54}
55
56#[derive(Serialize, Debug)]
58pub struct RegisterReport {
59 #[serde(skip_serializing_if = "Option::is_none")]
61 pub metadata: Option<Metadata>,
62
63 pub title: String,
65
66 pub transactions: Vec<RegisterTxn>,
68}